歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux之登陸問題

Linux之登陸問題

日期:2017/2/28 14:26:40   编辑:Linux教程

今天早上在使用Linux的時候進入終端輸入startx,然後退出圖形界面,進入了命令模式,可能是Ubuntu 14.04的問題,不知怎麼就沒有響應,我就強行重啟了一下操作系統,然後進去發現在使用管理員賬號登錄時一直是重復登錄,怎麼都進不去,網上關於這方面的資料還是很多的,給出的方法也是很多。

1、環境變量問題,進入tty1 或者 tty2 然後 sudo vim profile 或者 environment,將 環境變量還原即可。但我的問題並非出於此。

2、初始化文件問題:刪除.Xauthority , Xinit 等初始文件 並重啟。我的問題也不在於此。

3、/home權限問題:直接將/home chmod 成 777的權限。不過我的還是無效。

4、/tmp權限問題:我的問題就在於此,首選還是那句話,學會找到日志文件,學會分析日志文件,cd 到 /home/user 裡面,然後你會發現一個 啟動X組件相關的日志文件:

.xsession-errors文件,打開這個文件發現有以下錯誤: mkdtemp: private socket dir: Permission denied,可以知道在讀寫/tmp文件時 遇到權限問題而讀寫失敗,所以 直接chmod 777 /tmp 後 然後 重啟 就能進入桌面系統了。

5.ctrl+alt+f1 ,切換到tty1,輸入管理員帳號和密碼

sudo rm -r .Xauthority*

sudo reboot //重啟

ok

下面就說一下關於.Xauthority:startx的腳本文件(資料來源於百度):

Xserver 啟動時,讀文件~/.Xauthority,讀入對應其display的記錄.當一個需要顯示的客戶程序啟動調用XOpenDisplay()也讀這個文 件,並把找到的magic code 發送給Xserver.當Xserver驗證這個magic code正確以後,就同意連接啦.

觀察startx腳本也可以看到,每次startx運行,都在調用xinit以前使用了xauth的add命令添加了一個新的記錄到~/.Xauthority,用來這次運行X使用認證。

解決:

Ctrl+Alt+F1~F6,都可以進入命令行模式,分別為 tty1~tty6。

注:Ctrl+Alt+F7 就是窗口模式。

使用用戶名和密碼進入。

sudo==/usr/bin/sudo

vi==/usr/bin/bi

去掉三個文件中給PATH增加的 /home/sjjz/Android-sdk-linux_86/tools 路徑

whereis=/usr/bin/whereis

cat==//bincat

mv==/bin/mv

ls==/bin/ls

bash==/bin/bash

重啟:

/usr/bin/sudo /sbin/reboot

2.修改了profile文件

解決:

利用Alt+Ctrl+Shift+F1進入命令行模式, 以root的身份更改了/etc/profile文件, 這個文件我昨天在配置JDK運行環境的時候對其進行了修改, 現在又將內容改了回來,終於可以正常進入了。

3.修改了environment

解決:

/usr/lib/sudo /usr/lib/vi /etc/environment,然後將光標移動到PATH=$PATH:/home/user1/program/androidSDK/tools 這一行,按兩次D,即DD就刪除了著一樣,

再輸入命令

4.認證的問題

解決:

今天無緣無故登錄不了系統 在登錄界面輸入正確密碼後 黑屏一閃後又跳轉到登錄界面

黑屏出現的時間太短 經過多次查看發現 卡在check battery state

解決方法:

sudo rm -r .Xauthority*

當然,還有其他的原因,我嘗試了以上幾種方法都沒成功,後來看到有一個博客,簡單說到這個問題的本質是開機時,系統會讀入/home文件夾下的一些初始化文件,如果找不到這些文件就會出錯,出現之前說明的症狀。結合我之前看到的一些解決方法,我認為可能是home的權限受到更改,導致非root用戶無法讀取/home目錄下的初始化文件造成的。

Copyright © Linux教程網 All Rights Reserved