Lesson 5 ファイルシステムを理解する

はじめに

g1  g2

STEP1 ディレクトリに移動する

1. ディレクトリに移動する

cd ディレクトリ名  (または ディレクトリ名/ディレクトリ名・・・・)

2.  "." と ".."

.         カレントディレクトリ〔現在作業しているディレクトリ)
..         カレントディレクトリのひとつ上のディレクトリ(親ディレクトリ)


STEP2 ファイルシステムの全体像を理解する

1. ホームディレクトリ

コラム;

ファイルシステムは本来は皆さんが実際に使用してい る計算機の中にあるものです。しかし情報コースの教育システムのように、本体は、ネットワークで接続された外部の計算機(ファイ ルサーバ)にあるものもあります。このシステムでは、皆さんが作業をするたびに、ネットワーク経由でファイルサーバーとデータをやりとりして、あたかも ファイルシステムが目の前の計算機の中にあるようにみせています。

2. カレントディレクトリの表示

pwd      ← (present working directory の略)

cd (引数なし)
cd ‾
cd ‾自分のアカウント名

$ cd
$  pwd
$  cd ..
$  pwd
$  cd ‾
$  pwd
$  cd ..
$  pwd
$  cd ‾自分のアカウント名
$  pwd

3. ディレクトリの階層構造

4. ディレクトリの全体構造

5. 絶対パスと相対パス

      cd ‾
      mkdir abc
カレント ディレクトリの絶対パス     /home/b083k001
ターゲットディレクトリの絶対パス    /home/b083k001/abc
                     相対パス    abc
(‾/abcとも表せます)

カレント ディレクトリの絶対パス   /home
ターゲットディレクトリの絶対パス  /home/b083k001/abc(変わらない)
                     相対パス  b083k001/abc (カレントディレクトリからの相対位置)

Lesson 6 保護モードを理解する

STEP1 ファイルの保護モードを理解する

1.  保護モードの意味

% ls -l
total 3
-rw-r--r--    1 honda  isstaff    28 10 19 14:40 aaa
-rw-r--r--    1 honda  isstaff    28 10 19 13:41 aaa1
drwxr-xr-x    3 honda  isstaff   512 10 26 13:23 d1


ファイルの
種類
所有者の権利
(user)
同じグループの
ユーザーの権利
(group)
その他の
ユーザーの権利
(other)
- r   w   -
r   w   -
r   w   -

  • ファイルの種類 
    • (- ファイル、 d ディレクトリ)
  • 権利  
                     {r,-}{w,-}{x,-} 
                    読む      書込    実行
    • -  は  該当する権利がないことを示す。
  •  例 -rw-r--r--
    • すべてのユーザーが、このファイルを読むことはできる。書き込むことができるのはユーザ(作成者)だけ。(デフォルトではこの状態になっている)

2.  保護モードの8進数表示

(1) 保護モードの各列(先頭はのぞく)を、−の場合は0、それ以外(r、w、x)の場合は1に置き換えて2進数表記する(順番は入れ替えないこと)
          所有者(u)      グループ(g)       ほかのユーザー(o)
   -    r   w   -           r   -   -            r   -   -
→   1   1    0                   1   0   0                   1    0   0

(2)  さらに3桁ごとに8進数表記に変換する

     ユーザー(u)    1   1   0   → 4x1+2x1+1x0=6
     グループ(g)    1   0   0   → 4x1+2x0+1x0=4
     他ユーザー(o) 1   0   0   → 4x1+2x0+1x0=4
         
この3数字をまとめた 644   が保護モードの8進数表記である。

3. 保護モードの変更(読み込み権)

4. 保護モードの変更(書き込み権)

5. 保護モードの変更(実行権)


(1)個別に指定する方法
     chmod    a+w  ファイル名

     (現在の状態に対する変更分だけを指定する)

 変更用の3文字の記号の内容
文字位置
変更内容
シンボル
意味
1
ユーザー種別
u
g
o
a
所有者
同じグループのユーザ
他のユーザー
全てのユーザ
2
権利の付加、剥奪
+
-
付加
剥奪
3
権利
r
w
x
読む
書く
実行

     
    例   a+w   すべてのユーザーに書き込む権利を与える

(2)8進数表記を用いる方法
    chmod    保護モードの8進表記 ファイル名
            (直感的ではないが、一気に変更することができる)
      
     例  chmod 644 ファイル名

   練習
