Nagła awaria z czarnym ekranem pokazującym / dev / sda1:
On 15 lutego, 2021 by adminCzasami, bez wyraźnego powodu, mój ekran nagle staje się „czarny”, pokazując tylko jedną linię tekstu :
/dev/sda1: clean 1068388/64102400 files, 29744985/256399616 blocks
jakby system był restartowany. Ale potem nic się nie dzieje i muszę nacisnąć przycisk resetowania.
Zdarzyło się to już trzy razy. Raz zaraz po ponownym rozpoczęciu rano i nigdy przy uruchomionym dużym zadaniu (samo otwarcie przeglądarki – niemożliwe do odtworzenia). Nigdy nie zdarzyło się to przy ekstremalnym obciążeniu (trening sieci neuronowych), więc jestem prawie pewien, że nie jest to problem z wysoką temperaturą, jak w tym poście .
Znalazłem następujące podejrzane wiersze w /var/log/kern.log
pliku
... [ 0.024000] tsc: Fast TSC calibration failed ... ... [ 0.796335] dpc 0000:00:01.1:pcie010: DPC error containment capabilities: Int Msg #0, RPExt+ PoisonedTLP+ SwTrigger+ RP PIO Log 6, DL_ActiveErr+
, gdzie ostatnia linia pojawia się trzy razy w wiersz, ale nie wiem, co to znaczy.
Używam:
- System operacyjny: Ubuntu 18.04
- Kernel: 4.15.0 -39-generic (x86_64)
- Pulpit: GNOME Shell 3.28.3
- Sterownik ekranu: NVIDIA 396.45
- Kompilator: Clang 3.3 + LLVM 3.3 + CUDA 9.2
- System plików: ext4
Na całkiem nowym komputerze stacjonarnym ze specyfikacjami:
- Procesor: AMD Ryzen Threadripper 1900X 8- Core @ 3,80 GHz (16 rdzeni)
- Płyta główna: ASRock X399 Professional Gaming
- Pamięć: 64512 MB
- Dysk: 1050 GB Crucial_CT1050MX + 4001 GB Elements SE 25FF
- Grafika: 2x SLI NVIDIA GeForce GTX 1080 Ti 11264MB
Co może być przyczyną tego p Roblem?
smartctl
W odpowiedzi na komentarze wynikiem
sudo smartctl --all /dev/sda
jest
=== START OF INFORMATION SECTION === Device Model: Crucial_CT1050MX300SSD1 Serial Number: 173818DBA7DB LU WWN Device Id: 5 00a075 118dba7db Firmware Version: M0CR060 User C apacity: 1.050.214.588.416 bytes [1,05 TB] Sector Size: 512 bytes logical/physical Rotation Rate: Solid State Device Form Factor: 2.5 inches Device is: Not in smartctl database [for details use: -P showall] ATA Version is: ACS-3 T13/2161-D revision 5 SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s) Local Time is: Sat Nov 17 14:39:52 2018 CET SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED General SMART Values: Offline data collection status: (0x00) Offline data collection activity was never started. Auto Offline Data Collection: Disabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: ( 2783) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 13) minutes. Conveyance self-test routine recommended polling time: ( 3) minutes. SCT capabilities: (0x0035) SCT Status supported. SCT Feature Control supported. SCT Data Table supported. SMART Attributes Data Structure revision number: 16 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x002f 100 100 000 Pre-fail Always - 0 5 Reallocated_Sector_Ct 0x0032 100 100 010 Old_age Always - 0 9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 454 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 333 171 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0 172 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0 173 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 1 174 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 1 183 Runtime_Bad_Block 0x0032 100 100 000 Old_age Always - 0 184 End-to-End_Error 0x0032 100 100 000 Old_age Always - 0 187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0 194 Temperature_Celsius 0x0022 074 059 000 Old_age Always - 26 (Min/Max 16/41) 196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0 197 Current_Pending_Sector 0x0032 100 100 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline - 0 199 UDMA_CRC_Error_Count 0x0032 100 100 000 Old_age Always - 0 202 Unknown_SSD_Attribute 0x0030 100 100 001 Old_age Offline - 0 206 Unknown_SSD_Attribute 0x000e 100 100 000 Old_age Always - 0 246 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 945594898 247 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 29549867 248 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 8744251 180 Unused_Rsvd_Blk_Cnt_Tot 0x0033 000 000 000 Pre-fail Always - 4424 210 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0 SMART Error Log Version: 1 No Errors Logged SMART Self-test log structure revision number 1 No self-tests have been logged. [To run self-tests, use: smartctl -t] SMART Selective self-test log data structure revision number 1 SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Not_testing 2 0 0 Not_testing 3 0 0 Not_testing 4 0 0 Not_testing 5 0 0 Not_testing Selective self-test flags (0x0): After scanning selected spans, do NOT read-scan remainder of disk. If Selective self-test is pending on power-up, resume after 0 minute delay.
Aktualizacja (wylogowanie zamiast czarnego ekranu)
Właśnie teraz zamiast czarnego ekranu wylogowałem się z konta bez wyraźnego powodu. Wygląda na to, że te kwestie są powiązane. Mniej więcej w czasie tego wydarzenia, Vim podświetla te linie w kern.log
:
Nov 19 09:44:52 Gauss kernel: [ 0.793729] dpc 0000:00:01.1:pcie010: DPC error containment capabilities: Int Msg #0, RPExt+ PoisonedTLP+ SwTrigger+ RP PIO Log 6, DL_ActiveErr+ Nov 19 09:44:52 Gauss kernel: [ 0.793735] dpc 0000:00:03.1:pcie010: DPC error containment capabilities: Int Msg #0, RPExt+ PoisonedTLP+ SwTrigger+ RP PIO Log 6, DL_ActiveErr+ Nov 19 09:44:52 Gauss kernel: [ 0.793744] dpc 0000:40:03.1:pcie010: DPC error containment capabilities: Int Msg #0, RPExt+ PoisonedTLP+ SwTrigger+ RP PIO Log 6, DL_ActiveErr+ ... Nov 19 09:44:52 Gauss kernel: [ 0.890282] RAS: Correctable Errors collector initialized. ... Nov 19 09:44:52 Gauss kernel: [ 1.026963] nvidia: module verification failed: signature and/or required key missing - tainting kernel ... Nov 19 09:44:52 Gauss kernel: [ 2.927217] scsi 10:0:0:1: Failed to get diagnostic page 0x1 Nov 19 09:44:52 Gauss kernel: [ 2.927219] scsi 10:0:0:1: Failed to bind enclosure -19 ... Nov 19 09:44:52 Gauss kernel: [ 5.227132] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro ... Nov 19 09:44:52 Gauss kernel: [ 5.602354] thermal thermal_zone0: failed to read out thermal zone (-61)
Komentarze
Odpowiedź
Wygląda na to, że serwer X11 lub Wayland GUI ulega awarii i przenosi Cię z powrotem do konsoli trybu tekstowego. Jedna linia tekstu pochodzi prawdopodobnie ze sprawdzenia systemu plików, które miało miejsce podczas uruchamiania systemu, przed przełączeniem do trybu GUI. Ponieważ Ubuntu 18.04 uruchamia GUI na pierwszej konsoli wirtualnej, ta konsola wirtualna nie będzie odpowiadać, jeśli serwer GUI ulegnie awarii i nie zostanie ponownie uruchomiony.
(Inne dystrybucje Linuksa tradycyjnie korzystały z 7. wirtualnej konsoli dla GUI, co powodowało, że system automatycznie powracał do domyślnej pierwszej wirtualnej konsoli z funkcjonalnym monitem logowania po awarii serwera X11. Ubuntu najwyraźniej przeniósł Serwer GUI na pierwszą konsolę wirtualną, aby zapewnić płynniejsze przejście między powitaniem rozruchowym a logowaniem do interfejsu GUI, ale jeśli serwer GUI ulegnie awarii, musisz teraz zdawać sobie sprawę z konsol wirtualnych, aby uzyskać dostęp do logowania w trybie tekstowym ).
Wszystkie wiersze w Twoim /var/log/kern.log
są rejestrowane w ciągu kilku sekund od uruchomienia jądra Linuksa (zgodnie z wartością sekund od uruchomienia w nawiasy kwadratowe na początku każdego wiersza), więc prawdopodobnie nie są bezpośrednio powiązane.
Spróbuj nacisnąć klawisze Control + Alt + F2 . Jeśli jądro nadal żyje, powinieneś zobaczyć monit logowania w trybie tekstowym na czarnym ekranie. Następnie możesz zalogować się i spróbować sudo systemctl restart gdm
, aby zrestartować GUI lub zebrać dzienniki i inne informacje dotyczące rozwiązywania problemów w trybie tekstowym. Zwróć uwagę, że ponowne uruchomienie gdm
może automatycznie powrócić do GUI, ale sesja logowania na drugiej konsoli wirtualnej pozostanie zalogowana: prawdopodobnie możesz przełączać się między nimi za pomocą Control- Alt-F1 i Control-Alt-F2 .
Ponieważ dziennik jądra nic nie pokazuje, może się zdarzyć, że jądro jest w porządku i tylko pulpit ulega awarii . W takim przypadku inne pliki dziennika mogą być bardziej pomocne:
-
/var/log/gdm.log
-
/var/log/Xorg.0.log
jeśli istnieje (hmm, jaki jest odpowiednik Waylanda?)
Zastrzeżenie: Sam nie próbowałem Ubuntu 18.04; ta odpowiedź jest oparta tylko na tym, co przeczytałem o tym.
Komentarze
- Nie ma
gdm.log
, alegrep -E "EE|WW" Xorg.0.log
wyświetla kilka wierszy, w tym ” Nie udało się otworzyć urządzenia DRM „. Czy może to być związane z moimi GPU?Oto wklejony plik: paste.ubuntu.com/p/zJ9Gqhfq9B - Zwróć uwagę, że
Xorg.0.log
zostanie zastąpiony przy każdym uruchomieniu serwera X11, więc jeśli ' już zrestartowałeś GUI lub ponownie uruchomiłeś system po awarii, spójrz na koniecXorg.0.log.old
zamiast tego. - OK, oto pełny plik
Xorg.0.log.old
: paste.ubuntu .com / p / 925mb7xMtz Dziękujemy za pomoc! Jest na nim napisanexf86CloseConsole: KDSETMODE failed
, a takżeVT_GETMODE
iVT_ACTIVATE
. A wcześniej wspomniał o moim GPU. - Hmm, to wygląda na pomyślne zamknięcie serwera X11 bez żadnych poważnych błędów. Jeśli ten dziennik pochodzi z awarii, przyczyną jest prawdopodobnie awaria procesu menedżera wyświetlania i efekt uboczny powodujący zakończenie sesji X11. Czy istnieje plik dziennika pasujący do
/var/log/*dm.log
w Twoim systemie? Lub jeśli system Ubuntu 18.04 ustandaryzował rejestrowanie w oparciu ojournald
, upewnij się, że istnieje katalog/var/log/journal
, a następnie powinieneś móc używaćsudo journalctl -xb -1
, aby wyświetlić dzienniki poprzedniego uruchomienia aż do wyłączenia. - Powinienem był zapisać dokładne czasy, kiedy to się stało. Dzisiaj dostałem tylko nieoczekiwane wylogowanie. Nie ma
*dm.log
, alejounal
-cokolwiek działało. Wklejałem dzienniki wokół krytycznego punktu w czasie tutaj: paste.ubuntu.com/p/37XmRYRpVK
Odpowiedź
To może trochę potrwać, ale miałem dokładnie te same objawy, które opisałeś dzisiaj na moim komputerze (awarie, a później wyloguj się zamiast czarnego ekranu).
Używam również Ubuntu 18.04 i używam GPU Nvidia.
Wszyscy wspominają, że zakładają, że może to być problem ze sterownikami Nvidida. postanowił udzielić odpowiedzi w tym wątku, mimo że dotyczyło to tylko częściowo naszego problemu:
-
Usuń sterowniki nvidia za pomocą
sudo apt-get purge nvidia*
-
Uruchom ponownie
-
Zainstaluj ponownie sterowniki Nvidida
Jak dotąd nie miałem już czarnych ekranów ani nagłych wylogowań
Komentarze
- OK, ja ' spróbuję!
- G Prześlij nam aktualizację, jeśli to rozwiązało problem :).
- Krótka uwaga: ponieważ używam
zsh
, musiałem umieścićnvidia*
w cudzysłów, patrz github.com/robbyrussell/oh-my-zsh/issues/6748 .
Odpowiedź
Tutaj inne rozwiązanie. Miałem już ten sam problem i nie mogłem znaleźć żadnego z sugerowanych rozwiązań przydatnych w moim przypadku. Użyłem stacji roboczej VMware i napotkałem ten sam problem, gdy Ubuntu zaczyna się uruchamiać. Głównym powodem awarii w moim przypadku nie był sterownik karty graficznej lub podobne rzeczy. W zainstalowanym Ubuntu zabrakło wolnego miejsca. Dlatego wykonałem następujące kroki, aby rozwiązać problem.
1) zmień plik konfiguracyjny .vmx, dodając do niego następujący wiersz:
bios.bootDelay = „50000”
* Prowadzi to do dłuższego rozruchu opóźnienia, dlatego możesz użyć Shift + Enter, aby wejść do menu Grub.
* Jeśli masz problem z otwarciem pliku .vmx w systemie Windows, najpierw zmień rozszerzenie pliku na .txt, następnie dodaj do niego wspomnianą linię i zapisz plik, a następnie zmień rozszerzenie z powrotem na .vmx
2) Uruchom VMware i Ubuntu
3) Po kliknięciu na ekranie naciśnij i przytrzymaj klawisz Shift, a następnie naciśnij Enter, aby wejść do menu grub.
4) wybierz Advanced Options for Ubuntu.
5) wybierz root, a następnie wciśnij Enter.
6) masz teraz uprawnienia roota do usunięcia dowolnego pliku aby zwolnić miejsce w Ubuntu.
Zauważ, że niektórzy użytkownicy sugerowali użycie Alt + Shift + F2 lub F3, aby uzyskać dostęp do terminala. To nie zadziałało, ponieważ nie miałem hasła dla użytkownika root. Jednak wykonanie poniższych czynności pomogło mi rozwiązać problem.
Powodzenia, Hamed
Odpowiedź
W moim przypadku było to spowodowane gdm3 nie działa. Więc uruchomiłem go ponownie, używając tych poleceń:
sudo service gdm3 status (to ckeck status) sudo service gdm3 start
Nie ma znaczenia, czy używasz lightgdm, gdm czy gdm. Aby dowiedzieć się, którego używasz wypróbuj sudo service --status-all | grep gdm
Odpowiedz
Oto kolejne rozwiązanie, którego nie widziałem gdzie indziej, pomyślałem, że warto się nim podzielić.
Używam Ubuntu 20.04 LTS, dystrybucja amd64 i miałem to samo zawieszenie się podczas uruchamiania po wyświetleniu ” / dev / sda1: clean … ” błąd.W moim przypadku wtórną przyczyną problemu było to, że dysk był pełny .
Jeśli więc masz ten objaw, zrób szybko df
lub df -h
, aby sprawdzić, ile wolnego miejsca zostało partycja (y). Używając poleceń du
lub du -h
, możesz skupić się na katalogach zawierających duże ilości danych. Rozwiązanie mogłoby być tak proste, jak usunięcie niepotrzebnych plików.
W moim przypadku okazało się jednak, że katalog / var / log miał około 100 GB (?!), Co było spowodowane jakimś problemem w systemie skutkującym na piśmie do pliku / var / log / syslog i ostatecznie zapełniając dysk. Więc to była główna przyczyna problemu. W tym momencie nie jestem pewien, który zasób jest winowajcą, ale sprawdzenie pliku / var / log / syslog może dostarczyć pewnych wskazówek w twoim przypadku. Jeśli tak jest w twoim przypadku, polecam zbadanie, jak prawidłowo usunąć plik / var / log / syslog, a następnie spróbować rozwiązać główną przyczynę problemu.
Ponieważ mój system nie ma żadnego ważne rzeczy, dlatego nie byłem zainteresowany przechowywaniem plików dziennika, zainstalowałem pakiet logrotate i skonfigurowałem codzienną rotację i konfigurację systemu, aby usunąć obrócony plik. Znalazłem również duży plik dziennika, więc skonfigurowałem cronjob jako root, aby usuwać pliki dziennika starsze niż 1 dzień. Możesz to zrobić crontab -e
jako root i dodać tę linię na końcu pliku:
0 * * * * journalctl –vacum-time = 1d
Zrobiłem również cykl apt-get update
i apt-get upgrade
dla dobrego pomiaru.
Polecam trochę więcej informacji:
https://ma.ttias.be/clear-systemd-journal/
https://github.com/andyholmes/gnome-shell-extension-gsconnect/issues/588 https://askubuntu.com/questions/515146/very-large-log-files-what-should-i-do https://kifarunix.com/how-to-configure-log-rotation-with-logrotate-on-ubuntu-18-04-lts/
Miłego debugowania i powodzenia,
8bitrocks
Odpowiedź
Na moim komputerze wystąpił problem związany z tym /dev/sd*: clean
problem. Nie chciałem otwierać nowego pytania, ponieważ jest ich już tak wiele, a także dlatego, że mój problem wydaje się być teraz rozwiązany. Postanowiłem więc napisać odpowiedź na pokrewny temat (gdzie faktycznie mogę napisać odpowiedź i nie potrzebuję 10 punktów reputacji czy czegoś podobnego).
Zanim zacznę, kilka specyfikacji:
- Ubuntu 18.04.4
- Mam podwójne uruchamianie w systemie Windows
- Mój komputer ma kartę graficzną AMD Radeon RX 5500 XT
Aby uzyskać więcej specyfikacji, o których w tej chwili nie myślę – po prostu daj mi znać.
Moje pierwsze spotkanie z tym problemem wyglądało tak: wybierałem Ubuntu w menu podwójnego rozruchu . To menu ma fioletowe tło. Jak kliknąłem Enter menu zniknęło (tak jak powinno), ale fioletowe tło pozostało przez co najmniej 15 minut. Zdecydowałem się zrestartować. Po pewnym googlowaniu udało mi się przejść do trybu odzyskiwania, w którym edytowałem w /etc/default/grub
wiersz
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
do
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"
Ponownie uruchomiłem komputer tylko po to, aby na ekranie pojawił się następujący komunikat
/dev/sdb1: Superblock last mount time is in the future. (by less than a day, probably due to the hardware clock being incorrectly set) /dev/sdb1: Superblock last write time is in the future. (by less than a day, probably due to the hardware clock being incorrectly set) /dev/sdb1: clean, 30163/6594560 files, 5137309/26366943 blocks
co ~ 10 sekund przez około ~ 0,5 sekundy. Tutaj już „wiedziałem”, że ten problem jest związany z zainstalowanymi sterownikami graficznymi. Ponownie uruchomiłem ponownie w trybie odzyskiwania, aby odinstalować sterowniki karty graficznej AMD
$ amdgpu-pro-uninstall
Następnie Ubuntu uruchomiło się normalnie, z wyjątkiem faktu, że był tylko 1 monitor rozpoznany z rozdzielczością 1024×768 której nie mogłem zmienić (mam 2 monitory z rozdzielczością 1920 x 1080). Po dłuższym wyszukiwaniu w Google zmieniłem plik etc/fstab
z
# /etc/fstab: static file system information. # # Use "blkid" to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sdb1 during installation UUID=b440d779-f2d8-4e85-a425-86c264cf1086 / ext4 errors=remount-ro 0 1 # /boot/efi was on /dev/nvme0n1p2 during installation UUID=4E80-9146 /boot/efi vfat umask=0077 0 1 # /home was on /dev/sdb3 during installation UUID=3b2456a3-8d84-41f8-81b1-094c3014126f /home ext4 defaults 0 2 # swap was on /dev/sdb2 during installation UUID=5d727b45-f3f0-40ad-8f6b-41528f8fb611 none swap sw 0 0
na
# /etc/fstab: static file system information. # # Use "blkid" to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sdb1 during installation UUID=b440d779-f2d8-4e85-a425-86c264cf1086 / ext4 errors=remount-ro 0 0 # /boot/efi was on /dev/nvme0n1p2 during installation UUID=4E80-9146 /boot/efi vfat umask=0077 0 1 # /home was on /dev/sdb3 during installation UUID=3b2456a3-8d84-41f8-81b1-094c3014126f /home ext4 defaults 0 2 # swap was on /dev/sdb2 during installation UUID=5d727b45-f3f0-40ad-8f6b-41528f8fb611 none swap sw 0 0
(Zmieniłem ostatnią liczbę 1
na 0
w pierwszym wierszu bez komentarza) . Ponownie zainstalowałem sterownik AMD GPU, zrestartowałem komputer i problem zniknął. Piszę to na moich 2 monitorach w rozdzielczości 1920 x 1080. Usunąłem też nomodeset
w /etc/default/grub
.
Więc jeśli ktoś ma ten sam problem, może ta osoba znajdzie moją odpowiedź i może moje podejście rozwiąże problem.
smartmontools
i sprawdź dane SMART swoich dysków.smartctl --all /dev/sda
.