Linuxゲリラ戦記

俺はこの世界では必要とされない存在だったんだ。

左を向いているペンギンみたいなキャラクター、ナックス

19.Linuxの一般ユーザーを削除する。userdelコマンド

デビー君「あれ?そう言えば前回勢いでポチのアカウントも作っちゃったけど、ポチがパソコンをするはずが無いな……」

ナックス「はいはーい。Linuxではもちろん、後から簡単にLinuxの一般ユーザーを削除することも出来ます。今回のコマンドはこちら!」

# userdel -r 削除したいユーザーのユーザー名

ナックス「userdelコマンドです!」

デビー君「ん?何か、userdelコマンドと削除したいユーザーのユーザー名の間に -r っていうのがあるけど? 」

ナックス「はい。これは以前にも少しご説明した『オプション』と呼ばれるものです。多くのLinuxコマンドには、それぞれにオプションが用意されており、そのオプションを使うことでコマンドの挙動を変えることが出来るのです」

デビー君「へー。じゃぁ、-rオプションをつけないでコマンドを使うとどうなるの? 」

ナックス「userdelコマンドを-rオプションをつけないで実行すると、確かに対象の一般ユーザーのアカウントを消すことは出来るのですが、一般ユーザーのホームディレクトリが残ったままになってしまいます」

デビー君「えぇっ!? 」

ナックス「その後『ホームディレクトリも消したいなー』と思ったときは手作業でホームディレクトリを削除しなければなりません」

デビー君「そうなんだ。でも、最初からオプション無しでホームディレクトリを消してくれればいいのに 」

ナックス「うーん。ホームディレクトリにはそのユーザーの大事なファイルが残っていたりすることもありますし。アカウントを削除した後『あー!しまった!俺のあの大事なファイルがLinuxのホームディレクトリに入ったままだったー!!』ってな場合のことを考えて、むしろ逆に『オプションをつけないと完全には消せない』っていう風に作ったんじゃないですか?」

デビー君「へー。そうなんだ 」

ナックス「いや、テキトーに言ってみました」

デビー君「えぇっ!? 」

デビー君「そういえばそのコマンドのオプションってどうやって知るの? 」

ナックス「そう言うときこそmanコマンドですよ、manコマンド(9.Linuxの取扱説明書・manコマンド)。初心者は良くmanコマンドの存在を忘れますが、manコマンドこそ基本の取扱説明書ですからね。ちなみにuserdelにmanコマンドを使いたいときはこうですよ」

$ man userdel

デビー君「だって、あれ見にくいんだもん。しかも英語だし 」

ナックス「ならばググれ!この初心者めが!」

ナックス「さぁ、デビーよ!貴様の術を使い、ポチをこの世から抹消するのじゃ!!」

デビー君「なんでちょっと悪者っぽいんだ……。えーっと、コマンドの例の一番左側が#っていうことはrootユーザーになってから……」

$ su -
Password:
# userdel -r pochi

デビー君「ん?消えたかな?」

ナックス「/homeを確認すると、pochiのディレクトリが消えていることが分かります」

デビー君「/home?」

ナックス「6.cdコマンドとlsコマンドで少し説明しましたが、一般的にどのLinuxディストリビューションでもrootディレクトリのすぐ下にhomeディレクトリがあります。rootディレクトリは/で表すと説明したのを覚えているでしょうか?『rootディレクトリのすぐ下のhomeディレクトリを確認すれば分かるよ』=『/homeを確認すれば分かるよ』っていうことです」

デビー君「なるほど」

ナックス「ちなみに、あなたがどのディレクトリにいても」

$ cd /home

ナックス「で、/homeへと移動できます」

デビー君「おぉっ!cdコマンドの応用技ですな?」

ナックス「さらに、あなたがどのディレクトリにいても」

$ ls /home

ナックス「で/homeの中身を確認できます」

デビー君「おぉっ!lsコマンドまで応用技ですな?」

ナックス「対象ディレクトリ指定の方法はLinuxの基本でありながら、Linux初心者ユーザーがつまずきやすいものの一つです。なので、あんまり『これがディレクトリの指定方法だよ!』ってがっつり教えるよりは、今回みたいに軽く流す感じで教えて『いつの間にか使えるようになってる!』みたいな流れでいきたいと思います」

ナックス「さて。今回のコマンドのように『Linuxではコマンドを打っても一見成功したか失敗したか分からない』っていうのは、初心者なら誰もが思うことです」

デビー君「確かに。Linuxは無愛想だ。もっと成功したのか失敗したのかをアピールして欲しい」

ナックス「Linuxが『何もアピールしてこない時』は基本的にコマンドは成功しています。エラーが起きたときだけ『エラーが出た!』って叫びます」

デビー君「そうなの?なんとなくコマンドが成功したときこそ『成功したぜ!』ってアピールしてほしいんだけど……」

ナックス「無愛想な彼女(Linux)と心を通い合わせることが出来るようになる(使いこなせるようになる)。そう言う関係こそ男の理想!」

デビー君「えー?僕はもっと明るくてスタイルも良くて趣味も合って」

ナックス「次回!エロ画像を別のディレクトリに隠す(20.新しくディレクトリを作る。mkdirコマンド)!」