„shutdown now” sau „shutdown -h now” pentru a opri Raspberry Pi? (Raspberry Pi, Raspbian)

Doar un tip a intrebat.

Sunt nou în Linux (folosind Raspbian) și Raspberry Pi și mă întreb care dintre cele două comenzi menționate în titlu ar trebui să folosesc atunci când îmi opresc Pi-ul. Le-am căutat pe Google, dar tot nu prea înțeleg diferența dintre cele două, contează pe care o folosesc?

3 răspunsuri
Greenonline

Încearcă să tastezi man shutdown. Paginile de man îți oferă o listă completă a opțiunilor pe care le poate lua o comandă și o explicație a ceea ce fac acestea. În cazul lui -h:

-h Solicită ca sistemul să fie oprit sau oprit după ce a fost oprit, alegerea fiind lăsată la latitudinea sistemului.

Diferența dintre a include opțiunea -h este mică și este irelevantă în acest caz, deoarece oricum nu puteți opri Pi-ul, nu fără a scoate manual alimentarea USB.

Goldilocks

Documentația se află în man shutdown.1

-P, --poweroff
           Power-off the machine (the default).

[...]

-h
           Equivalent to --poweroff, unless --halt is specified.

Uneori, comenzile au comutatoare aparent redundante ca aceasta, deoarece trebuie să satisfacă specificații pentru mai multe contexte diferite. Logica simplă ne spune că, din moment ce poweroff este oricum cea implicită, utilizarea -h este ea însăși redundantă (din nou, există pentru a satisface o specificație externă; unele implementări de shutdown pot să nu funcționeze în acest mod în mod implicit, dar toate cele care se conformează vor implementa -h).

Din moment ce pi în sine nu se poate deconecta (fie este conectat == pornit, fie nu), nu are rost să folosim poweroff, , dar nu va cauza niciun rău. Ar putea face o diferență în ceea ce privește modul în care LED-ul roșu clipește la sfârșit (ați putea compara cu shutdown -H pentru a vedea). Rețineți că scopul principal al shutdown este de a opri (opri) funcționarea sistemului de operare.

Așa că puteți folosi oricare dintre forme.


1. Aceasta este de fapt de la Raspbian jessie și vine cu systemd; este ușor diferită de oprirea din Raspbian wheezy (răspunsul lui Greenonline îl citează), ceea ce reprezintă un exemplu a ceea ce menționez în paragraful următor despre diferite implementări care îndeplinesc aceeași specificație. Procesul de închidere face parte de fapt din sistemul init, , care este SysV pe wheezy și systemd pe jessie.

otah007

Eu prefer

sudo halt

Nu-mi amintesc de ce am ales acest lucru, dar, indiferent de motiv, alte comenzi cauzează probleme. Aceasta funcționează perfect. Pentru a reporni:

sudo restart

Comentarii

  • Dacă efectuați doar o halt it ar putea cauza pierderea de date. O practică mult mai bună ar fi sudo sync;sync;halt, , deoarece aceasta sincronizează stocarea datelor (de exemplu, discurile dure, cardul SD), cu orice date nescrise din memoria cache aflate încă în memorie, înainte de oprirea sistemului. –  > Por Greenonline.
  • @Greenonline, dacă efectuați o halt de la runlevel 0 sau 6, , ar putea cauza pierderi de date. La orice alt runlevel, este echivalent cu shutdown -h now. –  > Por Mark.
  • De ce utilizatorii au tendința de a ignora existența comenzii „init” pe sistemele de operare de tip unix? init 0 pentru a opri, init 6 pentru a reporni –  > Por rkosegi.
  • @Greenonline, @Mark, De acum încolo voi folosi shutdown -h now, , nu mi-am dat seama halt era periculos! –  > Por otah007.