ユーザ
ユーザ一覧
getent passwd
less /etc/passwd
区切られた内容は以下の通り。
・ユーザ名
・パスワード
・ユーザーID
・グループID
・コメント
・ホームディレクトリ
・利用シェル
ユーザ情報
id xxx
グループ
グループ一覧
getent group
less /etc/group
グループに所属ユーザの確認
getent group xxx
グループの作成
groupadd wp
グループにユーザを追加
usermod -aG wp www-data
ログインユーザの所属グループ
groups
groups ユーザ名
でもOK
***
実験として、/var/www/に直接ファイルをアップロードするための変更。
ちなみに、/var/www/はroot:rootだが、rootグループにはrootしか所属していないため、/var/wwwの所属グループを変更しても問題ない。
所属グループの書き込みを許可
sudo chmod g+w /var/www
所属グループの変更
sudo chown root:www-upload /var/www
グループの作成
sudo groupadd www-upload
グループにユーザを追加
sudo usermod -aG www-upload ubuntu
確認
groups ubuntu
WinSCPでアップロードするとubuntu:ubuntuの権限になる(デフォルトユーザーがubuntuなため)ので、/var/www/以下にフォルダ・ファイルをアップロードしてもサブフォルダも含めアクセスできるが、SSHでフォルダ・ファイルを作成すると権限がrootになるので、WinSCP経由では作業できないので注意。
***
sudoできるユーザ
/etc/sudoer
ubuntuの場合sudo、adminグループ
ubuntuではsudoグループがsudoできるグループ
adminというグループには誰も所属していない
ユーザ作成
sudo useradd xxx
mオプションを付けないと、ホームディレクトは作成されず、手動では/etc/skelの内容がコピーされない
useradd -D
デフォルトの確認
ユーザの削除
userdel -r xxx
mオプションでホームディレクトリの作成
(自動で、/etc/skelのコピーが入る)
sudo useradd -m inna
ログインできなユーザへ
sudo usermod -s /usr/sbin/nologin inna
ログインできるユーザへ
sudo usermod -s /bin/bash inna
参加するグループの変更
usermod -aG
chown
chown 所有者:所属グループ 対象
再帰の場合、
chown -R xxx/xxx
で再帰的にユーザ、グループを全て変えられる。
chmod
sudo chmod [ u / g / o / a ] [ + / – / = ] [ r / w / x ] 対象ファイル
u: ユーザー
g: グループ
o: その他
a: すべて
sudo chmod 764 hoge.txtのように指定することもできる
4: 読むことが可能(Read)
2: 書くことが可能(Write)
1: 実行が可能(eXecute)
0: なにもできない
権限の意味
ファイルの場合。
R
そのファイルを読み込む
W
そのファイルを書込める
X
バイナリなら実行できる。スクリプトなら、そのスクリプトを実行できる。
(スクリプトの実体はテキストファイルで先頭に#記号がある)
ディレクトリの場合。
R
そのディレクトリの中身をみる。
W
そのディレクトリにファイルを作成すること。
X
そのディレクトリをカレントディレクトリにすること。
(ディレクトリの実行権はサブディレクトリにも影響するが、RWは指定のフォルダだけ)