磁盘、文件系统 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Linux系统允许通过/dev目录下的设备节点对磁盘进行直接或低级访问。

普通用户通常无权访问磁盘设备节点。

/dev/cdrom并不是一个设备节点,而是一个软连接。

磁盘的分区可以当作独立的磁盘来使用,Linux也有针对分区的设备节点。分区的设备节点仅仅是在磁盘设备节点后面加分区号。

创建文件系统就是对文件系统进行初始化,或叫作格式化。

mkfs命令用于创建文件系统。每种文件系统都有一个对应的mksf命令用于创建该文件系统。

文件系统的挂载:是将一个文件系统的根目录映射到/文件系统中一个已存在的目录下,这个过程就叫作文件系统的挂载。

挂载点:挂载点是一个目录,当一个文件系统被挂载到一个目录下使用时,这个目录就是一个挂载点。

在Linux系统中,一个分区满了,受影响的只有其挂载目录,而整个目录树不会受到影响。

使用df命令查看分区空间使用状态,不仅显示分区的剩余空间的大小,同时也给出了那个文件系统被挂载到那个挂载点。

在目录/media目录下,放置一些临时挂载点。

lost+found目录是在创建文件系统是自动创建的,在文件系统的修复时会使用到。

在默认情况下,只用根用户才能够执行文件系统的挂载和脱挂操作,临时设备的挂载和脱挂操作采用不同的机制,登录控制抬得用户会拥有一些相关设备的所有权。

通过网络登录或者使用su命令切换的用户不会被认为是控制台用户。

只有未被使用的文件系统才能被脱挂。文件系统里的文件被打开,系统进程占用文件系统,对被认为是文件系统被使用。

GNOME图形环境下的automounter程序会监控光驱,并自动将插入光盘的光驱挂载到文件系统上。

Linux系统挂载命令是:mount,脱挂命令是:umount。

对磁盘进行低级操作时,最重要的是不要挂载上面的文件系统。

文件查找和定位

在整个文件系统中查找特定文件的命令是:locate和find命令。

/usr/bin/locate是到/usr/bin/slocate的一个符号链接,依靠每天更新的数据库文件来查找,查找速度比find命令快。但是缺点是不能查找最近1天内新增的文件,或者会报告最近删除的失效的文件。

find命令用于根据特定条件在文件系统中查找文件。find命令可以根据多种条件来查找文件,但是不能够根据文件的内容来查找文件。find命令采取的是实时搜索的方式,因此速度比locate命令慢。

通过指定命令选项,可以指定搜索的条件。在指定搜索的条件时可以使用逻辑运算符:-or指定满足一个条件即可,-not指定条件取反。如果没有使用逻辑运算符,表示必须满足所有给定的条件。

可以对搜索到的文件执行指定的操作。如果没有指定操作,默认的是将文件名显示到标准输出设备。

文件压缩

Linux系统和Unix系统最常用的压缩工具是:gzipbzip2。其中bzip2的压缩比更高,但CPU的占用率也更高。gzip压缩的文件可以使用gunzip命令解压缩,bzip2压缩的文件可以使用bunzip2命令解压缩。

文件归档

归档文件包含整个目录树,但是只以一个文件的形式呈现。文件归档命令使用tar命令实现,命令是tape ar chive的缩写。

-c选项用来建立归档文件,-f选项用来指定归档文件的文件名。tar命令可以使用缩写,即不写连字符。

在不使用特定的选项的时候,使用tar命令对文件进行归档后,再将归档文档进行释放时,会将绝对引用转换为相对引用,将归档文件释放到当前目录下。这样是为了避免破坏文件系统中重名的文件。可以使用-P选项来修改这个默认的操作。

选项-t用来释放归档文件。

归档文件通常使用.tar作为扩展名,但是不会自动添加扩展名。

文件后缀名.tar.gz通常缩写为.tgz

文件file-roller是一个图形化的归档管理程序,也可以通过菜单来启用。