回答:
あなたが何をしているかを正確に知らない限り、そうすることは推奨されないからです。ルートはスーパーユーザーであり、何でもすべてを実行できることを意味します-管理タスクのみを対象としています。毎日のタスクは、全員(またはユーザーの大部分)がルートを使用した場合に悪用されるセキュリティリスクを負う可能性があります。Think Windows-マルウェアとウイルスの問題の99%は、日常業務に管理者アカウントを使用している人が原因です。
例を見てみましょう。
誰かがシステムに侵入し、ディスクを消去するように指示した場合はどうなりますか?あなたは、通常のユーザーとして実行している場合は、ファイルのみ、あなたは削除することができる(はずです)うものです属しあなたに、そして他に誰もいません。たとえば、他の人がコンピューターを使用している場合、どんなに一生懸命努力しても、それらのファイルはまったく変更されません。つまり、システムファイルを変更することはできません。したがって、システムは強固なままで、影響を受けない/感染しません。
ただし、rootとして実行する場合は、ハードドライブを完全に消去し、おそらくハードウェア自体に何らかの損傷を与え、通常はシステムを使用できなくすることができます。修正:コンピューター上でrootとして単一のコマンドを実行できるユーザー(悪意のあるWebサイトまたは電子メールの添付ファイル)は誰でも実行できます。
http://everyjoe.com/technology/explain-why-not-log-on-as-root/を見てください。これは、私が説明したよりもうまく説明できる素晴らしい記事です。
編集:ここに別のものがありますhttp://ihazomgsecurityskillz.blogspot.nl/2010/09/running-as-root.html
EDIT2:を常に使用しsudo command
たり、スーパーユーザーとしてgksu command
実行したりできcommand
ます。どちらもグラフィカルユーティリティとコマンドラインユーティリティで動作します。sudo
ただし、通常はCLIに使用されgksu
、同じことを行うグラフィカルパスワードプロンプトです。
ある程度までは、root
一時的になることができます- 常にrootとして実行し、不安定になるリスクよりもはるかに優れています。
標準のUbuntuでは、root
GDM(グラフィカル)ログインマネージャーからも、テキストコンソール(つまり、Ctrl+ Alt+を押すと表示されるコンソール)からのログインも許可されませんF1。
root
(つまり、管理者)操作を実行するにsudo
は、ターミナル、またはそれに相当するGUIでコマンドを使用する必要があります。これらはパスワードを要求し、要求された特権操作(およびその操作のみ)を実行します。
この動作の理由は、他の人が指摘したように、root
操作の実行は本質的に危険であり、実際にroot
特権を必要とする操作の数が比較的少ないsudo
ことです。このアプローチを使用すると、ほとんどの場合、非特権アカウントで実行されます(つまり、無害です)システムや他のユーザーに)、root
本当に必要なときに力を得るだけです。
例が明確になる場合があります。マシンに新しいサービス(デーモン)をインストールするとします。これは比較的新しいものであり、それについて、およびニーズに合わせて構成する方法について読む必要があります。情報や設定例などを見つけるためにWebを頻繁に閲覧することになります。詳細を尋ねるためにIRCチャットを利用することもできroot
ます。最終的に、2つの操作の特権アクセスのみが必要です。
sudo apt-get install ...
)コンピュータのセキュリティで一般に受け入れられている原則は、操作を実行するために常に最小限の特権レベルを使用することです。-これにより、ソフトウェアのバグやオペレーターのエラーが原因で何か悪いことが起こるリスクが軽減されます。
Ubuntuのデフォルト設定はこの方向に進みます。root
代わりにログインを使用している場合は、root
アカウントからIRC(および場合によっては同時に実行する他のすべての操作)を実行してインターネットをサーフィンし、システムを不必要に脅威にさらすことになります。
更新:コンパイラーの例では、次のように進めます。
通常のユーザーとして SSH経由でノードにログインし、グラフィカルなX11ディスプレイを実行している別のUbuntuまたはGNU / Linuxノードからログインします。必ずSSH経由のX11転送を有効にしてください:
ssh -X myuser@remotemachine.example.org
shell / SSHプロンプトで、次のコマンドを発行します。
sudo /path/to/the/compiler/install/program
これにより、root
特権を使用してコンパイラインストーラが実行され、目の前のグラフィカル表示に(SSH転送を介して)アクセスします。
rootを使用した場合の山ほどの警告とは別に、ログインしてターミナルから以下を実行することでrootログインを有効にできます。
sudo passwd
これにより、最初にパスワードの入力が求められ、次にUNIXパスワードの変更を求められます。入力するパスワードはroot
アカウント用です。
Ubuntuのウィキは警告と落とし穴- Ubuntuの内のルートとのsudoの深さに大きな記事があります。
ここには2つの質問があります。1つは、Ubuntuでルートログインがデフォルトで無効になっている理由です。これは、ここのいくつかの投稿で対処されています。
2番目の質問は、グラフィカルなルートログインが特に軽視されているのはなぜですか?
非グラフィカルルートログインのすべての欠点は、グラフィカルルートログインにも当てはまります。ただし、グラフィカルにログインすると、非グラフィカルにログインする場合よりもはるかに複雑な方法で動作するはるかに多くのプログラムを実行します。グラフィカルユーザーインターフェイス全体と、GUIを効果的に使用するために必要なすべてのグラフィカルプログラムは、rootとして実行されます。それらのいずれかに小さなセキュリティ脆弱性があると、誰かがシステムを完全に制御できるようになります。
Ubuntuでrootとしてログインすることはお勧めできませんが、セキュリティコミュニティでは、これが一般的に悪い習慣であるというコンセンサスはありません。ただし、グラフィカルルートログインは単に悪い習慣であり、ほとんどすべてのオペレーティングシステムは、それらを段階的に廃止するか、強く推奨します。
それほどではありませんが、グラフィカルログインに非ルートユーザー(特に、sudoまたはPolicyKitでルートとして操作を実行できるユーザー)がいると、リスクが生じます。しかし、グラフィカル環境のすべてが実際に無制限の機能を持つルートとして実行されなければならない場合よりもはるかに制御されています。それでも、セキュリティが最重要である状況では、通常、グラフィカルインターフェイスを完全に廃止することをお勧めします。そのため、Ubuntu ServerにはデフォルトでGUIが付属しておらず、公式にはGUIのインストールを推奨していません(ただし、そうすることはサポートされています) 。
Windowsの世界では、グラフィカルユーザーインターフェイスを本質的に排除する方法でWindows Serverをインストールできるようになりました(技術的には、一部の要素は残りますが、非常に削除されており、任意のグラフィカルプログラムを実行できません)。これは同じ推論に基づいています。
ルートログインを有効にすることにした場合でも、グラフィカルにルートとしてログインしないでください。ルートログインを有効にすると、セキュリティリスクがわずかに高くなる可能性があります。グラフィカル環境全体をルートとして実行すると、非常に高いリスクにさらされます。
さらに、gksu / gksudo / kdesudoでrootとして実行されるように設計されたグラフィカル管理ツールを除き、ほとんどのグラフィカルプログラムはrootとして実行することを意図していません。これらはこのモードで広範囲にテストされていないため、失敗するか、不規則に動作する可能性があります(これはrootとして実行しているため、特に悪いことです)。
最後に、さらにいくつかのグラフィカルな管理ツール、などのusers-admin
実行した場合、彼らは通常のユーザーによって実行されることを期待してにPolicyKitを使って(今まで実際にrootとして実行せずに)ルートなどのアクションを実行するために、rootとして失敗します。
ターミナルを開きます(Ctrl+ Alt+ Tまたはダッシュホーム>その他のアプリ>インストール済み(展開)>ターミナル)。
ルートアカウントを有効にするには
端末タイプまたは貼り付けsudo passwd root
。通常のログインパスワードを入力します(要求された場合)root
。新しいパスワードの入力と確認を求められます。
ルートとそのパスワードの入力を許可する新しいログインプロンプトを追加するには
端末タイプまたは貼り付け。gksudo gedit /etc/lightdm/lightdm.conf
。これにより、ログイン画面の設定ファイルを編集できるグラフィカルテキストエディタウィンドウが開きます。
greeter-show-manual-login=true
ファイルの最後に行を追加します。
ファイルは次のようになります。
[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
greeter-show-manual-login=true
lightdm.conf
ファイルを保存して、geditを終了します。
Ubuntu 12.04を再起動すると、新しい「ログイン」ウィンドウが表示され(以前の「その他」ウィンドウが置き換えられます)、ユーザー名とパスワードの入力が可能になります。root
ユーザー名を入力してから、ルートアカウントに割り当てたパスワードを入力します。
これが、root
アクセスを必要とする/望んでいる他の人に役立つことを願っています。
ルートユーザーと管理者(Windowsの場合)は、コンピューターの神に相当するからです。そのユーザーは、ファイルのアクセス許可からファイルシステム全体の消去まで、あらゆるものを調整できます。平均的なホームユーザーが管理者として実行することは非常に一般的です(その名前または最初の起動時に設定された別の名前のいずれかで)。そのユーザーとして実行されるプログラムはシステム全体にわたるため、危険になります。
管理者権限を制御できないため、ウイルス/マルウェア、さらには自己破壊的な問題が発生します。このため、Ubuntuを含む多くのディストリビューションは、追加のステップ(「ここで行った変更はスコープ内のより大きな変更である」と主張するのに役立つ多少認知的なステップ)によって、ハイパワーへの移行を制限しました。
rootとして直接ログインすることはできませんが(他の人がすでに説明している理由により)、GUIアプリケーションをrootとして実行できます。たとえば、システム→管理→Synaptic Package Managerは、rootとして実行されるグラフィカルアプリケーションです。
アプリケーションをルート(テキストアプリケーションまたはGUIアプリケーション)として実行するには、次のコマンドのいずれかを使用します。
sudo name-of-the-application
gksu name-of-the-application
それらはほとんど同じです。主な違いは、最初は端末でパスワードを要求し、2番目はグラフィカルダイアログウィンドウを使用することです。
追記:UbuntuはGUIユーザーがrootとしてログインすることを許可していません。これは、UbuntuがGUIアプリケーション(nautilusなど)で重要なファイルを誤って削除または削除することを防ぐためです。
CLIユーザーインターフェイスのみで、ミスのリスクを減らすことができます。しかし以前は、Ubuntuがrootのランダムなパスワードを作成するため、CLIモードでもrootでログインすることはできません。ルート管理タスクは、コマンドsudoまたはgksuでユーザーのパスワードを使用することによってのみ実行できます。
Debianルールに基づいています。