Ubuntu16.04 在更新kernel之後,輸入帳號密碼登入時,畫面凍結不能操作 [論壇 - Ubuntu安裝問題]
正在瀏覽:
1 名遊客
Ubuntu16.04 在更新kernel之後,輸入帳號密碼登入時,畫面凍結不能操作 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員一級
![]() ![]() 註冊日期:
2014/4/11 15:25 所屬群組:
已註冊使用者 等級: 1
HP : 0 / 2
![]() |
在更新到kernel 版本4.10.0-32-generic後,在每次開機或重開機,就常發生輸入完帳號密碼登入後,在進入桌面畫面就卡死不能操作,滑鼠,鍵盤都沒有反應,而且也無法使用ctrl + alt + F1 切換到 文字模式,只能強制長按開機鍵關機再重開機。
目前使用的方式是在開機選單選擇其他版本的kernel(4.8.0-58-generic)來啟動系統登入,似乎可以正常登入。 請問要從哪個部份來找出錯誤的地方進行修正?? Ubuntu版本:16.04 硬體:lenovo p50 如需提供其他資訊再煩請指導,非常感謝。
2017/8/12 11:50
|
||||||||||
![]() |
回覆: Ubuntu16.04 在更新kernel之後,輸入帳號密碼登入時,畫面凍結不能操作 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 37
HP : 0 / 905
![]() |
wxwri 寫到: ================================================================================ 先聲明,我對這部份的議題,有些還沒研究透徹, 所以也只能給您一些瑣碎的線索,讓您有探索的起點。 因為我很少去折騰這一段,都是有了問題,或是這個論壇有人問到相關的,才會再去稍微的折騰一下 :p ================================================================================ 首先,我在「這篇」和「這篇」的下方, 有列一些log檔的檔案路徑,您可以先從那些檔案探索起。 * /var/log/Xorg.0.log * /var/log/lightdm/lightdm.log * /var/log/lightdm/x-0.log ================================================================================ 再來根據您的描述, wxwri 寫到: 我個人猜測,應該是跟顯示卡的驅動有關, 一個方式,您可以從上面提到的log檔去找看看有沒有線索。 另一個我想到的方式,您可以執行類似下面的指令,來做實驗, 觀看您說的有問題那個kernel套件整個安裝流程,出現的一些訊息。 印象中,過程中好像有編譯一些其他模組的流程。 執行
顯示類似如下的訊息
我的系統是「Xubuntu 16.04 amd64 英文界面」 上面的「linux-image-4.4.0-91-generic」是我目前使用的,請更改成您的。 如何找尋,只要執行
顯示
接著執行
顯示
上面的其中兩行指令也可以合成一行如下,顯示內容就會跟上面一樣
================================================================================ 上面提示訊息,有顯示兩個資料夾,可以注意的 * /etc/kernel/preinst.d/ * /etc/kernel/postinst.d/ 如何找到這一段,可以執行
顯示
就可以找到「linux-image-4.4.0-91-generic」這個套件的「MaintainerScript」的路徑。 然後您可以在「/var/lib/dpkg/info/linux-image-4.4.0-91-generic.preinst」這個檔案,找到下面這一段程式碼(perl)。 ## Run user hook script here, if any if (-x "$preinst_hook") { &run_hook("preinst", $preinst_hook); } if (-d "/etc/kernel/preinst.d") { print STDERR "Examining /etc/kernel/preinst.d/\n"; system ("run-parts --verbose --exit-on-error --arg=$version" . " --arg=$realimageloc$kimage-$version" . " /etc/kernel/preinst.d") && die "Failed to process /etc/kernel/preinst.d"; } if (-d "/etc/kernel/preinst.d/$version") { print STDERR "Examining /etc/kernel/preinst.d/$version.\n"; system ("run-parts --verbose --exit-on-error --arg=$version" . " --arg=$realimageloc$kimage-$version" . " /etc/kernel/preinst.d/$version") && die "Failed to process /etc/kernel/preinst.d/$version"; } print STDERR "Done.\n"; 然後您可以在「/var/lib/dpkg/info/linux-image-4.4.0-91-generic.postinst」這個檔案,找到下面這一段程式碼(perl)。 ## Run user hook script here, if any if ($postinst_hook) { &run_hook("postinst", $postinst_hook); } if (-d "/etc/kernel/postinst.d") { print STDERR "Examining /etc/kernel/postinst.d.\n"; system ("run-parts --verbose --exit-on-error --arg=$version " . "--arg=$realimageloc$kimage-$version " . "/etc/kernel/postinst.d") && die "Failed to process /etc/kernel/postinst.d"; } if (-d "/etc/kernel/postinst.d/$version") { print STDERR "Examining /etc/kernel/postinst.d/$version.\n"; system ("run-parts --verbose --exit-on-error --arg=$version " . "--arg=$realimageloc$kimage-$version " . "/etc/kernel/postinst.d/$version") && die "Failed to process /etc/kernel/postinst.d/$version"; } 主要就是透過「run-parts」這個指令,來執行相關資料夾裡面的腳本。 ================================================================================ 可以執行下面指令來瞭解「/etc/kernel/preinst.d」有那些腳本可執行
顯示
可以執行下面指令來瞭解「/etc/kernel/postinst.d」有那些腳本可執行
顯示
================================================================================ ## 相關的討論 (以下不見得有直接關係) ### 登入機制 * #2 回覆: Ubuntu 自動登入 * #18 回覆: 登入畫面 輸入密碼處 中文部分出現方格 * #2 回覆: Ubuntu 14.04 圖形化界面無法登入 ### MaintainerScript * #10 回覆: 文字界面開機 * #11 回覆: 文字界面開機 ### dkms * #4 回覆: 請問如何查找驅動程式 * #5 回覆: 關於WIFI 無線網路 RTL8192CU 驅動安裝 softAP * #2 回覆: 關於RTL8192ce and RTL8192cu 補丁.更新.安裝驅動 ### driver * #21 回覆: linux mint 安裝顯示卡問題 * #4 回覆: ubuntu 12.10 安裝完nvidia驅動 登入後畫面整個黑的 ================================================================================ ## 相關索引 * [索引] 套件操作實務 * [索引] 驅動程式 * [索引] 開機流程 ================================================================================ 以上探索方法提供參考 報告完畢 ![]()
2017/8/15 15:35
|
||||||||||
![]() |
回覆: Ubuntu16.04 在更新kernel之後,輸入帳號密碼登入時,畫面凍結不能操作 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員一級
![]() ![]() 註冊日期:
2014/4/11 15:25 所屬群組:
已註冊使用者 等級: 1
HP : 0 / 2
![]() |
非常感謝大大整理了那麼多資料提供參考,
我有先檢查了這三個log檔 * /var/log/Xorg.0.log * /var/log/lightdm/lightdm.log * /var/log/lightdm/x-0.log 看不出來錯誤會在哪裡出現,不過在 /var/log/auth.log檔裡發現 PAM unable to dlopen(pam_kwallet.so): /lib/security/pam_kwallet.so: cannot open shared object file: No such file or directory 參考了這篇的提問的解決方法。 安裝了兩個套件 $ sudo apt-get install libpam-kwallet4 libpam-kwallet5 /var/log/auth.log檔的錯誤就沒出現了, 另外在輸入帳密登入後畫面會卡住的問題,到目前都還沒出現。 雖然還是不知道問題出在哪,不過暫時先這樣使用了= = | 等重要的資料備份再來照大大提供重裝KERNEL的方法試試,再回覆結果。 再次感謝大大無私的指導。 ![]()
2017/8/16 16:22
|
||||||||||
![]() |
回覆: Ubuntu16.04 在更新kernel之後,輸入帳號密碼登入時,畫面凍結不能操作 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 37
HP : 0 / 905
![]() |
wxwri 寫到: 恭喜您解決問題了。 並且也非常感謝您的回覆,這樣未來有遇到相同問題的人,也就有跡可尋了。 雖然我還不瞭解確切的源頭出在那個環節, 我原本猜測是「顯示卡driver」那個環節導致的, 不過因為您的回覆,我剛想了一下, 既然「lightdm」都能顯示運作了,那「顯示卡drvier」導致出錯的機率應該是小的。 還好您得到的結果是好的,不然我就誤導您了 Orz... 所以您未來研究的方向,也許可以朝「libpam-kwallet4」,「libpam-kwallet5」和「lightdm」認證那一段的關聯。 不過之前我有提到,這一段尚未研究透徹,所以先暫記。 那天有研究,有心得了,再來補充。 或是其他大德對這一段有深究的人,也可以來補充說明,感恩先。 並且再次感恩樓主您的測試結果回報。 ![]() =========================================================== ## 以下暫記 以下執行環境是「Xubuntu 16.04 amd64 英文界面」 執行
顯示
執行
顯示
執行
============================================================ 執行
顯示
執行
執行
執行
執行
顯示
執行
顯示
執行
執行
顯示
執行
顯示
執行
顯示
執行
顯示
執行
顯示
執行
顯示
執行
執行
顯示 /etc/pam.d/lightdm:6:auth optional pam_kwallet.so /etc/pam.d/lightdm:7:auth optional pam_kwallet5.so /etc/pam.d/lightdm:15:session optional pam_kwallet.so auto_start /etc/pam.d/lightdm:16:session optional pam_kwallet5.so auto_start /etc/pam.d/lightdm-greeter:4:auth optional pam_kwallet.so /etc/pam.d/lightdm-greeter:5:auth optional pam_kwallet5.so /etc/pam.d/lightdm-greeter:12:session optional pam_kwallet.so auto_start /etc/pam.d/lightdm-greeter:13:session optional pam_kwallet5.so auto_start 執行
顯示
$ man 5 pam.conf $ man 5 pam.d $ man 7 pam $ man 8 pam-auth-update $ man 8 pam_getenv * http://linux.vbird.org/linux_basic/0410accountmanager.php#usershell * http://linux.vbird.org/linux_basic/0410accountmanager/0410accountmanager-fc4.php#usershell * http://linux.vbird.org/linux_server/0410vsftpd.php ============================================================
2017/8/16 18:13
|
||||||||||
![]() |
回覆: Ubuntu16.04 在更新kernel之後,輸入帳號密碼登入時,畫面凍結不能操作 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員一級
![]() ![]() 註冊日期:
2014/4/11 15:25 所屬群組:
已註冊使用者 等級: 1
HP : 0 / 2
![]() |
前輩不好意思,我再回覆一下,我發現我可能找錯解決問題的方向了。
剛剛我把 lightdm pam_kwallet freeze這幾個字丟到GOOGLE 搜尋。 搜尋結果中這一篇提問所遇到的狀況跟我遇到還滿像的, 而且在九樓的回覆中針對樓主所PO出的kernel.log 出現 ACPI Warning: SystemIO range 0x0000000000000B00-0x0000000000000B07 conflicts with OpRegion 0x0000000000000B00-0x0000000000000B0F (_SB_.PCI0.SMB_.SMB0) (20150930/utaddress-254)的警告說明 Problem # 1: There are known ACPI problems in Lenovo's BIOS code. 於是我檢查了我的kernel.log 發現每次開機都有出現 Aug 16 21:53:47 sam-ThinkPad-P50 kernel: [ 1.073982] ACPI Warning: \_SB.PCI0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160930/nsarguments-95) 另外我補充一下我應該要說明的硬體的部份,我筆電裡面有裝兩顆一樣型號的SSD,一顆裝ubuntu系統,一顆裝windows。 而在這位前輩說明這是lenovo bios 的bug,雖然不是很懂他的意思,但應該是在說硬碟位址被覆寫而造成問題的樣子吧@@。 希望這個補充說明能夠有幫助。 ![]()
2017/8/16 23:01
|
||||||||||
![]() |
您可以查看帖子.
您不可發帖.
您不可回覆.
您不可編輯自己的帖子.
您不可刪除自己的帖子.
您不可發起投票調查.
您不可在投票調查中投票.
您不可上傳附件.
您不可不經審核直接發帖.