Ubuntu 13.04 nie zostanie zamknięty

10

Właśnie zaktualizowałem swój komputer z Ubuntu 12.10 do Ubuntu 13.04, a teraz, kiedy idę, aby wyłączyć komputer, nie zostanie całkowicie zamknięty. Zasilacz nadal działa, nawet gdy jest wyłączony. Czy masz jakieś sugestie?

Paweł
źródło
3
Możesz uruchomić w terminalu sudo shutdown -h nowi sprawdzić, czy się całkowicie wyłącza.
Max Tither
Czy flaga nie jest „-P”? [ sudo shutdown -P now]
Omio
3
-h Requests that the system be either halted or powered off after it has been brought down, with the choice as to which left up to the system. -P Requests that the system be powered off after it has been brought down.
Janus Troelsen
Paul: czy widzisz na ekranie „zatrzymany system”?
Janus Troelsen
1
Jeśli naciśniesz CTRL-ALT-F1, aby przełączyć się na terminal tekstowy, gdy urządzenie się wyłącza, zobaczysz, że różne usługi się zatrzymują. Ten, który powoduje problem, powinien być ostatni na liście. CTRL-ALT-F7 wraca do terminala graficznego.
Jason Morgan

Odpowiedzi:

2

Zmodyfikowałem skrypt odpowiedzialny za wysyłanie sygnału zabicia z przydzielonym opóźnieniem, /etc/init.d/sendsigs, i skróciłem czas potrzebny na zabicie pozostałych procesów w 2 iteracjach. Zdrowe czy nie, wykonuje zadanie w moim systemie i nie przestaje już działać przy wyłączaniu i ponownym uruchomieniu.

Poniżej znajduje się część pliku /etc/init.d/sendsigs z modyfikacjami oznaczonymi # <---:

# Kill all processes.
log_action_begin_msg "Asking all remaining processes to terminate"
killall5 -15 $OMITPIDS # SIGTERM
log_action_end_msg 0
alldead=""
OMITPIDS0="$OMITPIDS"
#for seq in 1 2 3 4 5 6 7 8 9 10; do  # this is the original line
for seq in 1 2; do     # <--- the above line is replaced by this one.

następnie w dolnej części skryptu:

# Upstart has a method to set a kill timeout and so the job author
# may want us to wait longer than 10 seconds (as in the case of 
# mysql). (LP: #688541)
#
# We will wait up to 300 seconds for any jobs in stop/killed state. 
# Any kill timeout higher than that will be overridden by the need 
# to shutdown. NOTE the re-use of seq from above, since we already 
# waited up to 10 seconds for them.
while [ -n "$(upstart_killed_jobs)" ] ; do
    seq=$(($seq+1))
    #if [ $seq -ge 300 ] ; then # this is the original line
    if [ $seq -ge 2 ] ; then   # <--- I can't wait for another 300 iteration 
        break
    fi

UWAGA: To może nie być najlepsze rozwiązanie, ponieważ oryginalny skrypt działa na innych systemach, dla takich systemów, jak mój, w których nie zastosowano kilku sugerowanych rozwiązań - to mogę udostępnić, biorąc pod uwagę, że działam tylko jako stacja robocza bez krytyczne usługi działające po zamknięciu wszystkich aplikacji komputerowych, z których korzystam przed kliknięciem ikony zamykania lub restartowania.

System w użyciu to laptop Asus X550DP.

Vernie
źródło
1

Wypróbuj polecenie

sudo shutdown -P now

w terminalu.

Jeśli nawet po zakończeniu transmisji stan pozostaje aktywny, a następnie wymuś zamknięcie, przytrzymując wciśnięty przycisk zasilania przez 5 sekund, uruchom ponownie i przejdź do

/etc/default/halt

i zdecydowanie dodaj

INIT_HALT = power_off

(jak wskazał Mauro powyżej) musi to znów działać przy normalnym wyłączaniu lub wyłączaniu z terminala.

