管理者権限でコマンドを実行する必要があります。 rootとしてコマンドを実行する必要があると誰かが言った。どうすればよいですか?
承認された回答:
主な2つのコマンドラインの可能性は次のとおりです。
-
su
を使用する プロンプトが表示されたら、rootパスワードを入力します。 -
sudo
を入力します コマンドの前に入力し、プロンプトが表示されたらパスワードを入力します。
rootとしてシェルコマンドを実行する
sudo(グラフィカルディスプレイを実行していない場合に推奨)
これは、Ubuntu、Linux Mint、(おそらく)Debianなどを含むほとんどのシステムで推奨される方法です。別のルートパスワードがわからない場合は、この方法を使用してください。
Sudoでは、独自のパスワードを入力する必要があります。 (目的は、キーボードを無人にしてロックを解除したままにした場合の損傷を制限し、本当に確実にすることです。 そのコマンドを実行したいのですが、そうではありませんでした。タイプミス。)多くの場合、数分間再度要求しないように構成されているため、複数のsudo
を実行できます。 連続したコマンド。
例:
sudo service apache restart
rootとして複数のコマンドを実行する必要がある場合は、各コマンドの前にsudo
を付けます。 。ルートとしてインタラクティブシェルを実行する方が便利な場合があります。 sudo -i
を使用できます そのために:
$ sudo -i
# command 1
# command 2
...
# exit
sudo -i
の代わりに 、sudo -s
を使用できます 。違いは、-i
re i -s
に対して、環境を適切なデフォルトに初期化します。 設定ファイルを良くも悪くも使用します。
詳細については、sudo Webサイトを参照するか、man sudo
と入力してください。 システム上で。 Sudoは非常に構成可能です。たとえば、特定のユーザーがrootとして特定のコマンドのみを実行できるように構成できます。 sudoers
を読む 詳細については、manページを参照してください。 sudo visudo
を使用する sudoersファイルを編集します。
su
su
コマンドは、ほとんどのUNIXライクなシステムに存在します。そのユーザーのパスワードを知っていれば、別のユーザーとしてコマンドを実行できます。ユーザーを指定せずに実行した場合、su
デフォルトではrootアカウントになります。
例:
su -c 'service apache restart'
実行するコマンドは、-c
を使用して渡す必要があります オプション。コマンドがシェルによって解析されないように引用符が必要であることに注意してください。ただし、su
であるルートシェルにそのまま渡されます。 実行します。
rootとして複数のコマンドを実行するには、対話型シェルを開始する方が便利です。
$ su
# command 1
# command 2
...
# exit
一部のシステムでは、グループ番号0(wheel
と呼ばれる)に属している必要があります )su
を使用する 。 (重要なのは、rootパスワードが誤って誰かに漏洩した場合の被害を制限することです。)
ルートとしてログイン
ルートパスワードが設定されていて、それを所有している場合は、root
と入力するだけです。 ログインプロンプトで、rootパスワードを入力します。非常に注意して、複雑なアプリケーションをrootとして実行しないでください。意図しないことを実行する可能性があります。 rootとして直接ログインすると、主に、ディスク障害やアカウントから自分をロックアウトした場合などの緊急事態で役立ちます。
シングルユーザーモード
シングルユーザーモード、つまりランレベル1でも、root権限が付与されます。これは主に、マルチユーザーの実行レベルで起動できない緊急メンテナンスの状況を対象としています。 single
を渡すと、シングルユーザーモードで起動できます。 またはemergency
カーネルコマンドラインで。シングルユーザーモードで起動することは、システムを通常どおり起動してrootとしてログインすることと同じではないことに注意してください。むしろ、システムは実行レベル1に定義されたサービスのみを開始します。通常、これは、使用可能なシステムを持つために必要なサービスの最小数です。
telinitコマンドtelinit 1
を使用して、シングルユーザーモードにすることもできます。;ただし、このコマンドを実行するには、他の方法でroot権限を取得している必要があります。
多くのシステムでは、シングルユーザーモードで起動すると、ユーザーはパスワードの入力を求めずにルートシェルにアクセスできます。特に、systemd
ベースのシステムでは、この方法で起動すると、rootパスワードの入力を求められます。
その他のプログラム
カリフ
Califeでは、許可されている場合は、自分のパスワードを入力して、別のユーザーとしてコマンドを実行できます。これは、はるかに普及しているsudoに似ています(上記を参照)。 Califeは、sudoよりも軽量ですが、構成も簡単ではありません。
Op
Opを使用すると、rootを含む別のユーザーとしてコマンドを実行できます。これは、任意のコマンドを実行するための本格的なツールではありません。op
と入力します。 続いてニーモニック 特定のコマンドを実行するようにシステム管理者によって構成されます。
スーパー
Superを使用すると、rootを含む別のユーザーとしてコマンドを実行できます。コマンドは、システム管理者によって許可されている必要があります。
rootとしてグラフィカルコマンドを実行する
PolicyKit(GNOMEを使用する場合に推奨)
目的のコマンドの前にコマンドpkexec
を付けるだけです。 。これはほとんどの場合機能しますが、普遍的には機能しないことに注意してください。
man pkexec
を参照してください 詳細については。
KdeSu、KdeSudo(KDEを使用する場合に推奨)
kdesu
およびkdesudo
su
のグラフィカルフロントエンドです およびsudo
それぞれ。それらはあなたが面倒なしでrootとしてXウィンドウプログラムを実行することを可能にします。それらはKDEの一部です。タイプ
kdesu -c 'command --option argument'
ルートパスワードを入力するか、「
」と入力しますkdesudo -c 'command --option argument'
パスワードを入力します(sudo
の実行が許可されている場合 )。 KdeSuで[パスワードを保持する]オプションをオンにすると、ログインセッションごとに1回だけrootパスワードを入力する必要があります。
その他のプログラム
Ktsuss
Ktsuss(「suをシンプルに保つ」)は、suのグラフィカルバージョンです。
Beesu
Beesuは、RedHatベースのオペレーティングシステムでGksuに取って代わったsuコマンドのグラフィカルフロントエンドです。主にRHELとFedora用に開発されました。
廃止されたメソッド
gksu
およびgksudo
gksu
およびgksudo
su
のグラフィカルフロントエンドです およびsudo
それぞれ。それらはあなたが面倒なしでrootとしてXウィンドウプログラムを実行することを可能にします。それらはGnomeの一部です。タイプ
gksu command --option argument
ルートパスワードを入力するか、「
」と入力しますgksudo command --option argument
パスワードを入力します(sudo
の実行が許可されている場合 。
gksu
およびgksudo
廃止されました。それらはGNOMEのPolicyKitに置き換えられ、多くのディストリビューション(Ubuntuなど)はデフォルトでそれらをインストールしなくなりました。それらが利用可能であるか、適切に機能していることに依存するべきではありません。
シェルベースの方法の1つを介して手動で
「シェルコマンドをルートセクションとして実行する」のいずれかの方法を使用します。 DISPLAY
のどちらでもないことを確認する必要があります 環境変数もXAUTHORITY
ルートへの移行中に環境がリセットされます。これには、この質問の範囲外のメソッドの追加構成が必要になる場合があります。
全体として、これは悪い考えです。主な理由は、グラフィカルアプリケーションがrootとして構成ファイルを読み書きし、それらのアプリケーションを通常のユーザーとして再度使用しようとすると、それらのアプリケーションには独自の構成を読み取る権限がないためです。
関連:MacOS –ターミナル起動時にコマンドを実行しますか(macOS)?rootとしてファイルを編集する
ルートとしてファイルを編集するにはどうすればよいですか?