it-swarm-ja.com

Sudoコマンドなしで所有権を変更する

Ubuntuサーバーをセットアップしていて、FTPクライアントが/etc/フォルダーにアクセスできるようにしたかったのです。そこで、chownコマンドを使用して、アカウントで使用できるようにしました。ただし、これによりSudoの所有権が変更され、破損しました。所有者がrootでないため、コマンドをSudoとして実行できません。また、Sudoを使用する必要があるため、所有者を変更できません。

Rootとしてリカバリモードで起動し、chown -R root /etcchown -R 0 /etcを実行しようとしましたが、どちらも機能しませんでした。

Ubuntuを再インストールせずにこれを修正する方法はありますか?

5
Thegluestickman

再起動し、右Shiftキーを押したままにして、grub2ブートメニューを表示します。次に、次の手順に従ってシングルユーザーモードに入ります。

grubからシングルユーザーモードで起動するにはどうすればよいですか?

シングルユーザーモードでは、自動的にrootユーザーになるため、ファイルのアクセス許可を修正できます。

一般的に言って、変更されたのがファイルの所有権だけの場合。実行できます:

chown -R root:root /etc

これにより、所有権とグループがデフォルトのルートに戻ります。

ここにubuntuサーバー12.04LTSがあり、/ etcの下に異なるグループ所有権を持つファイル/ディレクトリがいくつかあります。これを除いて、すべてのファイルはルートによって所有されています。グループの所有権が異なるファイルは次のとおりです。

/etc:
-rw-r----- 1 root daemon   144 Oct 26  2011 at.deny
drwxr-s--- 2 root dip     4096 Aug 22 12:01 chatscripts
-rw-r----- 1 root shadow   697 Oct 31 12:58 gshadow
-rw-r----- 1 root shadow  1569 Oct 31 13:00 shadow

/etc/chatscripts:
-rw-r----- 1 root dip  656 Aug 22 12:01 provider

したがって、最初にchownを実行した後、これらのファイルに対してchgrpコマンドを実行できます。次に、すべてを元の状態に戻す必要があります。平均的なユーザーは10分以上かかることはありません。

e.g. 
  chgrp shadow /etc/shadow

ああ、最後の一歩。変更が完了したら、再起動します。

/> reboot
3
Matt H

Ubuntu-cdを使用してコンピューターを起動し、問題のファイルシステムをマウントして、これらのファイルのアクセス許可と所有権を手動で修正できます。

しかし、/ etcには、修正が必要なファイルがたくさん含まれています。時間がかかる場合があります。

1
Bonsi Scott

それを修正する必要がある場合は、最初にアクセス許可を確認してください。それらはすべてroot:rootではないかもしれません。最悪の場合、そうではなく、他の何かが機能しない理由を理解しようとした後、これをかなり後で発見します。

同じバージョンのUbuntuをどこかにインストールします。すべての権限を確認してください。

それらがすべてroot:rootの場合は、ルートプロンプトを取得します。 liveCDを起動するか、何らかの方法でシングルユーザーモードで起動します。 (例:init =/bin/bashを使用したLILO、またはshift-GRUB)。/etcを含むファイルシステムをマウントし、ファイルを適切な権限にchownします。

すべてのファイルがroot:rootでない場合は、値を設定するスクリプトを作成することをお勧めします(以前に作成したものと同じインストールを使用して、これらの値が何であるかを調べます)。

これがNiceの新規インストールである場合は、他のインストールからfreshなどをコピーしてみてください(古い/ etcを別の場所に移動します。たとえば、etc.backupにmvして、新しいインストールをコピーします。ペンドライブ。これを行う場合は、パスワードファイルも上書きするため、どのパスワードが設定されているかを確認する必要があります)

ただし、これがまだセットアップ中の比較的新しいインストールである場合は、再インストールするだけです。

最も速く、最も安全ですが、教育的ではありません。

1
Hennes