Linux系统命令权限搜索等练习题

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

  • rmdir -p 不能成功删除非空目录,rmdir -p 删除一个不存在的目录时会报错,提示“没有那个文件或目录”

2. 删除一个目录或者文件时,在删除之前会先问一下我们是否删除,如果直接回车,是否删除呢?如果输入的不是’y’ 也 不是’n’ 会发生什么?

  • 直接回车不会删除,如果输入的不是’y’ 也 不是’n’也不会删除

3. 我想创建一串目录时如何建,比如/home/1/2/3/4.

  • mkdir -p /home/1/2/3/4

4. 使用mv命令时,如果目标文件为非目录且存在的文件,会怎么样?

  • 会提示,是否要覆盖那个文件

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

  • 一共出现了4次‘root’,按n可以向下一行一行的移动,按N可以向上移动。

6. 请想一想如果我们给某个目录的权限设置成rwxrw-rw-,那么其他用户能否ls该目录下的内容,能否进入到该目录下?

  • 因为其他用户对该目录的权限是读和写,没有执行权限,所以ls里面的内容是没有问题的,但是不能进入到该目录下,因为进入该目录,就相当于在“执行”这个目录。

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

  • 通过umask计算默认权限的公式是:
  • 1)目录
    (rwxrwxrwx)-(umask)=(目录权限),本例中umask=001=(——–x),所以目录的权限是(rwxrwxrwx)-(——–x)=(rwxrwxrw-)=776
  • 2)文件
    (rw-rw-rw-)-(umask)=(文件权限),本例中umask=001=(——–x),所以文件的权限是(rw-rw-rw-)-(——–x)=(rw-rw-rw-)=666
    所以得出结论,当umask为001时,目录权限是776,文件权限是666

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

  • find /var/ -type f -mtime -1
  • find /root/ -type f -mmin -60

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

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

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

  • 因为每个目录下面都会有一个.和..也就是说每个目录下面的子目录肯定会有它本身和它上一级目录,那么一旦设置了硬链接则会造成一种混乱,设置会导致死循环。硬链接的文件并不会占用空间大小,它只是复制了该文件的一份inode信息,硬链接文件是不可以跨分区创建的。

11. 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 使文件不能被删除、重命名、设定链接接、写入、新增数据

16. Linux 下一个点 ‘.’ 和两个点 ‘..’ 分别表示什么?

  • 一个点表示当前目录,两个点表示上级目录。

17. cd - 表示什么含义?

  • cd - 表示进入到上一次所在的目录

18. 用ls 查看目录或者文件时,第二列的数值表示什么意思?如果一个目录的这列的值为3,那么这个3是如何得到的?

  • 第二列数值表示有几个文件使用相同的inode,如果一个目录的这列为3,我们可以通过使用 ls -al dir/ |grep ‘^d’|wc -l 这条命令得到

19. 如果没有locate命令,需要我们安装哪个包?初次使用locate命令会报错“can not open `/var/lib/mlocate/mlocate.db’: No such file or directory”, 需要我们如何做呢?

  • 没有locate命令,需要安装mlocate包,yum install -y mlocate, 初次使用报错,是因为对应的数据库文件还没有生成,手动生成的命令是:updatedb

20. 当拷贝一个文件时,如果目标文件存在会问我们是否覆盖,如何做就不再询问了?

  • 使用 /bin/cp 进行拷贝: /bin/cp a.txt b.txt

21. 如何动态显示一个文件的内容,假如这个文件内容一直再增加。

  • tail -f file

22. 更改文件读写执行权限的命令是什么?如何把一个目录下的所有文件(不含目录)权限改为644?

  • chmod 用来更改文件权限,find ./ -type f |xargs chmod 644

23. 如何查看当前用户的家目录是什么?

  • echo $HOME

24. 假如一个目录可以让任何人可写,那么如何能做到该目录下的文件只允许文件的所有者更改?

  • chmod o+wt dir

25. 简述软链接和硬链接的区别?

  • 软连接可以理解为,源文件的快捷方式,软连接文件记录的是源文件的路径,占用空间非常小。当把源文件删除后,那么软连接文件也就变成一个坏文件了,不能使用了。
  • 硬链接和源文件的inode信息是一模一样的,可以说硬链接文件只是复制了一份源文件的inode信息,在我们看来硬链接文件和源文件没有什么区别,删除任何一个文件对方都不受影响,唯一的是少了一份inode,硬链接只能在同一个分区下创建,而软连接不受限制。硬链接文件和源文件虽然看起来像是两个文件,但是只占用一个文件的磁盘空间。

26. 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.

2. 描述 suid sgid的作用
suid:用于二进制可执行文件,使用户在执行该文件时临时拥有该文件属主的权限,典型文件为/usr/bin/passwd,它更改用户的密码时是会更改这些文件的:/etc/passwd和/etc/shadow等,这些文件默认普通用户没有写权限。
sgid:用于目录,用户在该目录下创建的文件都拥有与该目录相同的属组。

3. linux中的atime, ctime, mtime 如何区分呢?
atime为文件最后的访问时间;
ctime为最后一次更改inode信息的时间,比如更改文件名、文件权限、写入新内容(改变了文件大小)等就会更改这个时间;
mtime为最后一次更改文件内容的时间;

4. 简述selinux是什么?
selinux是RedHat/CentOS系统特有的安全机制,它提供强制访问控制,限制进程只能访问那些在它的任务中所需要文件。SELinux是2.6版本的Linux内核中提供的强制访问控制(MAC)系统。对于目前可用的 Linux安全模块来说,SELinux 是功能最全面,而且测试最充分的。SELinux 在类型强制服务器中合并了多级安全性或一种可选的多类策略,并采用了基于角色的访问控制概念。

5. 查找当前目录设置过set_uid的文件,为了使该题更加简单,设定要查找的文件权限为4644,请参考上面的9。
find . -perm 4644

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值