私には管理者アカウントが 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
、削除、名前変更、再編成されたり、関連パッケージがインストールされたときにのみシステムに作成される ( sambashare
、virtualbox
、www_data
) などです。そのため、数年後にはadm
、cdrom
、 はlpadmin
存在しない可能性があります (つまり、もし彼らはまだそうしています!
さらに、現在ファイルシステムベースの権限にグループを使用している一部の機能は、udev
PAM、AppArmor、SELinux などの別のアクセス権限メカニズムに変更される可能性があります。
したがって、グループの最新リストを取得する唯一の方法は、現在のシステムを確認することです。GUI を使用して新しい一時的な管理者ユーザーを作成するか、VM に新規インストールして、ユーザーがデフォルトでどのグループに割り当てられているかを確認します。