Help us understand the problem. What is going on with this article?

さくらVPS(Ubuntu16.02)で操作ミスにより管理者権限をもつユーザーが皆無になって詰みそうになった話

More than 3 years have passed since last update.

環境

・Ubuntu16.02
・さくらVPS

状況

タイトルの通り、操作ミスにより管理者権限を持つユーザが皆無になってしまいました。sudo実行ができず、しまいにはsshでリモートアクセスもできなくなってしまい、頭が真っ白の状態です。

操作ミスの内容

usermod -G sftp adminUser

のようなコマンドでuserのグループを上書きしてしまったことが原因です。
sudoグループの権限が上書き抹消されてしまい、adminUserのsudo権限が失われてしまいました。

困ったこと

シングルユーザーモードで起動すれば、root権限でターミナルを実行できるわけですが、さくらVPSでシングルユーザーモードの起動方法が分かりませんでした。まずGRUBが立ち上がらないので、にっちもさっちもいかない状態が続きました。

なお、CentOSであればさくらの公式サイトで解説があるのですが、Ubuntuはデフォルトではないので、解説なしです。メールにて問い合わせをしましたが、自己責任であり、サポートはしかねます、、という回答でした(当然の対応です(泣))

対処

対処の手順

対処の手順としては以下の流れです。
1)GRUBを起動する
2)Advanced Option for Ubuntuを編集する
3)recovery mode
4)root権限でユーザー権限を変更
5)復活

以下、詳細

1)GRUBを起動する

1-1)さくらVPSのコントロールパネルにアクセス。
1-2)強制再起動
1-3)以下2つのコンソールを両方立ち上げます。
①VNCコンソール(HTML5版)
②シリアルコンソール(β版)
1-4)VNCコンソールの方で、GUIから「再起動」。画面右上の設定からです。
1-5)再起動時にシリアルコンソールを見ていると、GRUBが立ち上がります。こちらで作業をします。(GRUBは一定時間経過すると消えてしまうので早めに下記2-3までの作業をする)

※もっと良い方法があるかもしれません。。。

2)Advanced Option for Ubuntuを編集する

2-1)GRUBを立ち上げる
2-2)「Advanced Option for Ubuntu」にカーソルを合わせる
2-3)キーボードで「e」を押す
2-4)編集画面が現れるので「ro」と書いてある部分を全て「rw」に変更する(私の場合は計6箇所)
2-5)末尾に「linux single init=/bin/sh」を追記
2-6)「Ctrl + X」を押す

▼参考URL
Ubuntu10.04でシングルユーザーモードでログインする方法

3)recovery mode

recovery modeを実行。

4)root権限でユーザ権限を実行

4-1)recovery mode実行後は、VNCコンソールの方を見る
4-2)recovery modeでrootを選択
4-3)画面下部にroot権限でコンソールが立ち上がる
4-4)usermodかgpasswdでユーザーに権限を追加。

▼例

usermod -G adm,dialout,cdrom,plugdev,lpadmin,sudo,<userName>

※2-3〜2−5の作業をしない場合、この段階でエラーが発生します。エラー内容は、「cannot lock /etc/passwd; try again later.」で/etc/passwd/を編集できない状態です。これは、コンソールをreadonlyで起動していることが原因で、2-3〜2−5の処理で書き込み権限を付与しています。

4-4)その後再起動。

5)該当ユーザでアクセスし、sudo実行できることを確かめる。復活!

gano
ブロックチェーン関連のプログラミングしてます
https://www.facebook.com/gano.global
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした