Odpowiedzi:
Zasadniczo są dwie sytuacje, w których ponowne uruchomienie jest zwykle konieczne:
libc
(raczej glibc
) jest uaktualniony.Istnieje mechanizm przeładowywania jądra bez ponownego uruchamiania ( Jak mogę zaktualizować jądro mojego serwera bez ponownego uruchamiania? ). Z glibc
największym problemem jest init. Możliwe jest zrestartowanie init (patrz Ponowne uruchamianie init bez restartowania systemu ).
Dla przeciętnego użytkownika żadne nie jest zalecane i konieczne jest ponowne uruchomienie .
Najwyraźniej istnieje trzeci przypadek:
dbus
został zaktualizowany. dbus-daemon
jest najwyraźniej niezdolny do ponownego uruchomienia (z tego, co rozumiem z dyskusji na temat tego artykułu LWN ). A ponieważ wiele rzeczy opiera się na DBus ...W rzeczywistości zależy to od tego, co próbujesz osiągnąć:
Jeśli to zrobisz apt-get dist-upgrade
i pojawi się nowe jądro i chcesz je aktywować, potrzebujesz ponownego uruchomienia.
Jeśli pojawi się nowa wersja FireFox, oczywiście nie.
Pomiędzy tymi dwoma skrajnościami znajduje się 50 odcieni szarości:
;-)
Tak naprawdę dzisiaj miałem taką sytuację, która to potwierdza. Czasami po wprowadzeniu zmiany w systemie pozostają resztki rzeczy. Na przykład miałem użytkownika, który nie mógł uzyskać dostępu, /dev/dsp
mimo że został dodany do odpowiednich grup. Pierwszy użytkownik, który uzyskał do niej dostęp, został na nim zablokowany. Jednak nawet po zabiciu tego użytkownika zamek był nadal na swoim miejscu, a drugi użytkownik nie mógł uzyskać do niego dostępu. Jednak po ponownym uruchomieniu obaj użytkownicy mogli jednocześnie korzystać /dev/dsp
bez żadnych konfliktów. Ponowne uruchomienie powoduje zwolnienie wszelkich resztek, które mogłyby uniemożliwić prawidłowe zastosowanie zmian.
Nie mogę wymyślić żadnych sytuacji, w których ponowne uruchomienie jest absolutnie konieczne .
Naprawdę możesz zostawić Ubuntu działające bez końca. Może dostać złośliwe oprogramowanie (ponieważ nie są stosowane aktualizacje jądra i libc) i może wpaść w panikę lub ulec awarii ... Ale czego unikają te, które faktycznie dla ciebie zrobią?
Biorąc pod uwagę złożoność życia, może być bardziej konieczne zignorowanie ciągłych wymagań komputerów i utrzymanie się na inne sposoby. Jak oddychanie, jedzenie, kochanie ... życie.
Ale nawet wtedy, czy są absolutnie konieczne? Czy twoje istnienie na tej płaszczyźnie mieści się w absolutnej definicji konieczności? Naprawdę nie wiem. To trochę dziwne pytanie.
Dwóm wielkim psom-spoilerom, którzy ocenili ten post i następujące,
To pytanie było niekompletne lub przynajmniej otwarte. Kiedy rzucasz słowami, jeśli to konieczne , musisz podać kontekst.
Wiele odpowiedzi już zakładało, że OP oznacza wysoce pożądane (w sensie technicznym), więc zamieszczono odpowiedzi, które pasują do kontekstów, takich jak konieczne, aby uniknąć włamania lub konieczności, jeśli komputer ulegnie awarii . To dobre odpowiedzi. Dodanie kolejnego nie było tak naprawdę uzasadnione.
Ale mówią, że założenia są matką wszystkich psujących się rzeczy (lub coś w tym stylu), więc obrałem to z powrotem do absolutnej konieczności . Jeśli nalegasz na użycie starej kopii 10.10, Czas i Przestrzeń będą się rozwijać, podobnie jak ich zwyczaje.
Zauważysz, że nie polecam tej pozycji.
Pytanie powinno zostać naprawdę zamknięte, ponieważ opiera się głównie na opiniach .
Faktem jest, że zależy to od tego, co zostało zaktualizowane, od tego, jak twój system jest narażony na otwarty Internet i jakie usługi systemowe masz / potrzebujesz uruchomić.
Samo zainstalowanie nowych wersji pakietu nie spowoduje ponownego uruchomienia powiązanych usług i aplikacji. Na przykład, jeśli używasz Firefoksa podczas instalowania zaktualizowanego pakietu, zostaniesz powiadomiony w przeglądarce, gdy wrócisz do niego, że należy go ponownie uruchomić po zainstalowaniu aktualizacji. Podobnie samo jądro musi zostać „zrestartowane”, gdy zostaną dla niego zastosowane aktualizacje. Ponieważ jądro znajduje się na najniższym poziomie powyżej sprzętu, należy ponownie uruchomić system, aby załadować nowe jądro. W przypadku innych usług można je zrestartować bez ponownego uruchamiania. Aktualizacja do Unitylub bazowe biblioteki używane przez usługi środowiska będą musiały się wylogować i zalogować ponownie, aby je ponownie uruchomić. W przypadku usług systemowych może być możliwe ręczne ich ponowne uruchomienie po zastosowaniu aktualizacji, ale automatyczne wykonanie może być bardzo uciążliwe, jeśli próbujesz użyć systemu.
Jedynym sposobem, aby dowiedzieć się absolutnie pewnym, czy pewne działanie jest konieczne, jest wiedzieć, jakie są zmiany i jakie jest ryzyko, że nie wykonasz tego działania. Poprawki bezpieczeństwa oczywiście wymagają bardziej gwałtownego działania niż proste zmiany innych rzeczy, których nigdy nie możesz napotkać bezpośrednio. Im bardziej bezpośrednio komputer jest podłączony do Internetu, tym większe jest również ryzyko. Będziesz musiał wziąć pod uwagę wszystkie zmienne i podjąć decyzję, czy uruchomić ponownie teraz, czy później, po zainstalowaniu aktualizacji.
Kiedy konieczne jest ponowne uruchomienie systemu Ubuntu?
Działająca maszyna i ściśle podczas aktualizacji / aktualizacji? Prawdopodobnie nigdy (ale czytaj dalej). System Linux jest skonfigurowany w taki sposób, że po zaktualizowaniu systemu, w którym wymagałoby to ponownego uruchomienia, aby aktywować nowe funkcje (tj. Przeczytaj jądro zostało zmienione; zmiany w apache, mysql wymaga tylko ponownego uruchomienia usługi) zawsze może pracować z bieżącym stanem systemu.
Teraz, jeśli chcesz, aby te nowe funkcje były aktywne, najłatwiejszym sposobem jest zrestartowanie komputera. Ale zależy nam na tym, abyś nadal pracował na tym komputerze i uruchomił go ponownie w następny weekend lub weekend. Lub następne święta. Czy to jest mądre? Może nie. Ale nikt cię nie powstrzyma. System jest wystarczająco inteligentny, aby nie zaakceptować kolejnej aktualizacji, jeśli serwer nie uruchomił się jeszcze.
Dla mnie jedynym powodem, dla którego konieczny jest restart, jest po pierwszej instalacji lub podczas wykonywania czynności konserwacyjnych, w których wymagany jest pojedynczy użytkownik (pomyśl takie rzeczy jak partycjonowanie, naprawianie błędów dysku twardego) lub gdy jakiś idiota uruchomił słynną bombę wideł (chociaż można to naprawić z samego systemu).
Aby wszystkie pozostałe restarty miały miejsce, należy do administratora. I nie mogę tego nazwać „koniecznym”.
Po pierwsze doceniam to pytanie, ponieważ zawsze będzie aktualne.
Pozostałe odpowiedzi są poprawne i bardzo szczegółowe - dlatego krótko się powtarzam.
Istnieją sytuacje, w których konieczne jest ponowne uruchomienie komputera, na przykład po zainstalowaniu nowego jądra.
Istnieją scenariusze, w których jest to zalecane, na przykład po instalacji nowego pulpitu.
W większości scenariuszy, takich jak po instalacji lub aktualizacji oprogramowania, ponowne uruchomienie nie jest konieczne.
Ilekroć masz wątpliwości, zalecam ponowne uruchomienie, więc jesteś po bezpiecznej stronie.
Zainstaluj pakiet debian-goodies
:
sudo apt-get install debian-goodies
i uruchom polecenie
sudo checkrestart
Zobaczysz listę usług, a teraz masz wybór:
lub
$ checkrestart
Found 20 processes using old versions of upgraded files
(15 distinct programs)
(14 distinct packages)
Of these, 12 seem to contain init scripts which can be used to restart them:
The following packages seem to have init scripts that could be used to restart them:
gpm:
3044 /usr/sbin/gpm
rpcbind:
2208 /sbin/rpcbind
bind9:
8463 /usr/sbin/named
openssh-server:
22124 /usr/sbin/sshd
ntp:
4078 /usr/sbin/ntpd
tftpd-hpa:
3417 /usr/sbin/in.tftpd
uptimed:
2704 /usr/sbin/uptimed
cron:
3019 /usr/sbin/cron
postfix:
22145 /usr/lib/postfix/qmgr
8892 /usr/lib/postfix/master
hddtemp:
3174 /usr/sbin/hddtemp
autofs:
2792 /usr/sbin/automount
openbsd-inetd:
3254 /usr/sbin/inetd
These are the init scripts:
service gpm restart
service rpcbind restart
service bind9 restart
service ssh restart
service ntp restart
service tftpd-hpa restart
service uptimed restart
service cron restart
service postfix restart
service hddtemp restart
service autofs restart
service openbsd-inetd restart
These processes do not seem to have an associated init script to restart them:
isc-dhcp-client:
3775 /sbin/dhclient