Articles

3-kommandoer til at genstarte Linux (plus 4 flere måder at gøre det sikkert)

Linux er fuldt ud i stand til at køre, ikke uger, men år, uden en genstart. I nogle brancher er det præcis, hvad Linu.gør, takket være fremskridt som kpatch og kgraph.

for bærbare og stationære brugere er denne måling dog lidt ekstrem. Selvom det måske ikke er en daglig virkelighed, er det mindst en ugentlig virkelighed, at du nogle gange har en god grund til at genstarte din maskine. Og for et system, der ikke behøver at genstarte ofte, tilbyder Linu.masser af valg, når det er tid til at starte forfra.,

forstå dine indstillinger

før du fortsætter dog en note om genstart. Genstart er en unik proces på hvert operativsystem. Selv inden for posi. – systemer kan kommandoerne til at slukke og genstarte opføre sig anderledes på grund af forskellige initialiseringssystemer eller kommandodesign.

På trods af denne faktor er to begreber afgørende. For det første er genstart sjældent nødvendig på et posi. – system. Din Linu. – maskine kan fungere i uger eller måneder ad gangen uden genstart, hvis det er det, du har brug for., Der er ingen grund til at “opfriske” din computer med en genstart, medmindre det specifikt anbefales at gøre det af en soft .areinstallationsprogram eller updater. Så igen gør det heller ikke ondt at genstarte, så det er op til dig.for det andet er genstart beregnet til at være en venlig proces, der giver tid til programmer til at afslutte, filer, der skal gemmes, midlertidige filer, der skal fjernes, filsystemjournaler opdateret og så videre. Når det er muligt, skal du genstarte ved hjælp af de tilsigtede grænseflader, hvad enten det er i en GUI eller en terminal., Hvis du tvinger din computer til at lukke eller genstarte, risikerer du at miste ikke-gemte og endda nyligt gemte data og endda ødelægge vigtige systemoplysninger; du bør kun tvinge din computer, når der ikke er nogen anden mulighed.

Klik på den knap

Den første måde at genstarte eller lukke Linux er den mest almindelige og den mest intuitive for de fleste desktop-brugere, uanset deres OS: Det er power-knappen i brugerfladen., Da tænding og genstart er almindelige opgaver på en arbejdsstation, kan du normalt finde tænd / sluk-knappen (typisk med genstart og luk Indstillinger) et par forskellige steder., På GNOME-skrivebordet, det er i systembakken:

Det er også i GNOME Aktiviteter menu, skal du:

Om KDE desktop, tænd / sluk-knapperne kan findes i menuen Programmer:

Du kan også få adgang til KDE-power styrer ved at højre-klikke på skrivebordet og vælge Forlade mulighed, der åbner vinduet kan du se her:

Andre desktops giver variationer over disse temaer, men den generelle idé er den samme: brug musen til at finde på power-knappen, og klik derefter på det., Du skal muligvis vælge mellem genstart og nedlukning, men i sidste ende er resultatet næsten identisk: processer stoppes pænt, så data gemmes og midlertidige filer fjernes, derefter synkroniseres data til drev, og derefter tændes systemet.

tryk på den fysiske knap

de fleste computere har en fysisk tænd / sluk-knap. Hvis du trykker på den knap, kan dit Linu. – skrivebord muligvis vise en strømmenu med muligheder for at lukke eller genstarte., Denne funktion leveres af delsystemet Advanced Configuration and Po .er Interface (ACPI), der kommunikerer med dit bundkorts firm .are for at kontrollere din computers tilstand.

ACPI er vigtigt, men det er begrænset i omfang, så der er ikke meget at konfigurere fra brugerens perspektiv. Normalt kaldes ACPI-indstillinger generisk Po .er og er indstillet til en fornuftig standard. Hvis du vil ændre denne opsætning, kan du gøre det i dine systemindstillinger.på GNOME skal du åbne systembakkemenuen og vælge aktiviteter og derefter Indstillinger., Vælg derefter Strømkategorien i venstre kolonne, som åbner følgende menu:

i afsnittet Suspend & tænd / sluk-knap skal du vælge, hvad du vil have den fysiske tænd / sluk-knap til at gøre.

processen er den samme på tværs af desktops. For eksempel, på KDE, po .er Management panel I System Settings indeholder en mulighed for knap begivenhed håndtering.

