Command-Line

usermod 關於選項 e 的問題

  • January 25, 2016

閱讀手冊頁後,我無法找到有關此功能的解釋(tack e 選項)

usermod -L -e 1 使用者名

-e 1

這是否意味著在 1970 年 1 月 1 日 linux 時代之後的一天?既然它沒有在任何地方記錄,怎麼會有人知道這一點?

你說的對。它的價值以天為單位。

usermod(8)手冊頁:

-e, –expiredate EXPIRE_DATE

使用者帳戶將被禁用的日期。日期以YYYY-MM-DD格式指定。

但是手冊頁中有更多資訊shadow(5)

賬戶到期日

帳戶的到期日期,以自 1970 年 1 月 1 日以來的天數表示。

請注意,帳戶到期與密碼到期不同。如果賬號過期,使用者將無法登錄。如果密碼過期,則不允許使用者使用她的密碼登錄。

空欄位表示該帳戶永不過期。

不應使用值 0,因為它被解釋為沒有到期的帳戶或 1970 年 1 月 1 日到期的帳戶。

您可以通過閱讀usermod.c原始碼來確認這一點:

       case 'e':
           if ('\0' != *optarg) {
               user_newexpire = strtoday (optarg);

引用自:https://unix.stackexchange.com/questions/257628