コマンドを実行すると、次のようなエラーが発生しました。
このコマンドを実行するには、rootになる必要があります。
rootとは何ですか、どうすればなれるのですか。
rootとは、すべてのLinuxシステムに存在するユーザーです。
正確には、スーパーユーザと呼ばれる特別なユーザです。
rootは、あらゆることを行う特権を持つ唯一のユーザーです。
作成できる2種類のユーザーアカウント(管理者ユーザーと制限付きユーザー)とは対照的に、デフォルトで存在し、名前を変更したり削除したりすることができません。通常、root
としてのログインはセキュリティ上の理由から無効化されています。
管理者ユーザはあなたのマシンで最も強力なアカウントであり、何でもできると思うかもしれませんが、それは間違いです。単純化すると、一般的に管理者ユーザは制限付きユーザとほぼ同等の権限を持っています。また、自分のホームフォルダーへの書き込み権限しかなく、システム全体の設定を変更することもできません。
しかし、adminユーザーには、1つだけ特別で重要な特権があります。
Ubuntuではデフォルトでrootでのログインが禁止されているため、システム全体の重要な管理作業を行えるようにするためには、rootになるための別の方法が必要です。
**sudo`コマンドを使用します。
管理者ユーザーアカウントは、sudo
コマンドを使用して、root/root権限で1つのコマンドを実行する権限を持っています。
方法は簡単です。実行するために特別な昇格権限が必要なすべてのターミナルコマンドの前に sudo
を書いて実行するだけです。このようにプロンプトが表示され、パスワードが要求されます (私のユーザ名は bytecommander
です)。
[sudo] password for bytecommander:
デフォルトでは存在しない)rootユーザーのパスワードではなく、自分の管理者アカウントのパスワードを入力しなければならないことに注意してください。また、パスワードの問い合わせは15分に一度だけ行われるように設定されているので、2回目の sudo
の起動ですぐにコマンドが実行されます。しかし、ターミナルウィンドウを閉じると、sudoチケットもリセットされます。さらに、パスワードを入力しても何も表示されず、入力された文字を象徴する星印 (*) も表示されないことも知っておく必要があります。ただ入力して、Enter を押すだけです。
sudoをどのように、どのような場合に使うか、例を挙げてみましょう。
adapt-getは、ソフトウェアの更新や新しいパッケージのインストールを実行するためのコマンドラインツールです。これはシステム全体に影響を与えるので、root 権限が必要です。したがって、
apt-getを起動する必要があるときはいつでも
sudo` を使って起動しなければなりません。
sudo apt-get install vlc
は、たとえば有名なメディアプレイヤーである VLC をインストールします (パスワードを要求された後、現在のターミナルウィンドウで過去 15 分以内にパスワードを入力しなかった場合)。sudoを使わずに通常のユーザーでこのコマンドを実行すると(apt-get install vlc
のみ)、次のようなエラーになることがあります。
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied) ロックファイルを開けませんでした。 E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
** 端末コマンドではなく、グラフィカルなアプリケーションで進めるにはどうしたらよいですか?
時には、グラフィカルアプリケーション(例えばファイルマネージャ、特別なエディタ、追加の調整ツールなど)をroot権限で実行する必要がある場合があります。この場合、sudo
は使わないでください。これはターミナルコマンドのためだけです。ここで説明したくないいくつかの理由により、これは深刻な問題につながる可能性があります (さらなる説明は この回答 を参照してください)...
そこで、グラフィカルなアプリケーションのために、より安全なGUIアプリケーションを実行し、ターミナルウィンドウの代わりにグラフィカルなポップアップウィンドウを提供してパスワードを要求する他のコマンドがあります。それらは主に gksu` と gksudo` です。専門家の間では、どちらが良いかという議論がありますが、通常のUbuntuユーザーにとっては、どちらも等しく利用することができます。構文は sudo
と同じです。例えば、ファイルマネージャ Nautilus
を root 権限で実行するには、以下のようにします。
gksudo nautilus
rootは、LinuxなどのUnix系OSで、デフォルトですべてのコマンドとファイルにアクセスできるユーザー名またはアカウントです。ルートアカウント、ルートユーザー、スーパーユーザーとも呼ばれます。
そのため、コマンドを実行するためには、rootユーザーとしてログインしなければならない場合があります。心配しないでください、簡単です。
Ubuntuのデフォルトでは、rootアカウントのパスワードはロックされています。つまり、rootで直接ログインすることも、suコマンドでrootユーザーになることもできません。しかし、rootアカウントは物理的に存在するので、rootレベルの特権を持つプログラムを実行することは可能です。そこで
sudo
これは、許可されたユーザが root パスワードを知らなくても root として特定のプログラムを実行できるようにするものです。
つまり、ターミナルでは root 権限を必要とするコマンドには sudo を使うべきです。root として実行する必要のあるすべてのコマンドの前に sudo を付けるだけです。sudo を実行すると、パスワードの入力を要求されます。sudo がパスワードを要求するときは、root アカウントのパスワードではなく、あなたのユーザーパスワードを要求することを覚えておいてください。
sudo を使用する場合、パスワードはデフォルトで 15 分間保存されます。sudoを使用する場合、パスワードはデフォルトで15分間保存されます。その後、再度パスワードを入力する必要があります。
sudo を使用する場合、パスワードはデフォルトで 15 分間保存され、それ以降は再びパスワードを入力する必要があります。パスワードは、入力中に画面に表示されることはなく、星の列 (**) でさえもありません。キー入力のたびに入力されています
詳細については、https://help.ubuntu.com/community/RootSudo を参照してください。