kde-po .er-management.jpg

opensource.,com

Når du har konfigureret, hvordan knappen begivenheden håndteres, følger det at trykke på computerens fysiske tænd / sluk-knap den mulighed, du valgte. Afhængigt af din computerleverandør (eller dele leverandører, hvis du bygger din egen), kan et knaptryk være et let tryk, eller det kan kræve et lidt længere tryk, så du skal muligvis lave nogle test, før du får fat i det.

pas på et over-Langt tryk, da det kan lukke computeren ned uden advarsel.,

Kør systemctl-kommandoen

Hvis du arbejder mere i en terminal end i et GUI-skrivebord, foretrækker du måske at genstarte med en kommando. I det store og hele er genstart og nedlukning processer i init-systemet-sekvensen af programmer, der bringer en computer op eller ned efter et strømsignal (henholdsvis til eller fra) modtages.

på de fleste moderne Linu. – distributioner er systemd init-systemet, så både genstart og nedlukning kan udføres via systemd-brugergrænsefladen, systemctl., Den systemctl kommandoen accepterer, blandt mange andre muligheder, så stop (stop disk aktivitet, men ikke skære power) genstart (standser disk aktivitet og sender et reset signal til bundkortet) og nedlukning (stopper disken aktiviteten, og derefter skære magt). Disse kommandoer svarer for det meste til at starte målfilen med samme navn.

For eksempel, til at udløse en genstart:

$ sudo systemctl start reboot.target

Kør shutdown kommando

Traditionelle UNIX, før de dage systemd (og for nogle Linux-distributioner, som Slackware, at ‘ nu), der var specifikke kommandoer til at stoppe et system., Nedlukning kommando, for eksempel, kan slukke din maskine, men det har flere muligheder for at styre præcis, hvad det betyder.

denne kommando kræver et tidsargument på få minutter, så nedlukning ved, hvornår den skal udføres., For at genstarte omgående, tilføje -f flag:

$ sudo shutdown -r now

for At lukke ned med det samme:

$ sudo shutdown -P now

du kan bruge den slukket kommando:

$ poweroff

for At genstarte efter 10 minutter:

$ sudo shutdown -r 10

shutdown kommando er en sikker måde at slukke eller genstarte din computer, som tillader diske at synkronisere og processer til ende. Denne kommando forhindrer nye logins inden for de sidste 5 minutter efter nedlukning påbegyndes, hvilket er særligt nyttigt på multi-user-systemer.,

på mange systemer i dag er shutdo .n-kommandoen faktisk bare et opkald til systemctl med den relevante genstart eller sluk-mulighed.

Kør genstartskommandoen

genstartskommandoen er i sig selv dybest set en genvej til shutdo .n-r no.. Fra en terminal, er den nemmeste og hurtigste reboot kommando:

$ sudo reboot

Hvis dit system er ved at blive blokeret fra at lukke ned (måske på grund af en løbsk proces), kan du bruge flaget –force til at gøre systemet lukker ned alligevel., Denne mulighed springer imidlertid over den faktiske nedlukningsproces, som kan være abrupt for kørende processer, så den skal kun bruges, når shutdo .n-kommandoen blokerer dig for at slukke.

på mange systemer er genstart faktisk et opkald til systemctl med den relevante genstart eller sluk-indstilling.

Init

på Linu. – distributioner uden systemd er der op til 7 runlevels din computer forstår., Forskellige distributioner kan tildele hver tilstand entydigt, men generelt 0 initierer en standsning tilstand, og 6 initierer en genstart (tallene i mellem angiver stater såsom single-user mode, multi-user mode, en GUI prompt, og en Tekst prompt).

disse tilstande er defineret i/etc / inittab på systemer uden systemd. På distributioner, der bruger systemd som init-system, mangler filen/etc / inittab enten, eller det er bare en pladsholder.

telinit-kommandoen er front-end til dit init-system. Hvis du bruger systemd, er denne kommando et link til systemctl med de relevante indstillinger.,

for At slukke din computer, ved at sende det til runlevel 0:

$ sudo telinit 0

for At genstarte ved hjælp af den samme metode:

$ sudo telinit 6

