usermod命令怎么修改用戶主目錄
usermod命令怎么修改用戶主目錄
有一臺CentOS的服務器,原來建的一個用于ftp的用戶帳號,制定一個特定的目錄,現在需要修改這個用戶的home_dir。只需要使用usermod -d /new/home_dir -U username 命令就可以更改了。下面跟著學習啦小編一起來了解一下usermod命令修改用戶主目錄的方法吧。
usermod命令怎么修改用戶主目錄參考如下
linux常用命令之usermod命令用法。
方法1,可以修改/etc/passwd文件,這個大家研究下。
方法2,usermod命令修改用戶主目錄。
說明:
第一種方法:vi /etc/passwd
找到要修改的用戶那幾行,修改掉即可。此法很暴力,建議慎用。
第二種方法:usermod
usermod -d /usr/newfolder -u uid username
根據wuming的留言提示,uid后面必須接username才可以!表示感謝。詳細的例子放在文章的最后。
-u后面一定要接uid啊,然后是username
附:usermod詳細參數
語 法:usermod [-LU][-c <備注>][-d <登入目錄>][-e <有效期限>][- f <緩沖天數>][-g <群組>][-G <群組>][-l <帳號名稱>][-s ][-u ] [用戶帳號]
補充說明:usermod可用來修改用戶帳號的各項設定。
參 數:
-c<備注> 修改用戶帳號的備注文字。
-d登入目錄> 修改用戶登入時的目錄。
-e<有效期限> 修改帳號的有效期限。
-f<緩沖天數> 修改在密碼過期后多少天即關閉該帳號。
-g<群組> 修改用戶所屬的群組。
-G<群組> 修改用戶所屬的附加群組。
-l<帳號名稱> 修改用戶帳號名稱。
-L 鎖定用戶密碼,使密碼無效。
-s 修改用戶登入后所使用的shell。
-u 修改用戶ID。
-U 解除密碼鎖定。
linux shell代碼:
weiva02awark9:~# finger plcxue.com
Login: plcxue.com Name:
Directory: /var/www/www.plcxue.com Shell: /bin/false
Never logged in.
No mail.
No Plan.
weiva02awark9:~# usermod -d /var/www/ -u 1011
usermod: user 1011 does not exist
weiva02awark9:~# usermod -d /var/www/ -u plcxue.com
usermod: invalid numeric argument 'www.plcxue.com'
weiva02awark9:~# usermod -d /var/www/ -u 1011 plcxue.com
weiva02awark9:~# finger plcxue.com
Login: plcxue.com Name:
Directory: /var/www/ Shell: /bin/false
Never logged in.
No mail.
No Plan.
weiva02awark9:~# usermod -d /var/www/www.plcxue.com -u 1011 plcxue.com
weiva02awark9:~# finger plcxue.com
Login: plcxue.com Name:
Directory: /var/www/www.plcxue.com Shell: /bin/false
Never logged in.
No mail.
No Plan.
下面補充一下usermod更多功能:
usermod 不僅能改用戶的SHELL類型,所歸屬的用戶組,也能改用戶密碼的有效期,還能改登錄名。usermod 如此看來就是能做到用戶帳號大轉移;比如我把用戶A改為新用戶B;
usermod [-u uid [-o]] [-g group] [-G group,...]
[-d 主目錄 [-m]] [-s shell] [-c 注釋] [-l 新名稱]
[-f 失效日] [-e 過期日] [-p 密碼] [-L|-U] 用戶名
usermod 命令會參照你命令列上指定的部份修改系統(tǒng)帳號檔。下列為usermod可選用的參數。
-c comment
更新用戶帳號password檔中的注解欄,一般是使用chfn(1)來修改。
-d home_dir
更新用戶新的登入目錄。如果給定-m選項,用戶舊目錄會搬到新的目錄去,如舊目錄不存在則建個新的。
-e expire_date 加上用戶帳號停止日期。日期格式為MM/DD/YY.
-f inactive_days 帳號過期幾日后永久停權。當值為0時帳號則立刻被停權。而當值為-1時則關閉此功能。預設值為-1。
-g initial_group 更新用戶新的起始登入用戶組。用戶組名須已存在。用戶組ID必須參照既有的的用戶組。用戶組ID預設值為1。
-G group,[...] 定義用戶為一堆groups的成員。每個用戶組使用","區(qū)格開來,不可以夾雜空白字元。用戶組名同-g選項的限制。如果用戶現在的用戶組不再此列,則將用戶由該用戶組中移除。
-l login_name 變更用戶login時的名稱為login_name。其它不變。特別是,用戶目錄名應該也會跟著更動成新的登入名。
-s shell 指定新登入shell。如此欄留白,系統(tǒng)將選用系統(tǒng)預設shell。
-u uid用戶ID值。必須為唯一的ID值,除非用-o選項。數字不可為負值。預設為最小不得小于/etc/login.defs中定義的UID_MIN值。 0到UID_MIN值之間是傳統(tǒng)上保留給系統(tǒng)帳號使用。用戶目錄樹下所有的檔案目錄其userID會自動改變。放在用戶目錄外的檔案則要自行手動更動。
警 告:usermod不允許你改變正在線上的用戶帳號名稱。當usermod用來改變userID,必須確認這名user沒在電腦上執(zhí)行任何程序。你需手動 更改用戶的crontab檔。也需手動更改用戶的at工作檔。采用NISserver須在server上更動相關的NIS設定。
舉個簡單的例子,我們在前面說了關于useradd的工具,而usermod 工具和useradd的參數差不多;兩者不同之處在于useradd是添加,usermod 是修改。