Ubuntu one remoteは、シャットダウンにSudo -S -p '' halt
を使用し、最後まで機能しません。メッセージでモニターをオンのままにする
今停止します
[22225.11163]停止
Sudo -S -p " halt
とSudo shutdown now
の違いは何ですか?
この場合、Sudo
の-S
および-p
スイッチは重要ではありません。それぞれ、彼らが行うことはそれぞれです。
-S
スイッチにより、Sudo
がSTDINからパスワードを読み取ります。これにより、たとえば、パスワードをSudo
からecho
またはcat
にパイプすることができます。
-p
スイッチを使用すると、デフォルトのパスワードプロンプトをオーバーライドして、カスタムパスワードプロンプトを使用するか、まったく使用しないことができます。
重要な違いは、Sudo
によって発行される2つのコマンドにあります。
halt
コマンドは、-p
スイッチなしで呼び出された場合、単にOSを停止し、すべてのCPUを停止します。システムが完全に停止したら、ユーザーは手動でコンピューターの電源ボタンを安全に押すことができます。
poweroff
、shutdown -h now
、およびhalt -p
コマンドはすべて、halt
単独と同じことを行いますが、ACPIコマンドを追加で送信して、電源ユニットに主電源を切断します。これにより、コンピューターの電源ボタンを物理的に押す必要がなくなります。
halt
はshutdown
ではなく、異なるコマンドです。前者は、-p
オプションが使用されない限り、電源をオフにしません。
マニュアルから(man halt
):"-p、--poweroff:代わりにpoweroffとして動作するようにhaltコマンドに指示します。"
そして、あなたの場合、-p
はnotでhalt
commandで使用されていたため、コンピューターはnotで電源がオフになりました。
この-pとSudo
の-pを混同しないでください。別のコマンドの別のパラメーターです。 man Sudo
から:
-S
-S(stdin)オプションを使用すると、Sudoは端末デバイスではなく標準入力からパスワードを読み取ります。パスワードの後に改行文字が続く必要があります。-p Prompt
-p(プロンプト)オプションを使用すると、デフォルトのパスワードプロンプトを上書きして、カスタムパスワードプロンプトを使用できます。あなたの場合、Prompt
は空です(パスワードを要求するときにSudoにメッセージが表示されません)。-SはSudoにrootパスワードvi stdinを受け入れさせます(したがって、パスワードは入力せずにパイプとリダイレクトを使用して提供できます)
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
ユーザーの意図に関しては、haltコマンドとシャットダウンの間に違いはありません。わずかな違いは、停止時には電源ボタンを押してシステムをシャットダウンする必要がありますが、シャットダウンコマンドでは、システムをオフにするように電源ユニットに信号を送信するようにACPI(Advanced Configuration Power Interface)に自動的に指示します。