歡迎您光臨本站 註冊首頁

Linux系統中修改用戶名的方法

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

  在安裝系統的時候填寫的用戶名可能沒怎麼考慮,如果後來覺得這個用戶名不怎麼好,想在不影響任何操作的情況僅僅修改這個用戶名,可以嗎?答案當然是肯定的.

  在這裡我就不細說原理了,直接給出具體的操作方法如下:

  1、建議使用single模式(如ubuntu中的RecoveryMode以root用戶登錄系統.

  當然這個也不是必須的,如果你有兩個或者兩個以上的用戶,並且其中不需要的更改的那個具有獲得root許可權的資格即可.是不是說的有點亂了?呵呵我當時的情況是要修改兩個用戶名,兩者都可獲得root許可權,可交替操作.但怎麼說,也不如直接以root身份等來的方便.

  2、修改/etc/passwd這個文件中的用戶名部分、用戶組部分、主目錄部分;

  3、修改/etc/group這個文件中的用戶名部分、用戶組部分;同時也將/etc/gshadow改寫一下;

  4、修改/etc/shadow文件中的用戶名部分,這個不改將無法登錄系統;

  5、修改/home/olduser為/home/newuser,同時注意一定要修改其所屬的用戶和用戶組,chown時加上個-R,這個很關鍵;

  這5個步驟缺一不可,操作失誤很可能導致無法登入系統,認真完成上面的5個步驟即可修改成功.

  備註:上面所述的都是通過手動修改的方法,如果想一下子修改掉可以試試usermod-l命令,呵呵!~~

  usermod用法

  修改使用者帳號

  名稱

  usermod-修改使用者帳號

  語法

  usermod[-ccomment][-dhome_dir[-m]][-eexpire_date][-finactive_time][-ginitial_group][-Ggroup[,...]][-llogin_name][-sshell][-uuid[-o]]login

  描述

  usermod命令會參照你命令列上指定的部份修改系統帳號檔.下列為usermod可選用的參數.

  -ccomment

  更新使用者帳號password檔中的註解欄,一般是使用chfn(1)來修改.

  -dhome_dir

  更新使用者新的登入目錄.如果給定-m選項,使用者舊目錄會搬到新的目錄去,如舊目錄不存在則建個新的.

  -eexpire_date

  加上使用者帳號停止日期.日期格式為MM/DD/YY.

  -finactive_days

  帳號過期幾日後永久停權.當值為0時帳號則立刻被停權.而當值為-1時則關閉此功能.預設值為-1.

  -ginitial_group

  更新使用者新的起始登入群組.群組名須已存在.群組ID必須參照既有的的群組.群組ID預設值為1.

  -Ggroup,[...]

  定義使用者為一堆groups的成員.每個群組使用??區格開來,不可以夾雜空白字元.群組名同-g選項的限制.如果使用者現在的群組不再此列,則將使用者由該群組中移除.

  -llogin_name

  變更使用者login時的名稱為login_name.其於不變.特別是,使用者目錄名應該也會跟著更動成新的登入名.

  -sshell

  指定新登入shell.如此欄留白,系統將選用系統預設shell.

  -uuid使

  用者ID值.必須為唯一的ID值,除非用-o選項.數字不可為負值.預設為最小不得小於99而逐次增加.0~99傳統上是保留給系統帳號使用.使用者目錄樹下所有的檔案目錄其userID會自動改變.放在使用者目錄外的檔案則要自行手動更動.

  警告

  usermod不允許你改變正在線上的使用者帳號名稱.當usermod用來改變userID,必須確認這名user沒在電腦上執行任何程序.你需手動更改使用者的crontab檔.也需手動更改使用者的at工作檔.採用NISserver須在server上更動相關的NIS設定.

  檔案

  /etc/passwd-使用者帳號資訊/etc/shadow-使用者帳號資訊加密/etc/group-群組資訊


[火星人 ] Linux系統中修改用戶名的方法已經有402次圍觀

http://coctec.com/docs/linux/show-post-50241.html