Você está certo. Seu valor é em dias.
Na página do manual usermod(8)
:
-e, --expiredate EXPIRE_DATE
The date on which the user account will be disabled. The date is specified in the format YYYY-MM-DD.
Mas há mais informações na página do manual shadow(5)
:
account expiration date
The date of expiration of the account, expressed as the number of days since Jan 1, 1970.
Note that an account expiration differs from a password expiration. In case of an acount expiration, the user shall not be allowed to login. In case of a password expiration, the user is not allowed to login using her password.
An empty field means that the account will never expire.
The value 0 should not be used as it is interpreted as either an account with no expiration, or as an expiration on Jan 1, 1970.
Você pode confirmar essa leitura o código-fonte usermod.c
:
case 'e':
if (' case 'e':
if ('%pre%' != *optarg) {
user_newexpire = strtoday (optarg);
' != *optarg) {
user_newexpire = strtoday (optarg);