Linux文件和目录管理6.1文件系统的概念6.2Linux文件系统的组织方式6.3Linux系统的默认安装目录结束6.4Linux文件系统的类型6.5使用fstab文件挂载文件系统6.6LVM——逻辑卷管理Linux文件和目录管理6.7Linux文件系统的组成6.8创建Linux文件系统6.9Linux文件的类型结束6.10文件和目录的权限6.11文件和目录管理常用命令6.12文件和目录的图形化管理6.13文件和目录管理常见问题6.1文件系统的概念返回结束文件系统(FileSystem)是操作系统用来存储和管理文件的方法。从系统角度来看,文件系统对文件存储空间进行组织、分配,并对文件的存储进行保护和检查。从用户角度来看,文件系统可以帮助用户建立文件,并对文件的读、写和删除操作提供保护和控制。6.2Linux文件系统的组织方式返回结束不同的操作系统对文件的组织方式不同,其所支持的文件系统数量和种类也不一定相同。Linux文件系统的组织方式称做FilesystemHierarchyStandard(文件系统分层标准,简称FHS),即采用层次式的树状目录结构。6.3Linux系统的默认安装目录返回结束按着FHS的要求(关于FHS的详细信息可以登录查询),Linux系统在安装过程中会创建一些默认的目录。这些默认的目录都有其特殊的功能,不可随便将其更名,以免造成系统的错误。6.4Linux文件系统的类型返回结束Linux是一种兼容性很高的操作系统,除了能够挂载各种类型的设备,还可以把其他各种文件系统挂载到Linux系统上。在文件/proc/filesystem文件中列出了系统当前可用的文件系统类型,其中不仅包括UNIX支持的各种文件系统类型,也包括Windows9x/NT/2000/XP文件系统。6.5使用fstab文件挂载文件系统返回结束在Linux系统中与文件系统密切相关的配置文件是/etc/fstab。该文件列出了系统开机启动时自动加载的文件系统类型、安装点及可选参数。/etc/fstab文件在系统安装完毕后会自动建立,也可用编辑器进行手动修改。6.6LVM——逻辑卷管理返回结束LVM(LogicVolumeManagement)为磁盘空间的调整带来了极大的方便,以往在安装RedHatEnterpriseLinux之前,一项重要的工作就是对驱动器空间的划分进行决策,因为一旦划分好就很难重新进行调整。LVM允许在多个不同的文件系统之间重新分配大块的磁盘空间。LVM可以包含多个硬盘分区,如果一个卷耗尽了空间,可以简单地附加上一个新物理卷(例如,一个硬盘分区)来扩展它的容量,而不必重新调整分区大小或创建一个新分区。6.7Linux文件系统的组成返回结束在RedHatEnterpriseLinux5中,系统默认安装的是ext3文件系统。6.8创建Linux文件系统返回结束在创建文件系统之前需要对磁盘空间进行分区处理。6.9Linux文件的类型结束在Linux中文件的类型是通过文件权限的首位定义的,可以分为以下几类:普通文件目录文件套接字文件命名管道设备文件链接文件返回6.10文件和目录的权限6.10.1权限的常规表示6.10.2使用chmod命令进行权限设置结束Linux是一个多用户操作系统,权限管理是实现Linux系统安全的主要途径。6.10.3设置特殊权限返回6.10文件和目录的权限返回6.10.4设置文件或目录的默认权限6.10.5访问控制列表ACL结束6.10.6权限的图形化管理6.10.1权限的常规表示返回在Linux中每一个文件和目录都具有相应的权限6.10.2使用chmod命令权限可以使用命令chmod来为文件或目录赋予权限。返回6.10.3设置特殊权限除了读、写、执行权限之外,在RedHatEnterpriseLinux文件系统中还有类特殊权限,包括set-UID、set-GID以及粘滞位(sticky)。返回6.10.4设置文件或目录的默认权限返回每一个新创建的文件或目录系统都会自动赋于一个默认的权限。可以使用umask命令设置文件或目录的默认权限。6.10.5访问控制列表ACL基于用户和用户组的权限机制奠定了Linux系统安全的基础,但在十几年的使用中也暴露出一些不足,例如权限只能基于用户或用户组进行设定,无法为用户组中的个别几个用户设定不同的权限。为了增加文件或目录权限管理的灵活性,从RedHatEnterpriseLinux3开始,访问控制列表(ACL)被引入到系统中。ACL可以根据需要对用户的权限进行定制,支持标准的ext3文件系统、NTFS文件系统以及Samba文件系统。返回6.10.6权限的图形化管理在RedHatEnterpriseLinux5环境下,如果需要使用X-Window修改一个文件或目录的权限,首先打开Nautilus文件管理器。Nautilus文件管理器与Windows资源管理器类似,可以浏览系统的目录结构,可以查找、打开、移动、复制和删除文件或目录,还可以运行脚本程序。返回6.11文件和目录管理常用命令返回6.11.1文件和目录中的通配符6.11.2ls或dir命令结束6.11.3cd命令6.11.4cp命令6.11.5rm命令6.11.6mkdir命令6.11.7rmdir命令6.11.8mv命令6.11文件和目录管理常用命令返回6.11.9find命令6.11.10grep命令结束6.11.11chown命令6.11.12chrgp命令6.11.13cat命令6.11.14more命令6.11.15less命令6.11.16head命令6.11文件和目录常用命令返回6.11.17touch命令6.11.18sort命令结束6.11.19comm命令6.11.20diff命令6.11.21cut命令6.11.22locate命令6.11.23split命令6.11.24IO重定向及管道操作6.11.1文件和目录操作中常用通配符返回在Linux文件系统中,可以使用通配符来匹配多个选择。6.11.2ls或dir命令ls(list的缩写)命令可以列出当前目录的内容,dir命令是ls命令的一个别名,取directory的缩写。返回6.11.3cd命令cd(ChageDirectory)命令用于更改当前目录,下面是常用的cd命令:Cd:切换到当前用户的主目录cd..:切换到当前目录的上一层目录,例如当前目录为/home/student,使用该命令可以将当前目录移到/home。cd../..:切换到当前目录的上二层目录,例如当前目录为/home/student/student1,使用该命令可以将当前目录移动到/homecd~:切换当前目录为当前用户的主目录,适用于任何用户cd/:切换当前目录到根目录,即返回到/返回6.11.4cp命令返回cp命令用于实现文件或目录的复制,与DOS下的copy命令相似。6.11.5rm命令rm命令用于删除文件或目录,可删除一个目录中的一个或多个文件或目录;也可删除某个目录及其下面的所有文件和子目录。返回6.11.6mkdir命令mkdir命令用于创建目录。返回6.11.7rmdir命令mdir命令用于删除一个空目录。被删除的目录必须是一个空目录否则无法删除。返回6.11.8mv命令mv命令用于实现文件或目录的移动。返回6.11.9find命令返回find命令用于查找文件。6.11.10grep命令grep命令是“globalregularexpressionprint”的缩写,用于在文件中搜索指定的字符串模式,列出含有匹配模式字符串的文件名,并输出含有该字符串的文本行。返回6.11.11chown命令chown命令用于改变文件或目录的拥有者。返回6.11.12chrgp命令返回chgrp允许用户修改文件或目录的所属的用户组,但该用户必须或者是根用户或者同时属于被设置的新的用户组,否则无法修改成功。6.11.13cat命令cat是Concatenate的缩写,用于把一个文件发送到标准输出设备,与DOS或Windows下的type命令相似。cat命令可以对任意一个文件使用,屏幕会一次显示文件的所有内容,中间不停顿,不分屏。返回6.11.14more命令more命令一次显示一屏,若信息未显示完屏幕底部出现“-More-(xx%)”,按Space,显示下一屏内容;按Enter,显示下一行内容;按B,显示上一屏;按Q退出more命令。返回6.11.15less命令less命令和more功能相似,显示文件时允许用户既可以向前又可以向后翻阅文件。向前翻按pageup键,向后翻按pagedown键,退出按q键。返回6.11.16head命令cat命令一次会输出文件的全部内容,而head命令则用于查看文件前面的部分内容。返回6.11.17touch命令返回touch命令用来改变文件的时间戳,如果file文件不存在,则创建该文件。6.11.18sort命令sort命令用于对文件中的所有行进行排序,并将结果显示在屏幕上。返回6.11.19comm命令comm命令对两个已排序文件逐行进行比较,输出结果由3列组成,其中第1列表示仅在第1个文件的行,第2列表示仅在第2个文件出现的行,第3列表示在2个文件中都存在的行。返回6.11.20diff命令diff命令比较两个文本文件,并显示它们的不同。返回6.11.21cut命令cut命令用来移除文件中的部分内容。返回6.11.22locate命令grep命令是“globalregularexpressionprint”的缩写,用于在locate命令用于查找所有名字中包含指定字符串的文件。locate命令是通过已建立的数据库/var/lib/slocate来进行搜所,而不是直接在硬盘当中逐一寻找。因此使用locate比使用find命令更快、更简便。但因为locate是经由数据库来搜寻,而数据库的更新一般是每天一次(多数在夜间进行),所以当数据库更新之前搜寻用户新建立的文件,locate命令是无法查到的。返回6.11.23split命令利用cat命令可以将多个文件的内容合并到一个文件中。与之相反,split命令用于将一个较大的文件拆分成相同大小的几个小文件。返回6.11.24IO重定向及管道操作在Linux系统中,数据流可分为三类:数据输入、数据输出和错误输出。有两种基本的方法可以用来重定向标准输入(stdin)、标准输出(stdout)和标准错误(stderr)。可以利用管道把这些数据流之一输送给另外一条命令;也可以利用I/0重定向把这些数据流之一重定向到一个文件。管道以及I/0重新定向是LinuX系统中特有的概念。所谓管道是指将某个命令的输出结果传送到另一个命令,当成另外一个命令的输入,其代表符号是“|”。所谓I/0重定向是指将命令执行的结果重新导出到其他的设备或文件(以“”或“”来表示),或是重新导入到其他的设备或文件(以“”或“”来表示)。返回6.12文件和目录图形化管理返回6.12.1启动Nautilus文件管理器6.12.2打开文件和目录结束在RedHatEnterpriseLinux5的GNOME桌面环境中,采用了Nautilus文件管理器来实现对文件和目录的管理。6.12文件和目录图形化管理返回6.12.5文件和目录的移动/复制/链接6.12.6修改文件和目录的属性结束6.12.3书签6.12.4文件和目录的操作6.12.7使用软盘、光盘等可移动介质6.12.1启动Nautilus文件管理器返回Nautilus文件管理器可以通过使用下面的任一方法启动:从【位置】菜单中选择【主文件夹】或【root】。双击桌面上的用户主目录。双击桌面上的软盘或光盘图标。双击桌面上的【计算机】图标。在终端窗口中输入“Nautilus”命令。6.12.2打开文件和目录在Nautilus主窗口中双击一个文件夹,可以在一个新窗口中打开该文件夹,显示该文件