以下の各問題を解決する方法を調べ、利用するコマンド、コマンドの利用方法をまとめなさい。manコマンド、インターネットを活用する。
man コマンド名
演習問題
- ログインの履歴を調べる。
- sudoコマンドの使い方を調べ、利用方法と設定方法を確認し、一般ユーザから利用できるようにしたい。
- 新たにユーザを4人追加したい。追加するユーザはnomo、ichiro、shinjo、matsuiとし、各ユーザはグループusersに属するものとする。なお、パスワードは適当に設定する。
- 新しいグループit02を追加したい。
- 既存のユーザmatsuiをグループit02に変更したい。
- 各ユーザのホームディレクトリの使用量を調べる。
- 各ユーザファイルの中である大きさが指定したサイズ以上のファイルの一覧を得たい。
解説
ログイン履歴を調べる
lastコマンドを使う。
sudoコマンド
コマンドラインに指定されたコマンドを管理者権限で実行する。suコマンドとよく似ているがコマンドの実行が終わると一般ユーザの権限に戻る。
コマンドを実行するとパスワードの入力を促されるがここで入力するパスワードは一般ユーザのパスワードである。
このコマンドを利用するには/etc/sudoersファイルにユーザ名と管理者権限で実行できるコマンド名を次の書式で書き込んでおかなければならない。/etc/sudoersの編集にはvisudoコマンドを使う。
そのファイルは次の書式に従う。
ユーザ名 ホスト名=利用できるコマンド
たとえば、ユーザsakabeにすべてのホストからすべてのコマンドを実行できるようにする場合は次のように記述する。
sakabe ALL=ALL
新規ユーザの追加
adduserあるいはuseraddコマンドを使う。(adduserはuseraddへのシンボリックリンク)グループ、パスワードも同時に指定するのでgおよびpオプションを使う。
# useradd -g users -p xxxx nomo
グループの追加
groupaddコマンドを使う。グループの情報は/etc/groupsに保存されている。
# groupadd it02
グループの変更
usermodコマンドを使う。グループを変更するのでgオプションを使う。
# usermod -g it02 matsui
各ユーザのディスク使用量
duコマンドを使う。sオプションを使い、管理者権限で実行する。
# du -s /home/*
あるサイズ以上のファイルのみ表示
lsコマンドとawkコマンドを併用する(パイプ機能を利用)。
- lsコマンドでファイルサイズを表示し、更に指定したディレクトリを再帰的にアクセスする。l、a、Rオプションを使う。
- lsコマンドの出力のファイルサイズの値をawkコマンドで処理する。
たとえば、10240バイトより大きいファイルのリストを表示する。
ls -laR /home | awk '$5 > 10240 {print}'
lsコマンドのRオプションは指定してディレクトリを再帰的に検索することを意味する。つまり、指定したディレクトリ以下のすべてのファイル、ディレクトリということになる。
[UNIX管理実習]