Hvordan farlige denne kommando er, at dine data afhænger helt af dit init-konfiguration. De fleste distributioner forsøger at beskytte dig mod at trække stikket (eller det digitale ækvivalent af det) ved at kortlægge runlevels til venlige kommandoer.

Du kan selv se, hvad der sker på hvert runlevel ved at læse de init-scripts, der findes i/etc / rc.d eller /etc/init.d, eller ved at læse systemd-målene i /lib / systemd/system/.,

Anvend brute force

indtil videre har jeg dækket alle de rigtige måder at genstarte eller lukke din Linu. – computer på. For at være grundig inkluderer jeg her yderligere metoder til at nedbringe en Linu. – computer, men på ingen måde anbefales disse metoder. De er ikke designet som en daglig genstart eller lukket kommando (genstart og nedlukning eksisterer for det), men de er gyldige midler til at udføre opgaven.

Hvis du prøver disse metoder, kan du prøve dem i en virtuel maskine. Ellers skal du kun bruge dem i nødsituationer.,

Proc

et trin lavere end init-systemet er / proc-filsystemet, som er en virtuel repræsentation af næsten alt, der sker på din computer. For eksempel kan du se dine CPU ‘ er, som om de var tekstfiler (med cat /proc/cpuinfo), se, hvor meget strøm der er tilbage i din bærbare computers batteri, eller genstart dit system efter en mode.

Der er en bestemmelse i Linu. – kernen for systemanmodninger (Sysr. på de fleste tastaturer)., Du kan kommunikere direkte med dette delsystem ved hjælp af tastekombinationer, ideelt uanset hvilken tilstand din computer er i; det bliver komplekst på nogle tastaturer, fordi Sysr. – tasten kan være en speciel funktionstast, der kræver en anden nøgle til adgang (f. eks.

en mulighed, der er mindre tilbøjelig til at mislykkes, bruger echo til at indsætte information i / proc manuelt., Første, sørg for, at Sysrq-systemet er aktiveret:

$ sudo echo 1 > /proc/sys/kernel/sysrq

for At genstarte, kan du enten bruge Alt+Sysrq+B eller skriv:

$ sudo echo b > /proc/sysrq-trigger

Denne metode er ikke en rimelig måde at genstarte din maskine på en regelmæssig basis, men det bliver arbejdet gjort i en knivspids.

Sysctl

kerneparametre kan styres under runtime med sysctl. Der er masser af kerneparametre, og du kan se dem alle med sysctl-all. Det betyder sandsynligvis ikke meget for dig, før du ved, hvad du skal kigge efter, og i dette tilfælde Leder du efter kerne.panik.,

Du kan forespørge kerneparametre ved hjælp af indstillingen –value:

$ sudo sysctl --value kernel.panic

Hvis du får et 0 tilbage, har den kerne, du kører, i det mindste som standard ingen speciel indstilling til at genstarte efter en kernepanik. Denne situation er temmelig typisk, da genstart straks på et katastrofalt systemkrasj gør det vanskeligt at diagnosticere årsagen til styrtet. Så igen, systemer, der skal forblive på, uanset hvad der kan drage fordel af en automatisk genstart efter en kernefejl, så det er en mulighed, der bliver tændt i nogle tilfælde.,

Du kan aktivere denne funktion som et eksperiment (hvis du følger med, så prøv det i en virtuel maskine, snarere end på din faktiske computer):

$ sudo sysctl kernel.reboot=1

Nu, skal din computer opleve en kernel panic, det er sat til at genstarte i stedet for at vente tålmodigt på dig med at diagnosticere problemet. Du kan teste dette ved at simulere et katastrofalt nedbrud med sysr.. Første, sørg for, at Sysrq er aktiveret:

$ sudo echo 1 > /proc/sys/kernel/sysrq

Og derefter simulere en kernel panic:

$ sudo echo c > /proc/sysrq-trigger

Din computer genstarter med det samme.,

genstart ansvarligt

at kende alle disse indstillinger betyder ikke, at du skal bruge dem alle. Tænk nøje på, hvad du prøver at opnå, og hvad den kommando, du har valgt, vil gøre. Du ønsker ikke at skade dit system ved at være hensynsløs. Det er hvad virtuelle maskiner er til. Men at have så mange muligheder betyder, at du er klar til de fleste situationer.