10年くらいほとんどWindowsしか使ったことがなかったのですが,サーバー立てようとしたり,Mac使ったりしようとするとやはり避けては通れないUnix/Linux系コマンド.
使ったものをまとめておけば便利なんじゃないかと思うのでそんな感じで.
#groupNameにuserNameを追加.
$gpasswd -a userName groupName
#こっちは削除.
$gpasswd -d userName groupName
#追加.これだと","で区切って一度に指定できるけど,今までの所属グループを捨てて新しくグループを設定するので注意
$usermod -G groupName1,groupName2 userName
#プライマリグループ変更
$usermod -g groupName userName
#セカンダリグループ変更
$usermod -G groupName userName
#グループとそこに所属するユーザを一覧で確認
cat /etc/group
#userNameを指定してそいつが所属するgroupNameを表示
$groups userName
#userName指定してそいつの情報を表示
$id userName
#ユーザー作成
$useradd userName
#パスワード設定
$passwd userName
#ユーザー作るときにプライマリグループ設定しといてやる方法
$useradd -g groupName userName
#ユーザー削除(ホームディレクトリ以下も消すならオプション-rで.)
$userdel userName
#グループ作成
$groupadd groupName
#グループ削除
$groupdel groupName
#所有グループの変更
$chgrp groupName dir
wheelに追加したユーザでsudoしようと思ったらダメだった./etc/sudoersでwheelグループの定義を有効にしないとダメらしい.
$su -
$visudo
#wheelグループを有効に
#%wheel ALL=(ALL) ALL
↓
%wheel ALL=(ALL) ALL
#に.確認.
$su - user@wheel
$sudo visudo
ファイルの実行権限を変える.
Git用サーバーで,たくさんユーザーを作ってそれらをおんなじプライマリグループに設定してみんなが自由にPushしたりPullできるようにしたかった.けど,デフォルトのまんまでは,ディレクトリを作ってもrootにしか書き込み権限がない.ので,
してやると,同一グループの人はPushできるようになる.でもこのコマンド,その時にしか適用されないので,設定ファイルでログインする度に実行してやる必要がある.全ユーザー共通のbash設定ファイルは,/etc/bashrcにある.ので,
$vim /etc/bashrc
#してやって,そのファイルの末尾にでも,
umask 0002
#を付け加えてやる.
これで前ユーザーがログインした時点でumaskコマンドが適用される.こんな感じでいいのだろうか.よくわからん.
Macでtree
macのbashでtreeしようとしたらコマンド見つからないと言われるので,
最終更新:2011年11月14日 21:57