treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

(3/3)sambaサーバのユーザ削除手順

今日はsambaサーバでユーザの作成と削除を実施したので、自分の備忘録がてらご報告します。

昨日の続きで今日は作成された仕様が終わったユーザIDの後始末となる削除手順についてです。

※前提としてsamba4がDebian Jessieにaptでインストールされている環境とします。

ユーザ削除

前の項で確認した「pdbedit -L | grep USR-1」コマンドでのSAMデータベースの登録情報以外にも、削除前に登録されているOS側ユーザ情報を確認しておきます。
----------------------------------------------
# cat /etc/passwd | grep USR-1
USR-1:x:1117:1005:,,,:/home/USR-1:/bin/false
# ls -la /home/ | grep USR-1
drwxrwx--- 2 USR-1 fsusers 4096 12月 24 2012 USR-1
# cat /etc/group | grep USR-1
fsusers:x:1005:user101,user102,user103,USR-1
----------------------------------------------
データや設定ファイルの文字列として「USR-1」が表示されるのが全部消えていれば、ユーザ情報の削除が完了したと判断してよさそうです。
削除は
pdbedit -x USR-1
このpdbeditコマンドに「-x」オプションを付けてユーザ名を指定すると指定したユーザがSAMデータベースから削除されて、sambaサーバの共有フォルダへのアクセスができなくなります。
あとはOS上のシステムユーザを消してしまいましょう。
userdel -r USR-1
これだけです。なお「-r」を付けているのは、ユーザ作成時に指定したホームディレクトリ「/home/USR-1」も同時に消去してしまう、と言う狙いがあるためです。当然ですが-rオプションを付加せず、「userdel USR-1」としてあとで「rmdir /home/USR-1」とホームディレクトリを別消ししてもOKです。ホームディレクトリにデータが残っているかどうか、という点で使い分けてもよさそうです。
こうして削除すると、同じ確認コマンドを実行しても、
----------------------------------------------
# pdbedit -L | grep USR-1
# cat /etc/passwd | grep USR-1
# ls -la /home/ | grep USR-1
# cat /etc/group | grep USR-1
----------------------------------------------
何も表示されなくなります。

何も表示されない、ということは正常に削除された、ということです。

簡単ですが以上です。

ネット上には解説記事やコマンドのオプション説明は多い印象ですが、実際のどのコマンドを組み合わせてユーザ登録を実行しているものか、と言うところはあまり知る機会がないですよね。
今回、備忘録も兼ねてやってみました。(ほぼ自分用ですが)

実際に動いている環境でのユーザ追加&ユーザ削除手順なので、それほど汎用性のある情報ではありませんが、sambaサーバの管理をしている方の何かの参考にはなるかもしれません。