% ls -l
-rw-r--r--    1 honda  isstaff    28 10 19 14:40 aaa

このファイルから、ほかのユーザーの読む権利を失くすには?

(1)の方法
               chmod o-r  aaa
               (ls -l で確認してみましょう)
(2)の方法
    設定したい保護モードの8進表記を計算する   
       rw-r----- → 110 100 000 →640         
       chmod 640 aaa
               (ls -l で確認してみましょう)


STEP2 ディレクトリの保護モードを理解する

% ls -l
total 3
-rw-r--r--     1 honda  isstaff    28 10 19 14:40 aaa
-rw-r--r--     1 honda  isstaff    28 10 19 13:41 aaa1
drwxr-xr-x    3 honda  isstaff   512 10 26 13:23 d1

  • ディレクトリの中にあるファイル・ディレクトリの内容を一斉に替えるときは -R (読み込み権rと区別するため大文字) オプションを使用します。
                    例.  chmod -R  a+r  ディレクトリ名

課題

以下の問題に対する解答をe-mailでhonda@is.kochi-u.ac.jpに送ってください。
メールのサブジェクトは ”lesson6 kadai”としてください
締め切り 2016/11/3(木) 17:00

注意 下記の指示に従うこと。特に最初の3つに違反する場合、受け取りません(その旨知らせます)

以下の問題に対する解答をe-mailでhonda@is.kochi-u.ac.jpに送ってください。

1.  (lesson5相当) 以下の操作を実行してコマンドと実行結果を答えてください。各問いについては指定されていない限り、1度のコマンド入力で実行できるようにしてください。 なお、作業内容はあとで確認しますので、作成したディレクトリ、ファイルなど 消さずに残しておいてください。
  1. ホームディレクトリに移動する(引数のない1つのコマンドで)
  2. ホームディレクトリに d5という名前のディレクトリを作成する
  3. 相対パスを使ってd5というディレクトリに移動する
  4. カレントディレクトリの名前を表示する
  5. 一つ上のディレクトリに戻る
  6. 絶対パスを使用して、d5というディレクトリに移動する
  7. カレントディレクトリはそのままで、親ディレクトリにあるファイル名の一覧を表示する
  8. 7の出力と同じ内容を、カレントディレクトリの中のparentlistという名前のファイルに保存する(ヒント,  >)
  9. 絶対パスを使って、8で作成したファイルの中身を表示する
  10. カレントディレクトリはそのままで、/etcというディレクトリにある hostsというファイルの中身を表示する。
  11. b073k063さんのホームディレクトリに一度に移動して(絶対パスを使わない方法で)、カレントデイレクトリを確認する(ここは2コマンドで)
  12. 自分のホームディレクトリに戻って(1番とは違う方法で一度に)、カレントデイレクトリを確認する(ここは2コマンドで)

2.  (lesson6相当) 以下のコマンドの実行後、ファイルbbbの保護モードはどうなっているか。10文字の形式と、8進数表示で答え、さらにその意味を言葉で説明しなさい。
(太字は実行部分)
% date > bbb
% ls -l bbb
         -rw -r- -r - -  ・・・・・・・・  bbb
% chmod a+x bbb
% chmod u-r bbb

3.  (lesson6相当) 以下の処理を行いなさい。解答には各ステップで実行するコマンドを答えてください。答えには実行結果も含めてください。また作業内容は採点の際に確認しますので、消去しないでください。

(1)ディレクトリd6を作成する。
(2)ディレクトリd6に移動する。
(3)現在の時刻を現在のディレクトリ(d6)にdate.txtという名前のファイルとして作成する。(ヒント cal,  > )
(4)ファイルdate.txt の保護モードを表示する。
(5)8進数表示を使わずに、ファイルdate.txtの保護モードを下記のように変更する。
(6) ファイルdate.txtの保護モードを表示する。

(7) 8進数表示をつかって、ファイルdate.txtの保護モードを下記のように変更する。
(8) ファイルdate.txt の保護モードを再度表示する。

(9)一つ上のディレクトリに移動する。

(10) カレントディレクトリにあるすべてのファイル・ディレクトリの属性を表示する。

(11) d6のディレクトリ以下を、丸ごと、所有者の属するグループ以外の者が読むことができないようにする。

(12) d6とd6/date.txtの属性を確認する。