root権限を持つユーザの登録方法


仕事で『○○(商用ソフトウェア)で定期的にフルバックアップ作業をしたいのだけれど、運用上rootユーザのパスワードも定期的に更新しないといけないのでどうにかならないか』という相談を受けました。
Windowsだと、そのままズバリの「Backup Operators」というグループ権限を持ったユーザを作ればいいのですけれど、Linuxの場合、/etc/shadowのようなrootでしか読めないファイルがあります。
かと言って、その商用ソフトウェアの設定をrootのパスワード変更時に再変更する、というのも作業漏れ等が発生する可能性が高くなるので現実的ではありません。


結果、私が出した回答は「root権限を持つバックアップ用のユーザを作って運用する」という方法でした。
これ、昔Solarisを使っていた時に、あまり詳しくないお客さん用にシャットダウン専用のユーザを作った流用なんですが、今でも通用しましたので覚え書き。


/etc/passwdファイルを直接編集しますので、作業はrootユーザで行います。
vipwで/etc/passwdファイルを編集し、以下のようなユーザ(今回は「bkupadm」)を追加します。


bkupadm:x:0:0:Backup User::/bin/false


bkupadmには任意のユーザ名を入れてください。Backup Userはコメントですので、なくても構いません。
保存して終了後、/etc/shadowファイルを編集するか聞かれるのでyを入力し、以下のように追加します。


bkupadm::::::::


最後に、passwdコマンドでbkupadmにパスワードを設定します。


以上のように作成したユーザで、バックアップのテストをしたところ、rootしか読めないファイルも無事、バックアップできました。