ProgWiz
źródło
0

Miałem te same problemy z komputerem Macbook Pro z systemem Ubuntu 13.04. Po kilku próbach i zmartwieniach znalazłem obejście. Czy Twój komputer działa z co najmniej 2 procesorami? W moim przypadku musiałem edytować plik konfiguracyjny GRUB2, aby dodać parametr MAXCPUS = 1 (i pozbyć się ACPI = OFF).

greguti
źródło
0

Widziałem problemy z tym i „Modem Managerem”, który jest instalowany domyślnie.

O ile nie korzystasz z modemu, co w dzisiejszych czasach jest mało prawdopodobne, możesz

sudo apt-get remove modemmanager

Zobacz mój komentarz na temat przeglądania postępu zamykania.

Jason Morgan
źródło
0

wpisz terminal i wpisz „sudo shutdown -p now”. Jeśli system nadal zawiesza się przy wyłączaniu, zawsze możesz to zrobić sprzętowo, przytrzymać przycisk zasilania przez 5-10 sekund i zmusić system do zamknięcia bez wyświetlenia błędu lub „Nieoczekiwanego wyłączenia”.

Dragonosh
źródło
0

Spróbuj otworzyć Terminal i pisać sudo shutdown nowlub sudo poweroff. Musisz podać hasło administratora.

Steven Dale
źródło
0

Sprawdź BIOS, jeśli ACPI jest włączony. ACPI to zaawansowany interfejs konfiguracji i zasilania, który służy do informowania różnych urządzeń w komputerze o wyłączeniu (lub nie). W tym przypadku wydaje się, że system operacyjny jest zainstalowany z włączoną funkcją ACPI, a później został wyłączony. Zakładam, że sygnał jest wysyłany do systemu BIOS w celu zamknięcia, ale system BIOS nie wysyła sygnału do różnych urządzeń ...

Możliwe jest również odwrotnie (system operacyjny zainstalowany z włączonym ACPI, a później wyłączony).

phulstaert
źródło
0

Spróbuj uruchomić to polecenie w terminalu sudo shutdown -h nowZgadnij, które powinny pomóc.

ASCIIbetical
źródło
0

Spróbuj dodać

INIT_HALT=poweroff

do

/etc/default/halt

to zadziałało dla mnie w 13.10

Mauro Curti
źródło
0

Oprócz udzielonych odpowiedzi:

  • Spróbuj nacisnąć przycisk Esc podczas zamykania, gdy na ekranie pojawi się „Ubuntu”, aby włączyć powiadamianie o terminalu (jeśli ESC nic nie robi, spróbuj F1 , F2 lub połączenie tych klawiszy z Alt , Ctrl i lewy Shift ).

    Obserwuj, gdzie system wydaje się być zawieszony lub zbyt wolny, i określ, jakie komunikaty były wyświetlane w tym czasie.

  • Spróbuj wykonać następujące polecenie z ekranu terminala:

    sync; sudo -P shutdown now
    

    Jeśli zamknięcie jest szybsze, prawdopodobnie masz kilka asynchronicznych zapisów na dysku, które czekają na zatwierdzenie podczas zamykania.

    Jeśli tak, możesz to ograniczyć, umieszczając commit=xxw opcjach fstab dla systemu plików, którego dotyczy problem ( xxjako liczbę sekund między zapisem na dysku).

rask004
źródło
0

Jak wielu sugerowało, korzystałem z konsoli terminali, ale dla wielu osób, które wprowadziłem Linuksa, czarny ekran terminali ich przeraża.

Znalazłem alternatywę, która również działa. Instaluję Cairo-dock, który ma przycisk zamykania. Do tej pory działało, gdy nie powiodło się regularne wyłączanie.

LD James
źródło
0

Po prostu zrób:

sudo poweroff

lub wyloguj się, a następnie wybierz wyłączenie zasilania.

imLinuxFansier
źródło