版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第5章 目录和文件的操作 内容简介 本章主要介绍目录和文件的概念以及操作。在Linux系统中,掌握目录和文件的基本概念,理解文件的组织结构,这对于从整体上了解Linux系统的概貌,研究Linux系统的细节,进而有效地使用Linux系统是很有帮助的。目录和文件命令是Linux系统中重要的命令之一,种类不但比DOS系统多,而且功能也比DOS系统强大。 学习内容 目录和文件的概念;目录和文件的访问权限;目录和文件的操作。 学习重点 目录和文件访问权限的设置;目录和的文件的操作。 学习目标 了解目录和文件的概念;熟练地设置目录和文件的访问权限;熟练掌握目录和文件的操作。 学习建议 在本章的学习中,要注
2、意与DOS命令的区别,要把学习的重点放在操作上,通过操作掌握命令的应用。另外,Linux系统中的目录和文件有自己独特的概念,要与DOS系统作区别。,5.1 目录的基本概念 在计算机系统中存有大量的文件,如何有效的组织与管理它们,并为用户提供一个使用方便的接口是文件系统的一大任务。Linux系统以目录的方式来组织和管理系统中的所有文件。 【案例简介】 通过操作显示目录命令,观察Linux系统的目录树结构。在系统终端的提示符后输入命令ls -aF。 【操作步骤】 (1)启动系统终端,输入如下命令: ls -aF (2)命令执行结果如下所示所示: rootlocalhost # cd . rootl
3、ocalhost /# ls -aF ./ boot/ initrd/ media/ proc/ srv/ usr/ ./ dev/ lib/ mnt/ root/ sys/ var/ .autofsck etc/ lost+found/ mycomputer/ sbin/ tftpboot/ bin/ home/ .mcop/ opt/ selinux/ tmp/ rootlocalhost /# 【案例小结】 在ls 命令后加上参数-a,表示显示所有的目录和文件,包括隐含文件。加-F表示显示该文件的类型。,【知识要点】 5.1.1 树型目录结构 Linux系统是采用树型目录结构来管理文件的
4、。也就是说,整个文件系统有一个“根”(root),然后在根上分“杈”(directory),任何一个分杈上都可以再分杈,杈上也可以长出“叶子”。“根”和“杈”在Linux系统中被称为“目录”或“文件夹”。而“叶子”则是一个个的文件。案例运行结果所展示的就是树型目录结构的全景,这种结构的文件系统效率比较高。Linux系统中,目录也是文件的一种形式。通过目录将系统中所有的文件分级、分层组织在一起,就形成了Linux文件系统的树型层次结构。以根目录为起点,所有其它的目录都由根目录派生而来。用户可以浏览整个系统,可以进入任何一个已授权进入的目录,访问那里的文件。 树型目录结构提供了管理文件的一个方便途
5、径。每个目录里面都包含文件。用户可以为自己的文件创建自己的目录,也可以把一个目录下的文件移动或复制到另一目录下。此外,不但能够移动整个目录,而且还能和系统中的其它用户共享目录和文件。也就是说。用户能够方便地从一个目录切换到另一个目录,可以设置目录和文件的管理权限,以便允许或拒绝其它人进行访问。文件目录结构的相互关联性使分享数据变得十分容易,几个用户可以访问同一个文件,因为Linux系统允许用户设置文件的共享程度。 需要说明的是,根目录(系统目录)是Linux系统中的特殊目录。Linux是一个多用户系统,操作系统本身的驻留程序存放在以根目录开始的专用目录中。如图5.1所示的是Linux系统树型目
6、录结构。,Linux系统的树型目录结构,从图 5.1可以看出,每个用户都有自己的个人主目录,用来存放属于自己的个人文件。用户的个人目录一般放在系统的目录/home下,并以目录所有者的名字来命名。例如,yang的个人目录是/home/yang,属于它的所有文件,如程序、文档、数据文件等都存放在该目录中。 5.1.2 根目录和子目录 实际上,各个目录结点“之下”都会有一些文件和子目录。并且,系统在建立每一个目录时,都会自动为它设定两个目录文件,一个是“.”,代表该目录自己,另一个是“.”,代表该目录的父目录,对于根目录,“.”和“.”都代表其自己。 从图5.1中还可以看到, 在Linux树型目录结
7、构中,根目录的第一级子目录是:bin、boot、dev、etc、home、lib、1ostfound、mnt、proc、root、sbin、temp、usr、var等。,下面介绍这些主要的子目录。 1. /bin bin是二进制(binaries)的缩写。许多基本的系统程序都驻留在/bin目录中,用下列命令可以列出该目录下的文件: ls F /bin 其中包含许多我们所熟悉的命令,如cp、ls和mv等。在某种意义上说,这些命令都是程序。例如,键入cp命令时,系统就运行程序/bin/cp。 2. / boot 该目录用于存放供lilo使用的一些文件。 3. /dev 用1s -F命令可以列出/d
8、ev目录中的内容。该目录下是一些称为设备驱动程序的特殊文件,用于访问系统资源或设备,如软盘、硬盘、CD-ROM、调制解调器、系统内存等。 有了这些文件,用户可以像访问普通文件一样方便地访问系统中的物理设备。例如,当用户要从一个文件中读数据时,可以通过调用/dev/mouse文件从鼠标器读取输入信息。在/dev目录下,各种设备所对应的特殊文件以一定的规则命名。例如,/dev/fd0文件指第一个软驱,/dev/fdl指第二个软驱,/dev/hda指第一个硬盘,而/dev/hdal指的是/dev/hda的第一个分区,如此类推。 4. /etc 包含系统管理所需要的大量配置文件和子目录,例如口令文件/
9、etc/passwd、系统初始化脚本文件/etc/rc等。该目录是系统中最重要的目录之一。,5. /home 包含所有用户的个人主目录。通常,用户的个人主目录以它的名字来命名,例如/home/yang是用户yang的个人目录。在新安装的Linux系统中,/home目录中可能没有任何用户。 6. /lib 该目录包含动态链接共享库的文件映象,这些文件为众多程序提供了共享代码。使用库文件,可以缩小可执行文件的尺寸,节省系统空间。 7. /lost+found 这是一个空目录,只有当文件系统发生故障时,才用来存放找不到正确存储位置的文件。 8. /mnt 用户可以在该目录下临时挂装其它文件系统,如在
10、使用CD-ROM时,就要把CD-ROM文件挂装在该目录下。 9. /proc 这是Linux系统提供的一个“虚拟文件系统”,其中的文件都存放在内存中,而不是存放在磁盘中。它们指向在系统中正在运行的各个进程,以便用户可以随时访问程序的运行信息。 10 /root 超级用户的主目录。 11. /sbin 专门用来存储系统管理员使用的可执行文件,如mount、fack等等。,12. /tmp 程序执行时会产生一些临时信息,系统把这些临时信息存放在一个暂时文件中,这个临时文件就放在/tmp目录下。 13. /usr 这是一个非常重要的目录,它包括许多子目录。有些子目录用来存放系统的配置文件和重要的大型
11、软件包程序。前面讨论到的各目录对系统的操作来说是最基本的,而在/usr中许多内容是可以任选的。如果没有/usr目录,系统中将只有cp、1s等程序,这样的系统会非常难用。 14. /var 该目录用来容纳大小经常发生变化或打算进一步扩充的目录或文件。例如,文件/var/adm中包含着系统管理员感兴趣的内容,特别是系统日志,它记录了系统的所有错误或问题。 5.1.3 工作目录、用户主目录与路径如前所述,目录是Linux系统中的一种特殊文件。为更好地使用目录,现介绍有关目录的一些基本概念。 1. 工作目录与用户主目录 从逻辑上讲,用户在登录到Linux系统之后,每时每刻都处在某个目录之中,此目录被称
12、为工作目录或当前目录(Working Directory),工作目录是可以随时改变的。用户初始登录到系统中时,就进入其主目录(Home Directory),这时的主目录就成为其工作目录。工作目录用“.”表示,其父目录用“.”表示。,用户主目录是系统管理员增加用户时建立起来的(以后也可以改变),每个用户都有自己的主目录,不同用户的主目录一般互不相同。目录层次建立好之后,用户就可以把有关的文件放到相应的目录中,从而实现对文件的组织。2. 路径 (Path)顾名思义,路径是指从树型目录中的某个目录层次到某个文件的一条道路。此路径的主要构成是目录名称,中间用“/”分开。任一文件在文件系统中的位置都是
13、由相应的路径决定的。 用户在对文件进行访问时,要给出文件所在的路径。 路径又分相对路径和绝对路径。 绝对路径是指从“根”开始的路径,也称为完全路径;相对路径是从用户工作目录开始的路径。 应该注意的是,在树型目录结构中到某一确定文件的绝对路径和相对路径均只有一条。绝对路径是确定不变的,而相对路径则随着用户工作目录的变化而不断变化。这一概念清晰了,对于以后使用某些命令如cp和tar等大有好处。 用户要访问一个文件时,可以通过路径名来引用。并且可以根据要访问的文件与用户工作目录的相对位置来引用它,而不需要列出这个文件的完整的路径名。,【技能训练】 训练内容 显示各子目录的详细信息。 训练步骤 (1)
14、启动系统终端,输入如下命令: ls -al (2)命令执行结果如下所示: rootlocalhost /# ls -al 总用量 288 drwxr-xr-x 25 root root 4096 2月 19 13:01 . drwxr-xr-x 25 root root 4096 2月 19 13:01 . -rw-r-r- 1 root root 0 2月 19 13:01 .autofsck drwxr-xr-x 2 root root 4096 2月 2 14:49 bin drwxr-xr-x 3 root root 4096 2月 2 14:53 boot .,5.2 文件系统的基本
15、概念 Linux系统中的文件概念和使用方式都沿袭了UNIX操作系统,而DOS系统又有很多概念是从UNIX中学来的,因而可以借鉴UNIX和DOS操作系统的一些概念来理解Linux系统中的目录和文件的概念。Linux系统中的一个显著特点,就是能够支持相当多的文件系统。 【案例简介】 通过操作文件链接的命令,学习文件系统的概念。 1.用命令cat创建一个名为lianjie的文件,并用ls命令确认。 2. 用命令ls -li检查lianjie文件索引点号和链接数。 3. 用命令ln为文件lianjie创建名为lianjie1的链接,并确认。 4.用命令ls -li检查lianjie1文件索引点号和链接
16、数。 【操作步骤】 1 (1)启动系统终端,分别输入如下命令: cat lianjie ls (2)命令执行结果如下所示: rootlocalhost # cat lianjie 12334 rootlocalhost # ls anaconda-ks.cfg install.log jincheng mulu shuchu Desktop install.log.syslog lianjie Pictures 抓图1.jpg,2 (1)启动系统终端,输入如下命令: ls -li lianjie (2)命令执行结果如下所示: rootlocalhost # ls -li lianjie 192
17、133 -rw-r-r- 1 root root 5 2月 7 19:34 lianjie 3 (1)启动系统终端,输入如下命令: ln lianjie lianjie1 (2)命令执行结果如下所示: rootlocalhost # ln lianjie lianjie1 rootlocalhost # ls anaconda-ks.cfg install.log jincheng lianjie1 Pictures 抓图1.jpg Desktop install.log.syslog lianjie mulu shuchu 4 (1)启动系统终端,输入如下命令: ls -li lianjie
18、1 (2)命令执行结果如下所示: rootlocalhost # ls -li lianjie1 192133 -rw-r-r- 2 root root 5 2月 7 19:34 lianjie1,5.2.1 文件系统的组成 如果从文件系统所包含的内容来看,Linux系统中的文件有如下三种类型: 1. 普通文件 这是用户经常面对的文件,是字节的集合,系统没有在文件中加入特定的结构. 它又分为文本文件和二进制文件。 (1)文本文件:这类文件以文本的ASCII码形式存储在计算机中。它是以“行”为基本结构的一种信息组织和存储方式。 (2)二进制文件:这类文件以文本的二进制形式存储在计算机中,用户一般
19、不能直接读懂它们,只有通过相应的软件才能将其显示出来。二进制文件一般是可执行程序、图形、图像、声音等等。 2. 目录文件 目录文件主要是用于管理和组织系统中的大量文件。目录文件好比一个容器,它存储一组相关文件的位置、大小等与文件有关的信息。目录文件往往简称为目录。 3. 特殊文件 这是Linux(UNIX)系统的一大特色。Linux系统把每一个I/O设备都看成一个文件,与普通文件一样处理,这样可以使文件与设备的操作尽可能统一。从用户的角度来看,对I/O设备的使用和一般文件的使用一样,不必了解I/O设备的细节。设备文件可以细分为块设备文件和字符设备文件。前者的存取是以一个个字符块为单位的,后者则
20、是以单个字符为单位的。,5.2.2 文件的链接 为方便地使用和管理文件,给文件起名字是有效的方法。Linux系统为每一个文件创建了一个链接文件以表征该文件的另一个名字,链接文件中不存储原来文件的数据,但通过链接文件可以引用原文件的数据。对于这个链接文件名,可以为它指定不同的访问权限,以控制信息的共享和安全性的问题。 文件的链接是Linux文件管理的重要概念。由于DOS系统过于简单,不可能有清晰的文件链接的概念。到了Windows的年代,产生了广为使用的快捷方式。到Windows NT的时候,微软逐步加入了对硬链接的支持。但是,它们和Linux系统中文件链接的概念还是有一定的差别。 链接文件又分
21、为硬链接和软链接。 1. 硬链接 在磁盘上有一个数组,它的每一个元素称为一个索引结点(inode),保存着某一个文件的管理信息(如该文件的创建时间、文件的所有者、文件数据块在磁盘分区的存储位置等等)。同时,系统为存储在磁盘分区中的每一个文件分配一个号码,称为索引结点号,用来索引上述数组所保存的对应文件记录。一个文件的索引结点号与该文件的名称同时保存在目录中,形成一张联系文件名及文件索引结点号的表。在目录中,每一对文件名和索引结点号称为一个链接(link)。 因此,同一个索引结点号可以与多个文件名建立链接,即允许一个文件拥有多个有效的路径名和文件名,如图5.2所示。,文件的硬链接,这一功能十分有
22、用,例如,用户可以为重要的文件或目录建立多个链接,以防误删除造成严重后果。因为一个文件(或目录)的索引结点有一个以上的链接,删除操作只能破坏其中之一的索引点,而其它索引结点本身的其它链接仍然不受影响。当然,如果对只有一个链接的文件发出删除命令,索引结点、文件的数据块与目录的链接会被释放,文件也真正被删除。 在案例中执行的结果192133 -rw-r-r- 1 root root 5 2月 7 19:34 lianjie 中,其中的192133就是文件的索引结点号,而1则代表只有个链接文件。,在另外一条案例执行结果 192133 -rw-r-r- 2 root root 5 2月 7 19:34
23、 lianjie1中,可以看到已经有了2个链接文件。 现在,访问lianjie或lianjie1都是访问同一个文件。如果用户对lianjie进行修改,那么lianjie1也同样改变。 从这个角度来看,lianjie和lianjie1都是同一个文件,如果用命令rm删除文件时,实际上只删除了一个文件链接。例如,删除了lianjie文件, 而文件lianjie1仍然存在。 一个文件只有在没有任何文件链接时才被真正删除。通常情况下,每个文件只有一个链接,所以运行rm命令就可以删除。但是,如果一个文件有多个链接的话,要删除这个文件,就必须删除该文件的所有链接。 然而,硬链接有两个主要的局限:第一,只能给
24、文件建立硬链接,而不能给目录建立硬链接。即使是系统给目录创建的硬链接,也不允许任何用户另外创建自己的硬链接;第二,不能跨文件系统。如 / 和 /usr 存在于不同的文件系统,就不能创建从 /usr/bin/bash 到 /bin/bash 的链接。 2. 软链接 从上面的讨论可知,如果要在不同文件系统的路径名之间建立链接,就不能使用硬链接共享索引结点的方式,而要采用软链接(symbolic link)。,所谓软链接,是一种在DOS系统下不存在的特殊的文本文件,其中包含着它提供链接的另一个文件的路径名,实际的数据信息则包含在另一个文件中。软链接可以看作指向一个文件或目录的指针,用来替代它所指向的
25、文件或目录,与Windows 系列中的快捷方式相似。例如,用软链接/usr/Xll指向/usr/X11R6,/dev/modem指向/dev/cua0或/dev/cua1。执行命令时,如果涉及软链接,则沿链接去访问包含实际数据的文件。 实际上,软链接比硬链接更常用到。软链接是一种专门的文件类型,在这种文件类型中,链接通过名称引用另一个文件,而不是直接引用索引节点。软链接不阻止文件被删除;如果目标文件消失,那么软链接仅仅是不可用,或“被破坏”。 要建立软链接,主要增加一个参数 -s就可以了。例如,对案例中的lianjie建立软链接lianjie2,可以输入如下的命令: rootlocalhost
26、 # ln -s lianjie2 anaconda-ks.cfg ext9 jineng2 while1 benfen for1 jinneng -while xun_ji1 bin for1 lianjie2 xun_ji1 从命令执行的结果中可以看到,lianjie2的软链接已经建立,而没有索引结点的。 总之,软链接不仅可以用于单一的文件系统内部,也可用于多个文件系统之间,而索引结点链接只能用在一个文件系统的内部。因此,在两个文件之间建立链接,如果要求保证可移植性,应尽量使用软链接。,3建立文件链接命令ln 从上面的叙述中可以看到,建立文件链接是通过命令ln来完成。 命令格式 ln 选项
27、 源文件 目的文件,【技能训练】 训练内容 1. 在当前目录下,创建一个文件名为“exl”的文件,并确认其链接数,输入的内容如下: 1234 2. 建立文件ex1的链接文件ex2,并确认它们的索引结点、链接数和内容是否相同。 3. 向文件 exl追加“56789”的内容,并确认文件ex1和ex2的内容是否相同。 4. 删除文件 exl,确认其索引结点、链接数和内容。 训练步骤 1 (1)启动系统终端,分别输入如下命令: cat ex1 ls -il ex1 (2)命令执行结果如下所示: rootlocalhost # cat ex1 1234 rootlocalhost # ls -il ex
28、1 290828 -rw-r-r- 1 root root 5 2月 19 16:13 ex1,2 (1)启动系统终端,分别输入如下命令: ln -il ex1 ex2 cat ex1 ex2 (2)命令执行结果如下所示: rootlocalhost # ls -il ex1 ex2 290828 -rw-r-r- 2 root root 5 2月 19 16:13 ex1 290828 -rw-r-r- 2 root root 5 2月 19 16:13 ex2 rootlocalhost # cat ex1 ex2 1234 1234 3 (1)启动系统终端,分别输入如下命令: cat e
29、x1 cat ex1 ex2 (2)命令执行结果如下所示: rootlocalhost # cat ex1 56789 rootlocalhost # cat ex1 ex2 1234,56789 1234 56789 4. (1)启动系统终端,分别输入如下命令: rm ex1 ls -il ex2 cat ex2 (2)命令执行结果如下所示: rootlocalhost # rm ex1 rm:是否删除一般文件ex1? y rootlocalhost # ls -il ex2 290828 -rw-r-r- 1 root root 11 2月 19 16:18 ex2 rootlocalho
30、st # cat ex2 1234 56789,5.3 目录和文件的访问权限 Linu系统给各个目录和文件都设置了一定的访问权限,以便用户保护自己的目录和文件不受损害。这些访问权限并不是不可改变的,它可以通过系统命令chmod来改变,但只能在相应的访问权限下进行。 【案例简介】 通过运行几个有关访问权限的命令,学习目录和文件访问权限的设置。 1. 在/home目录下,用useradd命令创建一个quanxian的用户。 2.用ls -dl命令确认quanxian用户的权限。 3. 用chmod a+r+w命令把权限修改成向所有人开放读和写,并用命令ls -l确认。 4. 用命令chmod 75
31、5把权限修改成向所有人开放读和写,并用命令ls -l确认。 【操作步骤】 1 (1)启动系统终端,输入如下命令: useradd quanxian (2)命令执行结果如下所示: rootlocalhost # useradd quanxian,2 (1)启动系统终端,输入如下命令: ls -dl /home/quanxian (2)命令执行结果如下所示: rootlocalhost # ls -dl /home/quanxian drwx- 10 quanxian quanxian 4096 2月 7 20:02 /home/quanxian 3 (1)启动系统终端,分别输入如下命令: chm
32、od a+r+w /home/quanxian ls -l /home/quanxian (2)命令执行结果如下所示: rootlocalhost # chmod a+r+w /home/quanxian rootlocalhost # ls -l /home/quanxian drwxr-xr-x 3 quanxian quanxian 4096 2月 7 20:02 Desktop,4 (1)启动系统终端,分别输入如下命令: chmod 755 /home/quanxian ls -l /home/quanxian (2)命令执行结果如下所示: rootlocalhost # chmod
33、755 /home/quanxian rootlocalhost # ls -l /home/quanxian drwxr-xr-x 3 quanxian quanxian 4096 2月 7 20:02 Desktop rootlocalhost # 【案例小结】 命令chmod 是用于改变访问权限的。通过不同的选项组合,就可以赋予不同的权限。,5.3.1 目录和文件的三种用户类型 对于一个文件(目录也是一种特殊的文件)来说,文件的访问权限限制了不同用户对文件进行不同的读、写、执行权利。在Linux操作系统中,用户可分为3类: 1属主:即目录和文件的拥有者。谁建立了目录和文件,谁就对这个目录
34、和文件拥有绝对的权利。只有超级用户(即系统管理员)和属主才能改变目录和文件的访问权限。当然,目录和文件的属主也是可变的,但只有超级用户才有权限改变。 2工作组:即属主所在的工作组。工作组内的用户都能对文件进行读、写和执行。此时,这些文件的用户就不仅仅是属主,而是包括本工作组内的所有用户。 3一般用户:即每个在系统中注册和操作的人。有些无关紧要的文件或者大家共享的文件,可以给每一个用户使用。 5.3.2 目录和文件的三种访问权限 由于目录和文件的用户不同,所以不同用户所拥有的权限也不尽相同。目录和文件对每个用户的许可权限也不同。对目录和文件来说,用户所拥有的许可权限共有三种:读许可权限、写许可权
35、限和执行许可权限,统称为访问权。 1读许可权限:对于文件来说,可以查看文件的内容;对于目录来说,允许列出目录的名称并能从该目录中复制文件。,2写许可权限:对于文件来说,就是指可以改变文件的内容;对于目录来说,就是指允许改变目录的名称、建立目录、删除目录、把别的目录的文件复制到本目录下等。 3执行许可权限:对于文件来说,可以像运行一个程序那样运行文件,文件名就是命令名;对于目录来说,允许使用cd命令进入本目录并把该目录当成当前的工作目录。 由此可以看出,3种用户类型,每种用户又有3种不同的访问权限,所以文件的访问权限应该有9种。在Linux操作系统中,采用和UNIX操作系统一样的表达方法,通常把
36、这9种访问权限的顺序排列如图5.3所示。,用户与权限,各个字母表示的意义如下: r 表示用户对于该目录和文件有读许可权限。 w 表示用户对于该目录和文件有写许可权限。 x 表示用户对于该目录和文件有执行许可权限。,通常,这9种访问权限出现在ls命令 -l参数执行后的长列表格式中。 例如,上面的案例运行结果中, drwxr-xr-x 3 quanxian quanxian 4096 2月 7 20:02 Desktop 访问权限位于最左边的域。在这个域中,共有10位字母。除了这9位访问权限之外,第一位用于表示文件的类型。下面列出不同的文件类型所使用的不同字符: - 普通文件。 D 小目录文件。
37、块设备文件。 c 字符设备文件。 1 符号链。 P 管道特别文件。 在文件访问权限字段中,除了r,w,x之外,有时还出现其它一些字符。例如,在属主或工作组中的x位置上出现s。这个s主要是针对程序员和系统管理员的一种特殊类型的执行权限。从一般用户的观点来看,s和x没什么差别。除s之外,还可以在r,w,x出现的位置上现1 (locked加锁),这意味着该文件在被访问时被加锁,从而使其它用户不能访问该文件。,5.3.3 目录和文件三种访问权限的改变 在Linux系统中,当目录和文件一旦被建立时,它的访问权限就被确定了。例如,某属主建立了文件,则文件的访问权限是-rwr-r- -;而目录的访问权限是d
38、rwxr-xr-x,这两个访问权限是系统的默认值给出的。当然,该默认值是可改变的,而这个改变的权限只能是属主和超级用户。 1目录和文件访问权限的设置 文件属主和超级用户可以使用命令chmod来设置属主自己的、属主所在的小组及系统中其它用户对文件进行访问的权限。在使用命令chmod时,首先要指定哪一类用户的权限需要改变。 命令格式 chmod 选项 文件名,2改变目录和文件访问权限的两种方式 (1)用字符方式改变目录和文件的访问权限 用下列的字母表示不同的用户: u 表示属主 g表示属主所在的工作组 0表示一般用户 a表示所有的人,包括属主,工作组和一般用户。 改变访问权限的方式有两种:增加和减
39、少。 + 增加用户的权限 - 减少用户的权限 命令chmod的另一种格式 chmod 用户+增加(-减少)访问权限 文件名(目录名) 这里,要注意的是:在“用户+增加(减少)访问权限”之间,应该是连续的,不能有空格存在,否则系统不能识别。 下面以具体的目录和文件为例,介绍命令chmod的使用。 例1 假设当前目录word1的访问权限是drwx- ,即只有属主和系统管理员才能进行有关操作,现在要让整个工作组的成员能够进行读、写和执行的权限,则命令为: chmod g+rwx word1,例2 假设文件operation1的访问权限是-rwxrwxrwx,现在想让属主可写和可执行,其它用户只有读的
40、权限,则命令为: chmod go-wx operation 例3 假设文件operation2的访问权限是-rw-r- -,现在想让所有的用户都拥有可执行的权限,则命令为: chmod a+x operation2 例4 假设当前目录下有2个子目录Word1和Word2,它们的访问权限分别是:drwx-w-、和drwrwrw -,现在想让所有的用户都能执行,即任何一个用户都能把它们当成当前的工作目录,则命令为: chmod a+x word1 word2 (2)用数字方式改变目录和文件的访问权限 对目录和文件的9种访问权限来说,每一种的权限都对应着一种数字模式。在rwxrwxrwx的每个位置
41、上,可以用“1”表示具有访问权限,“0”表示没有访问权限。每3位对应1个八进制数。例如rw- r- r-,可以用如下的式子来表示: r w - r - - r - - 1 1 0 1 0 0 1 0 0 二进制数 6 4 4 8进制数 又如:-rwxr-xr-x r w x r x r - x 1 1 1 1 0 1 1 0 1 二进制数 7 5 5 8进制数,根据以上的推导,可以得到如下的权限与数字的对应关系:,由于每一个文件或目录的访问权限的数字模式都是由各用户的各个权限值相加组成的,所以,一个文件或目录的最大值为777。 使用数字模式的好处是用户不需要知道原来的访问权限,只需给出要改变权
42、限的数字值即可。 例5 要把文件Work1的访问权限改成-rwxr-x - - -,命令格式为: chmod 750 workl 例6 要把文件Work2的访问权限改成-r-r-,命令格式为: chmod 440 work2,【技能训练】 训练内容 创建新用户 yang3和 yang4( 口令自定),然后完成下列的操作: 1. 用root登录,创建新用户yang3、yang4,并观察它们的权限。 2. yan3和yang4目录下分别创建test1和test2的文本文件,并观察各文本文件的权限。 3. 从root用户转到yang3用户,并显示test1文件和test2文件的内容,以检查yang3
43、是否具有阅读test2文件的权限。 4. 从用户yang3转向用户yang4,修改yang4的权限,并显示用户yang4的权限。 5. 从用户yang4转向用户yang3,显示test2文件的内容。 训练步骤: 1 (1)启动系统终端,分别输入如下命令: useradd yang3 passwd yang3 useradd yang4 passwd yang4 ls -l /home,(2)命令执行结果如下所示: rootlocalhost # useradd yang3 rootlocalhost # passwd yang3 New UNIX password: Retype new UN
44、IX password: rootlocalhost # useradd yang4 rootlocalhost # passwd yang4 New UNIX password: Retype new UNIX password: rootlocalhost # ls -l /home drwx- 10 yang3 yang3 4096 2月 23 10:49 yang3 drwx- 10 yang4 yang4 4096 2月 23 10:50 yang4 2 (1)启动系统终端,分别输入如下命令: cat /home/yang3/test1 file:test1 cat /home/ya
45、ng4/test2 file:test2 ls -l /home/yang3/test1 /home/yang4/test2,(2)命令执行结果如下所示: rootlocalhost # cat /home/yang3/test1 file:test1 rootlocalhost # cat /home/yang4/test2 file:test2 rootlocalhost # ls -l /home/yang3/test1 /home/yang4/test2 -rw-r-r- 1 root root 11 2月 23 11:01 /home/yang3/test1 -rw-r-r- 1 r
46、oot root 11 2月 23 11:02 /home/yang4/test2 3 (1)启动系统终端,分别输入如下命令: su yang3 cat /home/yang3/test1 file:test1 cat /home/yang4/test2 (2)命令执行结果如下所示: rootlocalhost # su yang3 yang3localhost root# cat /home/yang3/test1 file:test1 yang3localhost root# cat /home/yang4/test2 cat: /home/yang4/test2: 权限不够,4. (1)
47、启动系统终端,分别输入如下命令: su yang4 chmod o+rwx /home/yang4 ls -l /home/yang4 (2)命令执行结果如下所示: yang3localhost root$ su yang4 Password: yang4localhost root$ yang4localhost root$ chmod o+rwx /home/yang4 yang4localhost root$ ls -l /home/yang4 drwxr-xr-x 3 yang4 yang4 4096 2月 23 10:50 Desktop -rw-r-r- 1 root root 1
48、1 2月 23 11:02 test2 5 (1)启动系统终端,分别输入如下命令: su yang3 cat /home/yang4/test2 (2)命令执行结果如下所示: yang4localhost root$ su yang3 Password: yang3localhost root$ cat /home/yang4/test2 file:test2,5.4 目录操作命令 与DOS系统一样,Linux系统也有目录和文件的操作命令,这些命令的格式与DOS相类似。然而,Linux系统里的目录和文件的命令却丰富得多。这里介绍几个重要的目录操作命令,其它的操作命令请参考有关的手册。 【案例简
49、介】 通过运行几个有关目录的命令,学习目录操作命令的应用。 1. 用pwd命令显示当前的路径。 2. 用mkdir命令在当前目录下创建名为mulu的目录,再用ls命令确认。 3. 用cp命令在当前目录下复制目录mulu,并改名为mulu1,再用ls命令确认。 4. 用rmdir命令删除目录mulu1,再用ls命令确认。 【操作步骤】 1 (1)启动系统终端,输入如下命令: pwd (2)命令执行结果如下所示: rootlocalhost # pwd /root,2 (1)启动系统终端,分别输入如下命令: mkdir mulu ls (2)命令执行结果如下所示: rootlocalhost #
50、mkdir mulu rootlocalhost # ls anaconda-ks.cfg install.log jincheng Pictures 抓图 1.jpg Desktop install.log.syslog mulu shuchu 3 (1)启动系统终端,分别输入如下命令: cp -R mulu mulu1 ls (2)命令执行结果如下所示: rootlocalhost # cp -R mulu mulu1 rootlocalhost # ls anaconda-ks.cfg install.log jincheng mulu1 shuchu Desktop install.l
51、og.syslog mulu Pictures 抓图1.jpg,4 (1)启动系统终端,分别输入如下命令: rmdir mulu1 ls (2)命令执行结果如下所示: rootlocalhost # rmdir mulu1 rootlocalhost # ls anaconda-ks.cfg install.log jincheng Pictures 抓图1.jpg Desktop install.log.syslog mulu shuchu 【案例小结】 在Linu系统中,目录的操作必须要有相应的权限。命令mkdir和rmdir在目录操作中,是最常用的命令。,【知识要点】 5.4.1. 显示
52、当前目录路径命令pwd Linux系统中所有的信息都是以文件的方式进行操作的。目录也是一种文件,称作目录文件。 在Linux系统中,大多数命令都是针对当前工作目录的。当用户不能肯定自己的确切位置时,可以使用pwd命令。该命令的功能是在屏幕上显示出当前目录的路径名。 命令格式 pwd 选项,假设用户用han注册后,进人工作目录work1,键入pwd命令,屏幕显示出包含主目录在内的完整路径名, # pwd /home/han/yang1,5.4.2 改变目录路径命令cd Linux系统和DOS系统一样,也用命令cd来改变目录路径。 命令格式 cd 1回到根目录 在任何时候,用户都可以用cd /和c
53、d回到根目录,但这两个命令还是有区别的. 例1 试比较cd /和cd。 # pwd /home/han/yang1 # cd / pwd / 又如 # pwd /home/han/yang1 # cd pwd /home/han 从上面的两个例子可知:cd /是回到根目录root下,而cd是回到用户注册的目录下。,2回到上一层目录(父目录) 如果用户想从当前目录回到上一层目录去,可以利用cd .实现。 例2 假设当前目录是/home/han,而用户想回到目录/home,只需键入cd .即可。 # pwd /home/han # cd . # pwd /home cd和.之间要有空格,否则系统将
54、会无法识别该命令,如下所示: # cd. bash: cd.: command not found # 3进入下一层目录(子目录) 如果用户想从当前工作目录到下一层目录去,只需键入cd和目录名即可。 例3 假设当前目录是根目录/,用户要进入到etc目录去。 # pwd / # cd etc,4到其它目录 在cd后面键入要去的目录的全路径,就能从当前目录转到要去的目录。 例4 假设当前目录是/bin,用户要转到目录/home/wang/documents。 # pwd /bin # cd /home/wang/documents 5.4.3 创建目录命令mkdir 在创建目录时,用户必须对该目录
55、具有写权限。系统管理员在为用户建立账号的同时,也为用户建立了一个目录。用户用此账号注册后,就可以在自己的目录下进行各种操作,包括建立自己的子目录和文件。 命令格式 mkdir 选项 目录名,1在当前目录下创建目录 例1 假如用户想在当前目录下建立一个名字为class的目录。 # mkdir class # ls -l -rw-r-r- 1 han adm 5730 Ney 15 20:03 prinier drwxr-xr-x 2 han adm 1024 Dec 5 23 : 17 class 此命令除了建立目录class之外,还在此目录下自动建立“”(表示目录自身)和“”(表示其父目录)的
56、登记项。 2通过全路径名在其它目录下创建目录 如果用户拥有建立目录的权限,就可以在不改变当前工作目录的情况下,在其它的目录下面创建新目录。 例2 例如用户现在的目录是/home/han,想在/home/wang目录下再建立一个cowork2的目录。 # ls /home/wang wgroupl wgroup2 coyang1 # mkdir /home/wang/cowork2 # ls /home/wang wgroupl wgroupZ coyang1 coworkZ # pwd /home/hazi #,3同时建立两个以上的目录 如果需要同时建立好几个目录,只需在建立目录命令mkdir
57、后加上这些目录的全路径和目录名即可,不同目录之间要有空格。如果是在当前目录下,则不需要键入全路径。 例3 想在/home/han/word目录下建立目录work1、work2和work3。 # pwd /home/han/word # mkdir workl work2 work3 # ls workl work2 work3 4一次建立多层次目录 如果需要一次性建立多层目录,只需在建立目录命令mkdir后面加上这些目录的名字,并按用户的需要排好序列即可。 例4 想在目录/home/han下建立一个名为exam1的目录,并在该目录下再建立一个exam2的目录。 # ls group4 # mkdir exam1 exam1/exam2 # ls examl group4 # ls examl exam2,5建立目录的权限 建立目录命令mkdir的参数不多,其中常用的就是建立目录的同时为目录设立权限。命令格式 mkdir m 权限值 目录名 例5 想在当前目录/home/han下建立只有自己才能进行读、写、执行的目录super。 # mkdir -m 700 super # ls -l drwx - - - - - - 2 han adin 1024 Dec 16 1 : 3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年工厂安全培训考试试题及答案
- 2026浙江宁波能源集团股份有限公司第一批招聘20人考试备考试题及答案解析
- 2026年中国船舶集团有限公司校园招聘考试模拟试题及答案解析
- 2025-2026学年人教版七年级历史下册中国古代史综合练习卷(含答案)
- 2026年中国江苏国际经济技术合作集团有限公司校园招聘考试备考试题及答案解析
- 甘肃省定西市英才高级中学2022-2023学年高二上学期期末考试英语试题
- 2025-2026学年人教版七年级化学上册物质构成单元测试卷(含答案解析)
- 2026年梅河口市教育系统面向吉林师范大学等院校招聘教师(2号)(2人)考试备考试题及答案解析
- 雨课堂学堂在线学堂云《绿色食品生产控制(黑龙江农垦职业学院)》单元测试考核答案
- 2026年智慧养老产业分析报告
- 《汽车电线束和电气设备用连接器 第5部分:设备连接器(插头)的型式和尺寸》征求意见稿
- 落地式钢管脚手架验收记录表
- 2023年江苏省安全员B证考试题库及答案
- C语言试讲稿课件
- (完整版)英语仁爱版九年级英语下册全册教案
- 三角形的认识(强震球)
- GB 1886.358-2022食品安全国家标准食品添加剂磷脂
- GB/T 23901.5-2009无损检测射线照相底片像质第5部分:双线型像质计图像不清晰度的测定
- GA/T 832-2014道路交通安全违法行为图像取证技术规范
- 刑事诉讼法(第三版)第十章
- 一级半压气机优化教程
评论
0/150
提交评论