Känner du att det är dags för en nystart? Den här guiden visar hur du på ett säkert och korrekt sätt kan starta om eller stänga av din Linux- eller macOS-dator direkt från kommandoraden.
Dags att logga ut
Ibland är det nödvändigt att initiera en omstart eller en fullständig avstängning. Om du arbetar på en server utan grafiskt användargränssnitt (GUI) eller via en SSH-session till en fjärrdator, är kommandoraden ditt enda verktyg. Linux och Unix-baserade system, som macOS, erbjuder flera kommandon för att stänga av eller starta om systemet direkt via kommandotolken.
Några användbara kommandon är:
shutdown
reboot
halt
poweroff
Att granska manualsidorna för dessa kommandon kan verka förvirrande. Beroende på vilka kommandoradsalternativ du använder, kan dessa kommandon leda till avstängningar, omstarter och systemstopp. Faktum är att manualsidorna för reboot
, halt
och shutdown
delar identisk information.
Vad ligger bakom kulisserna?
Svaret finns i systemd, ett bootstrap-system som ersatte det klassiska System V init-systemet. Fedora var en av de första Linux-distributionerna som implementerade systemd 2011, och sedan dess har många andra följt efter. Debian och Ubuntu gjorde övergången till systemd 2015.
I systemd-baserade distributioner fungerar kommandona shutdown
, reboot
, halt
och poweroff
i praktiken som genvägar till kommandot systemctl
. Genom att bibehålla dessa kommandon säkerställs en viss nivå av kompatibilitet med System V init-baserade system. Detta innebär att skalskript (och erfarna System V-administratörer) inte får problem vid förflyttning till en maskin som körs med en systemd-distribution.
Använda ’shutdown’
Att stänga av eller starta om ett system med flera användare kräver förberedelse. Du behöver planera när avstängningen eller omstarten ska ske och informera andra användare om att det kommer att ske, samt när. Om det är din personliga dator och du är den enda användaren, är det betydligt enklare.
För att utföra något av dessa kommandon måste du tillhöra sudo-gruppen, vilket innebär att du har administratörsrättigheter och kan använda kommandot sudo
. Om kommandot du skickar ska verkställas omedelbart och inte påverkar andra inloggade användare, behöver du inte använda sudo
. Om du får ett felmeddelande när du använder ett kommando, försök igen med sudo
framför.
Som standard ser kommandot shutdown
till att alla processer avslutas korrekt, alla filsystem synkroniseras och all CPU-aktivitet upphör. Detta kallas för ”stopp”-tillståndet. Därefter skickas en signal till hårdvaran för att stänga av strömmen, vilket är själva avstängningen.
Det är vanligt att ange parametrar till shutdown
, som till exempel en tidsangivelse och ett meddelande som skickas till inloggade användare som en varning om den kommande avstängningen. Låt oss schemalägga en avstängning om 15 minuter. Skriv shutdown
, följt av ett mellanslag, +15
, ett mellanslag och sedan meddelandet som ska skickas till användarna.
shutdown +15 Nedstängning om 15 minuter!
Tidssträngen vi använde var +15
, vilket motsvarar 15 minuter från nu. Plustecknet +
är valfritt, vi kunde lika gärna skriva 15
.
Du får en bekräftelse på att avstängningen är schemalagd och när den kommer att ske. Inloggade användare kommer också att få meddelandet vi angav.
För att avbryta en schemalagd avstängning, använd alternativet -c
(avbryt).
shutdown -c
Även om du inte ser någon bekräftelse på att avstängningen avbrutits, får inloggade användare en notis.
Om du inte specificerar någon tidssträng kommer avstängningen att planeras in om en minut. Observera att du inte kan skicka meddelanden till dina inloggade användare om du inte anger en tidssträng.
shutdown
Om du inte ens vill vänta en minut kan du använda now
som tidssträng, och avstängningen sker direkt. Att använda now
är samma sak som att ange +0
.
Tidssträngen kan även vara en exakt tid, som till exempel 23:00. Formatet måste vara TT:MM, i 24-timmarsformat. Fem minuter innan systemet stängs ned förhindras nya inloggningar.
Som vi vet leder en standard avstängning till att datorn först går ned till stoppläge och sedan stängs av. Det här beteendet kan ändras genom att ange andra kommandoradsalternativ.
Alternativet -H
(halt) stänger ner datorn till stoppläge, men begär inte att hårdvaran ska stängas av.
-P
(poweroff) är standardåtgärden. Datorn förs ned i stoppläge och stängs sedan av.
Alternativet -r
(reboot) stänger ner datorn till stoppläge och startar sedan om den.
Alternativet -h
(halt och poweroff) är samma som -P
. Om du använder -h
och -H
samtidigt, har -H
prioritet.
Alternativet -c
(cancel) avbryter alla schemalagda avstängningar, stopp eller omstarter.
Här är ett exempel där vi har schemalagt en omstart.
shutdown -r 08:20 Systemet startar om 08:20
Kommandon ’reboot’, ’halt’ och ’poweroff’
Dessa kommandon utför den åtgärd som deras namn antyder. De kan också acceptera kommandoradsalternativ för att utföra en omstart, ett stopp eller en avstängning. Men varför krångla till det? Dessa kommandon används bäst för sitt direkta syfte.
Om du vill starta om direkt, använd reboot
. Om du vill stänga av direkt, använd poweroff
, och om du vill stoppa systemet direkt, använd halt
.
reboot
halt
poweroff
Dessa kommandon verkställs omedelbart. Om något av dem misslyckas, lägg till sudo
framför kommandot. Men kom ihåg att ett misslyckande ofta beror på att andra användare är inloggade på systemet som du är på väg att koppla ifrån.
Vilket kommando är rätt för mig?
I miljöer med flera användare får du mer kontroll genom att använda shutdown
för att utföra dessa åtgärder. Möjligheten att schemalägga avstängningar och omstarter samt att varna användare med ett meddelande kommer att vara ovärderligt i dessa situationer. För en dator med en enda användare, kommer troligtvis reboot
och poweroff
att räcka.