web-dev-qa-db-ja.com

「停止」と「今すぐシャットダウン」の違いは?

Ubuntu one remoteは、シャットダウンにSudo -S -p '' haltを使用し、最後まで機能しません。メッセージでモニターをオンのままにする

今停止します

[22225.11163]停止

Sudo -S -p " haltSudo shutdown nowの違いは何ですか?

30
nkvnkv

この場合、Sudo-Sおよび-pスイッチは重要ではありません。それぞれ、彼らが行うことはそれぞれです。

-Sスイッチにより、SudoがSTDINからパスワードを読み取ります。これにより、たとえば、パスワードをSudoからechoまたはcatにパイプすることができます。

-pスイッチを使用すると、デフォルトのパスワードプロンプトをオーバーライドして、カスタムパスワードプロンプトを使用するか、まったく使用しないことができます。


重要な違いは、Sudoによって発行される2つのコマンドにあります。

haltコマンドは、-pスイッチなしで呼び出された場合、単にOSを停止し、すべてのCPUを停止します。システムが完全に停止したら、ユーザーは手動でコンピューターの電源ボタンを安全に押すことができます。

poweroffshutdown -h now、およびhalt -pコマンドはすべて、halt単独と同じことを行いますが、ACPIコマンドを追加で送信して、電源ユニットに主電源を切断します。これにより、コンピューターの電源ボタンを物理的に押す必要がなくなります。

41
SirCharlo

haltshutdownではなく、異なるコマンドです。前者は、-pオプションが使用されない限り、電源をオフにしません。

マニュアルから(man halt):"-p、--poweroff:代わりにpoweroffとして動作するようにhaltコマンドに指示します。"

そして、あなたの場合、-pnothaltcommandで使用されていたため、コンピューターはnotで電源がオフになりました。

この-pとSudoの-​​pを混同しないでください。別のコマンドの別のパラメーターです。 man Sudoから:

  • -S-S(stdin)オプションを使用すると、Sudoは端末デバイスではなく標準入力からパスワードを読み取ります。パスワードの後に​​改行文字が続く必要があります。
  • -p Prompt-p(プロンプト)オプションを使用すると、デフォルトのパスワードプロンプトを上書きして、カスタムパスワードプロンプトを使用できます。

あなたの場合、Promptは空です(パスワードを要求するときにSudoにメッセージが表示されません)。-SはSudoにrootパスワードvi stdinを受け入れさせます(したがって、パスワードは入力せずにパイプとリダイレクトを使用して提供できます)

11
MestreLion

nix SEサイトshutdown vs haltの問題について良い答えがあります: HaltコマンドとShutdownコマンドの違いは何ですか?

Sudo -S -p ''部分については、これにより、端末でパスワードを要求することに関するメッセージが削除されます(ただし、まだパスワードを入力しています)

たとえば、Sudo <some_command>を実行すると、このコマンドを実行する前にこの出力が得られます。

[Sudo]パスワード:

ただし、Sudo -S -p '' <some_command>を実行すると、そのメッセージは非表示になります。

実際、引用符で囲んだメッセージは、前のメッセージを置き換えています。

先に進み、以下を試して、違いを確認してください。

 Sudo -S -p 'Hey, I am a custom message.' ls
7
Dan

ユーザーの意図に関しては、haltコマンドとシャットダウンの間に違いはありません。わずかな違いは、停止時には電源ボタンを押してシステムをシャットダウンする必要がありますが、シャットダウンコマンドでは、システムをオフにするように電源ユニットに信号を送信するようにACPI(Advanced Configuration Power Interface)に自動的に指示します。

0
Unaowo Brandy