Ubuntu13.10がインストールされたコンピューターを持っています。ユーザー(たとえばWalesa
)は、特権ファイルマネージャーを使用して、etc
フォルダーとそのすべてのサブフォルダーの所有権をroot
からWelesa
に変更しました。 Sudo
が無効にされたので、彼はそれが再び有効になることを期待して再起動しました。ただし、セキュリティでは、「etc/profileの所有者はrootではありません」というユーザー名とパスワードを入力した後のログインは許可されていません。
ただし、I have no name!@Walesa
を使用したコマンドラインログインは可能です。このコマンドラインを使用して、etc
とそのすべてのサブフォルダーの所有権をroot
に復元する方法はありますか?
実行:
Sudo chown -R root.root /etc
コマンドラインで/etc
とその下のすべてを所有者root
とグループroot
に設定します
しかし、私のシステム(Ubuntu 12.04)では、/etc
の下のすべてがグループroot
にあるわけではありません。次のリストが役立つ場合があります(Sudo find /etc ! -gid 0 -ls | cut -c 29-
で生成):
root dovecot 5348 Apr 8 2012 /etc/dovecot/dovecot-sql.conf.ext
root dovecot 782 Apr 8 2012 /etc/dovecot/dovecot-dict-sql.conf.ext
root dovecot 410 Apr 8 2012 /etc/dovecot/dovecot-db.conf.ext
root shadow 2009 Dec 23 16:10 /etc/shadow
root lp 4096 Mar 12 19:38 /etc/cups
root lp 540 Mar 12 19:38 /etc/cups/subscriptions.conf
root lp 108 Sep 1 2012 /etc/cups/classes.conf
root lp 4096 Oct 8 2012 /etc/cups/ppd
root lp 2751 Mar 12 07:38 /etc/cups/printers.conf
root lp 2751 Mar 11 21:06 /etc/cups/printers.conf.O
root lp 108 Jun 6 2012 /etc/cups/classes.conf.O
root lp 540 Mar 12 19:24 /etc/cups/subscriptions.conf.O
root lp 4096 Mar 28 2012 /etc/cups/ssl
root sasl 12288 Jun 6 2012 /etc/sasldb2
root daemon 144 Oct 25 2011 /etc/at.deny
root dialout 66 Oct 31 2012 /etc/wvdial.conf
root lightdm 0 Apr 21 2012 /etc/mtab.fuselock
root shadow 981 Feb 19 23:38 /etc/gshadow
root dovecot 1306 Jun 6 2012 /etc/ssl/certs/dovecot.pem
root ssl-cert 4096 Jun 6 2012 /etc/ssl/private
root dovecot 1704 Jun 6 2012 /etc/ssl/private/dovecot.pem
root ssl-cert 1704 Apr 21 2012 /etc/ssl/private/ssl-cert-snakeoil.key
root Fuse 216 Oct 18 2011 /etc/Fuse.conf
root dip 4096 Oct 31 2012 /etc/ppp/peers
root dip 1093 Mar 28 2012 /etc/ppp/peers/provider
root dip 4096 Mar 28 2012 /etc/chatscripts
root dip 656 Mar 28 2012 /etc/chatscripts/provider
/etc/passwd
を変更できるため、rootアカウントのパスワード検証を削除できます。 /etc/passwd
を編集して、行を変更します
root:x:0:0:root:/root:/bin/sh
に
root::0:0:root:/root:/bin/sh
(つまり、2番目のコロンで区切られたフィールドは空である必要があります)。これで、su
を実行して、パスワードを入力せずにrootになることができます。 (これはUbuntuで機能すると思いますが、空のパスワードが無効になっている場合は、代わりに2番目のフィールドにaaxSuH/.jTvGs
を入力して、パスワードchangeme
を使用できます。)
実行して権限を修復する
cd /etc
chown -R root:root /etc
chgrp shadow shadow gshadow
そして、さらに多くのchgrp
コマンド— Anthonのリスト は良いスタートです。
それが終わったら、Sudo
を通常どおり使用できる別の端末を確認します。
次に、rootのパスワードを無効に戻すか、/etc/shadow
のパスワードに戻します。/etc/password
を編集し、2番目のフィールドとしてx
(または*
)を入力します。
最後に、ワレサに厄介なメールを送信し、そのようなスタントを引っ張らないように彼に伝えます。それは、目を閉じて空中にナイフを投げて、ささくれを治すのにちょうどよく落ちることを期待するのと同じです。
/ etc内のすべてのファイルをuser:userに変更し、変更したらroot:rootに戻しました。ユーザーをスーパーユーザーに変更する必要があります:su
次に、スーパーユーザーの資格情報を入力しますアカウント。
スーパーユーザーになったら、chown -R root:root /etc
そしてあなたは戻ってきました
上記のAnthonの回答のおかげで、ログインの問題は解決されました。
古いkubuntu12.04の代替CDを見つけ、レスキューシェルに入りました。
Sudo chown -R root.root /etc
実行される可能性があります。その後、ログインでき、すべてが完璧に見えました
しかし、Sudoはこのエラーでは機能しませんでした:
/etc/sudoers is world writable
no valid sudoers sources found, quitting...
unable to initialise policy plug-in
私はエラーを見つけて、 this thread を見つけました、このコマンド:
pkexec visudo
奇妙に解決されたSudoprobelm、エラー/etc/sudoers is world writable
持続する(ただし干渉しない)。 wierdly手動で何も変更しなかったと思うので(または、そうであれば、保存を避けようとしました)。
次に、同じスレッドで、これら:
chmod u=rwx,g=rx,o=rx /etc/sudoers.d/
chmod u=r,g=r,o= /etc/sudoers.d/*
sudoの永続的なエラーを削除しました。それでも問題がある可能性があります(おそらく深刻ではありません)。