ubuntu輸入密碼登入後閃一下,無法進入系統 / ubuntu修改使用者名稱、計算機名、主目錄名 /改密碼
現象:在Ubuntu登陸介面輸入密碼之後,黑屏一閃並且出現了check
battery state之類的文字之後,又跳轉到登入介面。
原因:主目錄下的.Xauthority檔案擁有者變成了root,從而以使用者登陸的時候無法都取.Xauthority檔案。
說明:Xauthority,是startx指令碼記錄檔案。Xserver啟動時,讀檔案~/.Xauthority,讀入對應其display的記錄。當一個需要顯示的客戶程式啟動呼叫XOpenDisplay()也讀這個文 件,並把找到的magic code 傳送給Xserver。當Xserver驗證這個magic
code正確以後,就同意連線啦。觀察startx指令碼也可以看到,每次startx執行,都在呼叫xinit以前使用了xauth的add命令添加了一個新的記錄到~/.Xauthority,用來這次執行X使用認證
開機後在登陸介面按下ctrl+ alter + F1進入tty命令列終端登陸後輸入:(本人的使用者名稱為hp,因此chown後面跟了hp:hp若為其他使用者名稱修改成相應的名稱即可)
$ cd~
$ sudo chown hp:hp .Xauthority
然後再次輸入:
ls -l .Xauthority
ps:測試成功。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
修改使用者名稱稱:
切換到root開啟如下兩個配置檔案
- gedit /etc/passwd
- gedit /etc/shadow
- 127.0.0.1 localhost
- 192.168.76.21 hs-virtual-machine //將此處改為zj-virtual-machine
- # The following lines are desirable for IPv6 capable hosts
- ::1 localhost ip6-localhost ip6-loopback
- fe00::0 ip6-localnet
- ff00::0 ip6-mcastprefix
- ff02::1 ip6-allnodes
- ff02::2 ip6-allrouters
- ff02::3 ip6-allhosts
- ~
- ~
- ~
[2]gedit /etc/hostname
hs-virtual-machine 將紅色部分改為zj-virtual-machine
儲存,退出,重啟,就得到如下結果:
然後運行了一下MPI的那個程式,結果如下:
將同樣的操作為劉慶做了一遍得到如下結果:
其實觀察仔細的應該還可以看出來存在問題,就是輸入檔案所在的主目錄名仍然是hs,也想改一下,然後還是切換到root使用者,gedit /etc/passwd,將裡面有關主目錄名的地方將hs改為lq,儲存、退出、重啟,可是進不了系統了,悲催啊!然後再重啟,直接以root使用者登入,將主目錄名修改過來,就可以以普通使用者名稱登入了。
下面就是更改主目錄名的方法:
<span style="color:#330033;">補充
mount -o remount,rw /
執行上述命令後即可讀寫檔案了。
</span>
sudo chfn -f 新名字 原名字
sudo usermod -l 新名字 -d /home/新名字 -m 原名字
sudo groupmod -n 新名字 原名字
偶爾會遇到Ubuntu無法正常啟動的情況,這時候需修改某些檔案讓系統正常啟動,如果直接進入 recovery 模式,預設是檔案許可權只讀,無法修改檔案。這時我們需要進入recovery 的單使用者模式,獲得修改檔案的許可權。
1、重啟ubuntu,隨即長按shirft進入grub選單,或等待grub選單的出現,如下圖
2、選擇recovery mode,接著用方向鍵將游標移至recovery mode,按"e"鍵進入編輯頁面,如下圖:
3、將 ro recovery nomodeset 改為 rw single init=/bin/bash
4、 按 ctrl+x或者F10 進入單使用者模式,當前使用者即為root。這時候可以修改檔案。修改完畢後重啟即可。
另外一種方式,進入Recovery mode的Recovery Menu而不是採用單使用者的方式。
重啟Ubuntu,隨即長按shift進入grub選單;
選擇recovery mode,回車確認,如下圖;
在Recovery Menu中,選擇“Root Drop to root shell prompt”,回車確認,如下圖;
1)修改普通使用者的密碼
進入shell介面,使用passwd命令重新設定密碼:passwd david,(david是系統中已有的username,但是如果root的使用者就會有authentication
token manipulation error錯誤),回車確認;
輸入新密碼;
再次確認新密碼;
看到密碼設定成功提示:passwd: password updated successfully;
重啟系統進入GUI介面:sudo reboot;
2)修改root使用者的密碼
使用passwd命令重新設定密碼:passwd root輸入新密碼;
再次確認新密碼;
看到密碼設定成功提示:passwd: password updated successfully;
重啟系統進入GUI介面:sudo reboot;
- 直接passwd <使用者名稱>, 輸入新密碼之後,會提示"Authorization token manipulation error".如下圖的錯誤
- 然後我們在視窗中輸入"mount -o remount,rw /"命令,進行remount,這樣之後就可以用passwd 進行修改密碼了