カテゴリー : Linux

Ubuntu 12.04 server グループに追加したらadmin権限の喪失?

サーバを自在に操れるように、そう、ウィザードのようになりたい、とゲーム感覚でやらないとハードルが多いわ、時間は掛るわでとてもサーバ管理者を名乗れるまでの道のりを進む事はできないと感じるこの頃です。

環境はWindows PCにネットワークが2本、一方は社内Windows Server、もう一方はUbuntu 12.04 serverに接続、Windows PCから専らSSHでUbuntu serverを操作しています。このブログでもサーバ操作について記事をいくつか上げてますが、未だに社内をLinux serverを中心としたWidowsネットワーク環境に切り替える事ができません… orz。

DNS、DHCP、MySQL、Apache2、PHP、proFTPと来てLDAPに取り掛っているところで発生しました。LDAPをブラウザから操作できるphpLDAPadminを、Windows PCからFTPでアップロードしようと、自分のユーザーネームをwww-dataグループに加えたところ、ログアウト後の今日になるとsudoが利用できなくなったのです。

どうやらadmin権限を失ってしまったようです。復旧は以下の通り操作してひとまず落ち着いたので、腑に落ちない点もあることから記事にしておこうかと。

リカバリー操作

  1. Ubuntu 12.04 serverをrecovery modeで起動
  2. Recovery Menuからnetworkを選択
    /をread/writeモードでリマウントする
  3. Recovery Menuからrootを選択
  4. adminグループを追加
    # groupadd admin
    何故かこのグループがなかったので追加した
  5. adminグループに自分のユーザーアカウントを追加
    # gpasswd -a username admin
  6. exitしてRecovery Menu のresume選択

てな具合です。

www-dataグループに追加する際、

# usermod -G www-data username
でなくて
# groupadd -G www-data username

としたような記憶があります。Ubuntuさんのご機嫌を損ねるような何かがあったようです。それにadminグループも登録されてなかったようですし。

しかしグループに関するコマンドが多くて、何をどう使っていいやら困る事がしばしばです。例えば、ユーザーをsudoを利用できるようにするには、

# adduser username admin

でもOKとか。試していませんが。 これが操作として標準のようです。

まだまだ半人前、年だけ取ってしまいました。オソマツサマ m(_ _)m

追記:パスワード失念時の対処

リカバリーモードで起動すれば、パスワードを忘れてしまった場合の対処もできます。上記リカバリーモードで起動後、

# passwd ユーザー名

とすれば、パスワードを新しく書き換えられます。

(120725)

追記:usermodのオプション指定

# usermod -aG グループ名 ユーザー名

-G指定は、指定した複数グループとユーザー名グループ以外のグループを入れ替えてしまった。-aGを指定したところ、希望通りグループに追加された。

(120725)

 

 

Ubuntu server 11.10 USBメモリのマウント

Linux に慣れる必要があるので、新しくカテゴリーを設けて備忘録を残す事にした。で、USBメモリの利用で躓いたので最初のお題となった。

Ubuntu server 11.10 の導入を検討して、頻繁に再インストールの繰返しをしている。そしてその度設定ファイルを書き直すのもばからしいので、使っていないUSBメモリを利用する事にした。ところで、外部記憶装置を Linux のファイルシステムで利用する方法について、すっかり頭の中から抜け落ちている。そこで検索しながら記憶を辿ると、

「デバイスをファイルシステムのディレクトリにマウントすればいい」

事が分かった。PC の USB に差し込んだら、

$sudo parted -l
  :
Model:  USB Flash Memory (scsi)
Disk /dev/sdb: 62.4MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start  End    Size   Type    File system Flags
1      16.4KB 62.4MB 62.4MB primary fat 32      boot

と表示された。そこで、マウントポイントを「/media/usbdisk」にしてマウントする。

$sudo mkdir /media/usbdisk
$sudo mount -t vfat /dev/sdb /media/usbdisk
[ 4007.348381] FAT-fs (sdb): invalid media value(0x00)
mount: wrong fs type, bad option, …
       :

とエラーが表示され、検索してみるも良く分からない。多分、記憶装置のメディアディスクリプタ-の値が 0x00 だとアクセスできないのだろう、と勝手に解釈しフォーマットして使う事にした。

$sudo mkdosfs -F 32 /dev/sdb
Device partition expected, not making filesystem on
entire device '/dev/sdb' (use -I to overdrive)

とエラーになった。それなら別のコマンドで

$sudo mkfs.vat /dev/sdb

も同様の結果だった。「-I」オプションを使ってみろ、と指示があるので

$sudo mkfs.vfat -I /dev/sdb

とすると、何事もなく終了。一度引き抜いて再度差し込み、マウントしてみると使えるようになった。

良く分からない事だらけだ。2012年、追い追い理解を進めて行こうと思う年の始めでした。