日期:2014-05-16  浏览次数:20715 次

鸟哥的linux私房菜(基础篇--9、Linux的档案属性和目录配置)笔记

1、?????

???? ?在我们 Linux 系统当中,预设的情况下,所有的系统上的账号与一般身份使用者,还有那个 root 的相关信息,都是记录在 /etc/passwd 这个档案内的。至于密码则是记录在 /etc/shadow 这个档案下。 此外, Linux 所有的群组名称都纪录在 /etc/group 内!

?

2、

[root@linux ~]# ls -al

drwx------ 3 root root 4096 Jun 25 08:35 .ssh

-rw-r--r-- 1 root root 68495 Jun 25 08:53 install.log

?

(1)第一栏代表这个档案的属性。

第一个属性代表这个档案是『目录、档案或连结文件等等』:
当为[ d ]则是目录,例如上表的第 11 行;

当为[ - ]则是档案,例如上表的第 5 行;

若是[ l ]则表示为连结档(link file);
若是[ b ]则表示为装置文件里面的可供储存的接口设备;
若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标。

?

范例:若有一个档案的属性为『-rwxr-xr--』,简单的可由下面说明之:
[-][rwx][r-x][r--]
1 234 567 890
1 为:代表这个文件名为目录或档案(上面为档案)
234为:拥有人的权限(上面为可读、可写、可执行)
567为:同群组使用者权限(上面为可读可执行)
890为:其它使用者权限(上面为仅可读)

?

请特别留意的是,如果您想要开放某个目录让一些人进来的话, 请记得将该目录的 x 属性给开放呦!

?

(3)第三栏表示这个档案(或目录)的『拥有人』。

?

(4)第四栏表示拥有人的群组。

?

(5)第五栏为这个档案的容量大小。

?

(6)第六栏为这个档案的建档日期或者最近的修改日期。

???? 中文无法显示在文字型态的终端机上面, 所以这一栏会成为怪怪的乱码,这个时候,请修改下 /etc/sysconfig/i18n 这个档案,里面的『 LC_TIME 』修改为:『 LC_TIME=en 』再储存离开,再登入一次,就可以得到英文字形显示的日期了! 那么如何修改该档案呢?呵呵!以 root 身份用 vi 修改。 另外,也可以使用『 LANG=en ls -al 』之类的语法来显示。

?

(7)第七栏为这个档案的档名, 如果档名之前多一个『 . 』,则代表这个档案为『 隐藏档 』。

?

3、linux档案种类

?????(1)正规档案 (regular file ): 就是一般我们在进行存取的类型的档案,在由 ls –al 所显示出来的属性方面,第一个属性为 [ - ],例如 [-rwxrwxrwx ]。

?? 纯文字文件(ASCII),二进制文件(binary)和数据格式文件(data)。

我们的 Linux 在使用者登入时,都会将登录的数据记录在 /var/log/wtmp 那个档案内,该档案是一个 data file ,他能够透过 last 这个指令读出来。

????? (2)目录 (directory):就是目录啰~第一个属性为 [ d ],例如 [drwxrwxrwx]。

????? (3)连结档 (link):就是类似 Windows 底下的快捷方式啦!第一个属性为 [ l ], 例如 [lrwxrwxrwx] 。

????? (4)设备与装置文件 (device):与系统周边及储存等相关的一些档案, 通常都集中在 /dev 这个目录之下!通常又分为两种:
?? o 区块 (block) 设备档 :就是一些储存数据, 以提供系统存取的接口设备,简单的说就是硬盘啦!例如你的一号硬盘的代码是 /dev/hda1 等等的档案啦!第一个属性为 [ b ];
???o 字符 (character) 设备档 :亦即是一些串行端口的接口设备, 例如键盘、鼠标等等!第一个属性为 [ c ]。

???????(5)资料接口文件 (sockets):既然被称为数据接口文件, 想当然尔,这种类型的档案通常被用在网络上的数据承接了。我们可以启动一个程序来监听客户端的要求, 而客户端就可以透过这个 socket 来进行数据的沟通了。第一个属性为 [ s ], 最常在 /var/run 这个目录中看到这种档案类型了。

?????? (6)数据输送文件 (FIFO, pipe): FIFO 也是一种特殊的档案类型,他主要的目的在解决多个程序同时存取一个档案所造成的错误问题。 FIFO 是 first-in-first-out 的缩写。第一个属性为 [p] 。

?

4、绝对路径和相对路径

您目前在 /home 这个目录下, 如果想要进入 /var/log 这个目录时,可以怎么写呢?
? cd /var/log (absolute)绝对路径
? cd ../var/log (relative)相对路径
因为您在 /home 底下,所以要回到上一层 (../) 之后,才能继续往 /var 来移动的! 特别注意这两个特殊的目录:
? . :代表当前的目录,也可以使用 ./ 来表示;
? .. :代表上一层目录,也可以 ../ 来代表。