题目来自老男孩BLOG:http://oldboy.blog.51cto.com/2561410/1709569,比较适合新手,空余的时候做一下,可以巩固Linux基础知识,有不对的地方欢迎指正。
(1)要求每周六日定期执行脚本back.sh。运维人员小张。写好定时任务,请指出不足之处。
crontab-l
* */6 ** 6,7 /bin/sh back.sh
正确写法:
#定时任务最好添加注释
* */6 * * 6,7 /bin/sh back.sh(这里最好写全路径) &>/dev/null(取消输出)
(2)当前有一目录当前权限为:rwx-wsr-x请描述下他的数字权限是多少
2735
(3)当前用户新建了一个文件和目录,其中文件的权限为rw-r-----,目录的权限为rwxr-x---,请问当前用户的umask是多少
0027
(4)现有一文件,通过ls -l 查看发现其文件属性如下,请问为什么?
-rw-r--r--2 503 sa 258 Oct 16 09:37 1.txt
该文件的所属用户被删除
(5)某个开发人员申请账户KM,要求7日使用期限,权限为可以查看系统日志及OS用户下程序的日志,如何设置。
useradd -e "MM/DD/YY" KM
然后visudo在其中添加一行KM ALL=(ALL) NOPASSWD:/bin/cat 即可
KM用户以sudo cat命令即可以查看日志文件
(6)请描述下crontab -e 与 vi /var/spool/cron/root 的区别?
crontab -e 指得是编辑当前用户的定时任务列表,该命令会检查语法
vi /var/spool/cron/root 指得是编辑root用户的定时任务列表,不会检查语法
(7)创建一个用户new,不允许远程登录,不创建家目录,指定用户组为sa。请给出命令。
groupadd sa
useradd -M -g sa -s /sbin/nologin new
(8)如何给每个新建的用户发放一份使用说明文档?
在/etc/skel下创建一份使用说明文档,之后创建每一个新用户,系统都会把这份说明文档拷贝到用户的家目录下
(9)如何查看那些用户登陆过系统?
lastlog
(10)sudo配置文件的位置?
/etc/sudoers
(11)如果在某用户的 crontab 文件中有以下记录,该行中的命令如何执行?
00 6 * 3 6 /bin/sh ****
3月的每个礼拜六的6点整执行脚本
(12)如果在某用户的 crontab 文件中有以下记录,该行中的命令如何执行?
* 00 * * 7
每个礼拜天的0点每分钟执行脚本
(13)添加一个用户k,并指定属于S组,要求gid为818,uid为919,并且不建立家目录及禁止其登陆。
groupadd -g 818 S
useradd -g S -u 919 -M -s /sbin/nologin k
(14)如何查看用户的uid及其属于组的信息。
使用id命令
(15)为用户 Nasa 创建计划任务,要求在14:28 执行“/bin/echo luna”
su - Nasa
crontab -e
28 14 * * * /bin/echo luna
(16)每周六、日上午 8:00到下午13:00执行程序/server/script/max.sh
00 8-13 * * 6,7 /bin/sh /server/script/max.sh
(17)请描述umask的作用及通过umask计算文件权限的方法
umask是用来设置用户创建文件或目录的默认权限,它与chmod的效果刚好相反,umask设置的是权限“补码”
计算方法:创建目录的默认权限直接777减去umask即可,创建文件的默认权限666减去umask,遇umask的奇数位,计算结果加1
(18)某文件的权限为:-rw-r--r--,用数值形式表示该权限,则该八进制数为: __644___ ,该文件属性是_属主可读写,其他人可读____
(19)授权Mask目录及其子目录755的权限
chmod -R 755 /Mask
(20)把 Mask 目录及其子目录的属主改为 Max,组改为 MAI 。
chown -R Max:MAI /Mask