誤って自分自身を sudoers から削除してしまいました。どうすれば修正できますか?

誤って自分自身を sudoers から削除してしまいました。どうすれば修正できますか?

私には管理者アカウントが 1 つありますが、最近、誤って自分自身を 1 つのグループ (usermod -Gなし-a) に追加してしまいました。

つまり、私はもうsudoersファイルにはいません。しかし、Ubuntuではデフォルトでrootにログインすることはできません。リセット起動プロセス中に root のパスワードを入力できますか?

答え1

ルートパスワードをリセットする必要はありません(厳密に言うと、Ubuntuのルートは持っているパスワードを入力します。次の操作を行います。

  • PCを再起動してください

  • GrubのOS選択画面で、「Ubuntu xxxx -リカバリモード

  • これで、root 権限を持つコンソールができました。ユーザーをsudoグループに再度追加します。

      usermod -a -G sudo youruser
    

シェルは、ファイルシステムが読み取り専用でマウントされているため実行できないと応答する場合があります。ファイルシステムを読み取り/書き込みで再マウントするには、次の手順を実行します。mount -o remount,rw /

  • sudo にはこれで十分です。ただし、他のデフォルトの管理グループにも再度追加することをお勧めします。再起動して通常どおりログオンし、GUI を使用できます。

Menu > Administration > Users and Groups > Advanced Settings > User PrivilegesまたはAccount Type (Change...) > Administrative

  • または、次のコマンドを使用します:

      sudo usermod -a -G adm,cdrom,plugdev,lpadmin,sambashare youruser
    

ノート:

  • このsudoグループは、Ubuntu 12.04 より前のグループでしたadmin。それより古いバージョンを使用している場合は、上記のコマンドでグループsudoをグループに置き換えてください。admin
  • Ubuntu 20.04以降、このfuseグループは存在しなくなりました。このグループでは、一般ユーザーが を/dev/fuse使ってアクセスしfusemount、FUSEファイルシステムをマウントすることができました。しかし、Debian 8以降 /dev/fuseデフォルトではすでに世界書き込み可能になっています。

重要な注意点: 「管理者」ロールと見なされるグループのデフォルト セットは、時間の経過とともに変化します。一部のグループは廃止されたり、無関係になったり ( や などtape) floppy、削除、名前変更、再編成されたり、関連パッケージがインストールされたときにのみシステムに作成される ( sambasharevirtualboxwww_data) などです。そのため、数年後にはadmcdrom、 はlpadmin存在しない可能性があります (つまり、もし彼らはまだそうしています!

さらに、現在ファイルシステムベースの権限にグループを使用している一部の機能は、udevPAM、AppArmor、SELinux などの別のアクセス権限メカニズムに変更される可能性があります。

したがって、グループの最新リストを取得する唯一の方法は、現在のシステムを確認することです。GUI を使用して新しい一時的な管理者ユーザーを作成するか、VM に新規インストールして、ユーザーがデフォルトでどのグループに割り当てられているかを確認します。

関連情報