基础知识拓展(三)

Linux文件系统和目录章节课后习题

  1. 命令rmdir -p 用来删除一串目录,比如rmdir -p /tmp/test/1/2/3。如果/tmp/1/2目录下除了3目录还有个4目录,4目录里还有5目录,那么是否可以成功删除?用命令rmdir -p 删除一个不存在的目录时,是否会报错呢 ?
rmdir  命令不可以删除非空目录

rmdir  删除不存在的目录时会提示: 删除失败,没有那个文件或目录
  1. 删除一个目录或文件时,在删除之前会询问我们是否删除,如果直接回车,是否能删除呢?如果输入的不是y也不是n,会发生什么呢?
直接回车不会删除。

输入其他非y和n的字符也不会删除

3.如何创建一连串的目录(如/home/1/2/3/4)?

mkdir -p  /home/1/2/3/4
  1. 使用mv命令时,如果目标文件不是目录,但该文件存在,会怎么样?
如果存在则会询问是否覆盖

5.使用less命令查看文件/etc/passwd,搜索一下共出现了几个root?按哪个键可以向上/向下逐行移动?

搜索几个root可以使用  / | ?   keywords  来查询

向上移动  k      向下移动  n    

6.为什么目录必须要有x权限才可以查看目录下面的文件?

因为x权限和r权限,x权限要进入目录,相当于拥有可执行权限。

7.如果设置umask为001,那么用户默认创建的目录和文件的权限是什么样子的 ?

//  文件夹 : 
777(rwxrwxrwx)  -  001(--- --- --x) =  776(rwx rwx rw-)

//  文件
666 (rw- rw- rw-) - 001(--- --- --x) = 666 (rw- rw-  rw-)

8.用find找出 /var/ 目录下最近一天内变更的文件,再用find找出/root/目录下一小时内变更的文件。

//  find找出一天内变更的var目录下文件

find /var/ -type f  -mtime -1 

//  find找出/root/目录下一小时内变更的文件
find /root/ -type f -mmin -60

9.用find找出/etc/目录下一年内从未变更过的文件。

find /etc/ -type f ! -mtime -365

10.为什么硬链接不能链接目录? 硬链接的文件是否占用空间大小,硬链接文件是否可以跨分区创建?

因为每个目录下面都会有一个.和..也就是说每个目录下面的子目录肯定会有它本身和它上一级目录,那么一旦设置了硬链接则会造成一种混乱,设置会导致死循环。硬链接的文件并不会占用空间大小,它只是复制了该文件的一份inode信息,硬链接文件是不可以跨分区创建的。
  1. Linux系统里,分别用什么符号表示: 普通文本文件、二进制文件、目录、链接文件、块设备、套接字文件以及串行端口设备?
普通文件和二进制文件用-表示,目录用d表示,链接文件(应该说是软连接)用l表示,块设备用b表示,套接字用s表示,串行端口设备用c表示。

12.如何把把dira目录以及目录下的所有文件及目录修改为所属主为user1, 所属组为users?

chown  -R  user1:users  dira

13.Linux系统,默认目录的权限是什么?文档的权限是什么?用三个数字表示。我们可以通过修改umask的值更改目录和文档的默认权限值,我们如何通过umask的值得到默认权限值?

默认目录权限是755,文档权限是644,目录默认权限=(rwxrwxrwx)-(umask),文件默认权限=(rw-rw-rw-)-(umask)

14.修改dirb目录的权限,使所属主可读可写可执行,所属组可读可执行,其他用户不可读不可写也不可执行,使用什么命令?

chmod 750 dirb

15.如何使文件只能写不能删除? 如何使文件不能被删除、重命名、设定链接接、写入、新增数据?

chattr +a file 这样就可以使文件只能写不能删除
chattr +i file 使文件不能被删除、重命名、设定链接接、写入、新增数据
  1. Linux 下一个点 ‘.’ 和两个点 ‘..’ 分别表示什么?
一个点表示当前目录,两个点表示上级目录。
  1. cd - 表示什么含义?
cd - 表示进入到上一次所在的目录
  1. 用ls 查看目录或者文件时,第二列的数值表示什么意思?如果一个目录的这列的值为3,那么这个3是如何得到的?
第二列数字表示文件占用的节点(inode),如果是目录则表示子目录数量
  1. 如果没有locate命令,需要我们安装哪个包?初次使用locate命令会报错“can not open `/var/lib/mlocate/mlocate.db’: No such file or directory”, 需要我们如何做呢?
//  安装
yum install -y mlocate

//  第一次使用需要更新文件库
updatedb
  1. 当拷贝一个文件时,如果目标文件存在会问我们是否覆盖,如何做就不再询问了?
使用 /bin/cp 进行拷贝: /bin/cp a.txt  b.txt
  1. 如何动态显示一个文件的内容,假如这个文件内容一直再增加。
tail -f  file
  1. 更改文件读写执行权限的命令是什么?如何把一个目录下的所有文件(不含目录)权限改为644?
chmod 用来更改文件权限,find ./ -type f |xargs chmod 644
  1. 如何查看当前用户的家目录是什么?
echo $HOME
  1. 假如一个目录可以让任何人可写,那么如何能做到该目录下的文件只允许文件的所有者更改?
chmod o+wt dir
  1. 简述软链接和硬链接的区别?
软连接可以理解为,源文件的快捷方式,软连接文件记录的是源文件的路径,占用空间非常小。当把源文件删除后,那么软连接文件也就变成一个坏文件了,不能使用了。

硬链接和源文件的inode信息是一模一样的,可以说硬链接文件只是复制了一份源文件的inode信息,在我们看来硬链接文件和源文件没有什么区别,删除任何一个文件对方都不受影响,唯一的是少了一份inode,硬链接只能在同一个分区下创建,而软连接不受限制。硬链接文件和源文件虽然看起来像是两个文件,但是只占用一个文件的磁盘空间。
  1. cat a.txt 会更改a.txt的什么时间? chmod 644 a.txt 会更改a.txt的什么时间? vim呢? 直接touch呢?
cat 修改atime, 

chmod 会更改ctime

vim会更改atime,ctime,mtime

 touch也会更改三个时间

扩展部分

扩展部分:

  1. 简单描述inode是什么,不超过100字。
inode是用来记录Linux系统里面文件的属性信息的一个容器,它会记录文件名、文件的大小、属主属组、文件的权限、文件的访问时间、修改/创建时间以及更改时间(更改inode信息)等等信息。在Linux系统里,每一个文件都会有一个唯一的inode.
  1. 描述 suid sgid的作用。
suid:用于二进制可执行文件,使用户在执行该文件时临时拥有该文件属主的权限,典型文件为/usr/bin/passwd,它更改用户的密码时是会更改这些文件的:/etc/passwd和/etc/shadow等,这些文件默认普通用户没有写权限。
sgid:用于目录,用户在该目录下创建的文件都拥有与该目录相同的属组。

转载于:https://my.oschina.net/yolks/blog/1525222

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值