はい。


今日はアクセス権限についてのお話ですよ~音譜


アクセス権限っていうのは読んで字の如く、
ファイルなどにどういった権限でのアクセス方法
が可能なのか、ということですね。


権限の内容としては3つ


本読み出し権限
メモ書き込み権限
レンチ実行権限



でも管理者と一般ユーザが全く同じ権限っていう
のも変な話でしょ!? そこでLinuxでは・・・


・所有者
・グループ
・その他のユーザ


これら3つの区分を用いて、それぞれがどんな
権限にするのか決めることができますょ。



現在、どんなアクセス権限になっているのかを
確認するには【ls -l】コマンドを使いますょ。
「-l」というオプションを使うことで、アクセス権限
を含め詳細にファイル(及びディレクトリ)の一覧
が可能のなるのです。



ではでは、実際に【ls -l】コマンドを使ってみましょう。


Rina-chanのLinux =Fedora8=


はい。こんな感じの結果がでてきます。
【ls】と【ls -l】両方のコマンドを実行してみました。



「これのどこがアクセス権限なんだ」って?

そんなに焦らないでください、ご主人様。



例えば、【ls -l】コマンドの結果の2つ目である
「nautilus-debug-log.txt」の場合、左端の
「-rw-rw-r--」がアクセス権限を示す欄なのです。



このままでは少し説明しづらいので、「-rw-rw-r--」
をバラしますね~。さらに色もつけますね~。


①「-」 ②「rw-」 ③「rw-」 ④「r--


ハイ!こんな感じでにしてみました。


①の「-.」の意味は「ファイル」であることを示しますょ。
もしここが「d」であれば「ディレクトリ」ってコトです。

②ここは「所有者」のアクセス権限を示します。

③ここは「グループ」のアクセス権限を示します。

④ここは「その他のユーザ」のアクセス権限を示します。


次に、で色分けしてる②、③、④について。


赤色のところ
→これは「読み出し権限」を意味してて、読み出し
可能な場合には「r」を、読み出し不可な場合には
「-」と書かれてるょ。


青色のところ
→これは「書き込み権限」を意味してて、書き込み
可能な場合には「w」を、読み出し不可な場合には
「-」と書かれてるょ。


緑色のところ
→これは「実行権限」を意味してて、実行可能

な場合には「x」を、実行不可な場合には「-」と
書かれてるょ。


つまりこの「-rw-rw-r--」の場合・・・

・所有者:読み出し権限と書き込み権限がある
・グループ:読み出し権限と書き込み権限がある
・その他のユーザ:読み出し権限のみある

ってコト。



慣れるまでは、「え~っと・・・・・・」って30秒ぐらい
考えこんじゃうような気がします、Rinaの場合は。





さてさて、ただでさえこんなにいっぱいいっぱい
なのに、テキストには淡々と、さらにややこしい
コトが書かれてます。



それは、「アクセス権限の変更方法」。

しかも2通りの変更方法があるみたいよ~。



えーっと、なになに?変更方法1つ目がアクセス権限の
変更には【chmod】コマンドを使うって書かれてるね~。


【chmod アクセス権限変更 ファイル名(orディレクトリ名)】


アクセス権限変更の箇所については・・・
「対象ユーザ」「変更方法」「変更する権限」の順に記述ね。


<対象ユーザ>
・「u」→所有者
・「g」→グループ
・「o」→その他のユーザ
・「a」→所有者&グループ&その他のユーザ


<変更方法>
・「+」→指定した権限を追加
・「-」→指定した権限を削除
・「=」→指定した権限に変更


<変更する権限>
・「r」→読み出し権限
・「w」→書き込み権限
・「x」→実行権限



さっきの「nautilus-debug-log.txt」っていうファイルで実際に
アクセス権限を変更してみたいと思います。「-rw-rw-rw-」
に変更してみますよ~。


【chmod o+w nautilus-debug-log.txt】



Rina-chanのLinux =Fedora8=


はい。【chmod o+w nautilus-debug-log.txt】コマンド入力
直後に何かメッセージが表示されるわけではないけれども、
再度【ls -l】コマンドで確認したら、ちゃんと「-rw-rw-rw-」
に変わってるね。




続いて、2つ目の変更方法は、アクセス権で許可している
ところを「1」、禁止しているところを「0」として、それを8進数
表記した数字を利用すること・・・。


・・・なんのこっちゃ!?


つまり「-rw-rw-rw-」の場合、「110110110」として
それを8進数になおして「666」になるってコトね。
(先頭のハイフンは「ファイル」って意味だから無視してね)


じゃぁ、「-rw-rw-rw-」を元々の形である「-rw-rw-r--」
に戻してみようかな。「-rw-rw-r--」だから「110110100」
即ち8進数で「664」だね。


【chmod 664 nautilus-debug-log.txt】



Rina-chanのLinux =Fedora8=


うん。元通りになったニコニコ


今日はここまで。

明日は、「2進数」を「8進数」になおす方法を書こうかな
と思います。Rinaは昨日8進数になおす方法を知りました☆


Bye, Bye音譜



ペタしてね

予告通り、Linuxのディレクトリ構造について、

どのディレクトリにどんなコマンドやファイルが

あるのかを一挙公開したいと思います♪




Rina-chanのLinux =Fedora8=


Excelで頑張って作ってみました。

若干見づらいかもしれませんが、Rinaはもう

クタクタなので、これで勘弁してください。。。


小さくて見えないですね。画像の上で、右クリックして

「リンクを新しいウィンドウで開く」を選んでみてください。


できれば、昨日の『#027 コマンドを使うにあたって

~その4~』 とあわせてご覧ください。


明日は、ファイルのアクセス権限について

【ls -l】コマンドを使ったお話をしたいと思います。


文章少なくてゴメンナサイm(_ _)m


本当に疲れました。。。今日はここまでデス。


Bye, Bye音譜



ペタしてね

パスを指定しないと実行できないコマンド。


・・・何それ!?


と思った貴方様は正常です(・∀・)


Rinaもそう思いました。
ってか現在進行形で思ってます(^▽^;)


【ls】とか【cp】とか一般のユーザが利用する
コマンドについては、そのままコマンド名を入力
して実行することができるんだけど、管理者向け
のコマンドはコマンド名のみを入力してもエラーが
表示されて実行できないっていう話ね。


原因は、「PATH」と呼ばれる「環境変数」の設定
によるものみたい。「環境変数」っていうのはシェル
の設定項目のことね。


コマンドのほとんどは実行ファイルとして存在してて
例えば、【ls】コマンドは「/bin」ディレクトリに格納
されてるのね。


でも、ファイルっていうのは当然コマンド以外にもたくさん
あって、どれがコマンドのファイルなのかを分かるように
しておく必要があるし、どのディレクトリにあるファイルでも
実行できてしまうと、同じファイル名が存在した場合、
どれを実行していいのか分からなくなっちゃうよね。


そこで、Linuxでは「PATH」と呼ばれる「環境変数」を用意
してて、この「PATH」に記載されているディレクトリ以下の
コマンドについては、ファイル名(だけ)を指定することで
実行可能なワケ。


PATHを確かめるには【echo $PATH】コマンドを入力。


すると、「:」を区切りとして実行ファイルのあるパスが
一覧されるのね。例えば結果が「/use/bin:/bin」だった
場合、「/bin」と「/usr/bin」ディレクトリにあるファイルが
ファイル名だけで実行できるのね。


また、PATHに登録されていないディレクトリ以下にある
ファイルを実行したい場合は、パスを利用してファイル名
を指定するんだ。例えば、「/usr/sbin」ディレクトリ内に
ある【ifconfig】コマンドを実行したい場合には・・・
【/usr/sbin/ifconfig】って入力するのね。





ねぇねぇ(*^ー^)ノ


そういえば、「新規ユーザの作成と削除を例にお話しよう」
って昨日のブログで書いてたんだよね・・・忘れてた (ノ◇≦。)


ここまでの話を前提として、説明していくけど、サーバ
アプリケーションごとにアクセスできるユーザが決まってる
場合があるのね。ユーザを管理するには管理者権限が
必要になるっていう具合にね。


ここでメールサーバを例にメールの送受信を行う「mail」
ユーザを登録したい場合、「端末」起動後、【su】コマンド
で管理者に切り替え【useradd】コマンドを利用してユーザ
を作成するのね。


BUTビックリマーク一般ユーザから管理者に切り替えた場合には、
一般ユーザの環境変数が引き継がれるのね。


Soビックリマーク PATHが異なるために【useradd】とコマンド名を
入力しても実行できないんだ。


【useradd】コマンドを実行するには【/usr/sbin/useradd】
と入力しないといけないってコト。ユーザを新規に追加する
場合は、【useradd】コマンドの後に新しいユーザのアカウント名
を入力するの。


【/usr/sbin/useradd rina】 こんな感じ。


作成したユーザにはパスワードがまだないから、ログインが
できないの。だから【passwd】コマンドでパスワードを設定
するんだ。特定のユーザのパスワードを設定する場合には
引数にアカウント名を指定するの。rinaユーザの例では、


【passwd rina】


って実行するの。するとパスワードを聞かれるょ。rinaユーザ
のパスワードを入力するの。再度パスワードを聞かれるから
今のと同じパスワードを入力してね。


ちなみに、既存のユーザを削除したい場合は

【/usr/sbin/userdel rina】と実行するょ。


明日は、Linuxのディレクトリ構造について、どのディレクトリに
どんなコマンドやファイルがあるのかを一挙公開したいと
思います♪


今日はここまで Bye, Bye音譜



ペタしてね