私はLinuxファイルのパーミッションと特別なパーマ(スティッキービット、SUID、GUID)に非常に精通しています。
しかし、c
の意味がわかりませんか?それは許可ですか、それとも何か他のものですか?私はいくつかのグーグルを行ったが、それを理解することはできません。
これを含むデバイスファイルを次に示します。
steven@A215:~$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Dec 29 20:58 /dev/null
これは、ファイルが文字特殊ファイルであることを意味します-基本的には、シリアルアクセスを提供するデバイスファイル(block specialディスクドライブなどのデバイス)。たとえば、端末とシリアルデバイスは、キャラクタスペシャルファイル(/dev/tty1
、/dev/ttyS0
など)を介してインターフェイスされます。
デバイスファイルの簡単な紹介については、 Linux/UNIX:デバイスファイル [cyberciti.biz]を参照してください。より詳細な議論については、このstackexchangeの答えを参照してください / devとそのサブディレクトリとファイルを理解する 。基礎となるデータ構造の詳細については、Linux Kernel Module Programming Guideの第4章を参照してください。 Character Device Files [tldp.org]
キャラクターデバイスは、モード文字列の最初の文字としてc
でマークされます。同様に、ブロックデバイスにはb
のマークが付けられ、
$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Jan 21 21:50 /dev/null
$ ls -l /dev/sda
brw-rw---- 1 root disk 8, 0 Jan 21 21:50 /dev/sda
これらの特別なデバイス(すべてがLinuxのファイルであるという意味でのファイル)がさらにあります。
d : directory
s : socket
p : pipe
D : Door
l : symbolic link etc.
詳細については、この wikipedia ページを参照してください。
ls -l
は、一般に許可文字列として知られる10シンボルのUNIX文字列を出力します。例えば.
-rw-rw-r-- 1 userName groupName 13200650 Dec 13 21:23 fileName
許可文字列またはモード文字列の最初の文字は、ファイル記述子、ファイルタイプを示し、3つのグループに分けられた残りの9つは、関連するファイルのアクセス許可を示します。ここで、
ここで、上記の例では、最初の文字/記号 "-" 通常のファイルを示します。
次の例では、
crw-rw-rw- 1 root root 1, 3 Dec 29 20:58 /dev/null
crw-rw-rw- 1 root root 1, 5 Jan 13 20:56 /dev/zero
許可文字列の最初の文字は "c" 上記のように、キャラクターデバイスを示すファイルタイプインジケーターです。
-
以外に、c
には他のファイル記述子がいくつかあります。
d
->ディレクトリl
->シンボリックリンクs
-> Unixソケットb
->ブロックデバイスp
->パイプラインD
->ドア最初の列の最初の文字、つまり上記のcrw-rw-rw-の「c」は、通知されたユーザーにファイルのタイプ(この場合はキャラクターデバイス)を伝えます。