BLOGTIMES
2018/05/10

usermod -G でエラい目にあった

  systemmanagemant  centos7  rhel 
このエントリーをはてなブックマークに追加

usermod で所属グループを追加しようとしたら、思わぬ罠にハマってしまったのでメモ。

普段は vigr とかを使って直接 /etc/group を編集するのですが、ちゃんと usermod を使おうとしたのが失敗でした。
username を補助グループ hoge に追加しようとしたのですが、username が hoge 以外の全ての補助グループから削除されてしまってびっくり

usermod -G hoge username

man に2つめの罠

ちゃんと man を読んでから操作したはずなので、ちょっとこれは腑に落ちないなと思っていろいろ調べてみると、補助グループを追加したい場合には、以下の Redhat のドキュメントあるように -a オプションをつける必要があるようです。

3.3. コマンドラインツールの使用 - Red Hat Customer Portal

usermod コマンドに関連するオプションもほとんど同じです。ユーザーを別の補助グループに追加する場合は、-a, --append オプションを -G オプションとともに使用する必要があります。このように使用しない場合は、ユーザーの補助グループの一覧が usermod -G コマンドで指定されたもので上書きされます。

ユーザーを myproject グループに追加します。

usermod -aG myproject username

再度 man を確認してみたのですが、そんな記載はなかったので、もしやと思ってロケールを英語にしてみて納得。
この -a オプションの解説が英語の man にしか記載がないことが分かりました。

こういうのたまに当ってしまうことがありますが、無精しないでちゃんと英語の man を確認しないとダメですね。


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/10162
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン