Linux必会面试题--1

1.列出你所知道的所有vi,vim编辑器的编辑模式,普通模式,命令模式。这三种模式下的操作指令

编辑模式:无
普通模式:G  gg yy p d  dd  D u  r  x   $  ^  dG  i  a   o  A  I  O
命令模式: :  /   :wq   :x   shift+zz   :set nu  :set ic  :set list

2.在当前系统能ping通百度的情况下,使用命令(curl cip.cc)查看(公网IP)当前网络出口地址,取出关键字"数据二"所在的行,以空格为分隔符,取出第三列的内容

[[email protected] ~]# curl cip.cc |grep '数据二' |awk '{print $3}'

3.linux系统存放所有用户密码信息的文件是?

/etc/shadow
/etc/passwd

5.存放用户账户信息的配置文件是?

/etc/default/useradd
/etc/login.defs

6.改变文件所有者的命令为 (B)
A.chmod
B.chown
C.cat
D.vim

7.假设公司研发部的用户David和Peter属于组A,财务部的用户life和laowang属于组B
(1)建立相应的用户和组,并设置相应的对应关系

[[email protected] ~]# groupadd A
[[email protected] ~]# useradd David -g A
[[email protected] ~]# useradd Peter -g A
[[email protected] ~]# id David
uid=1124(David) gid=1126(A) groups=1126(A)

[[email protected] ~]# groupadd B
[[email protected] ~]# useradd life -g B
[[email protected] ~]# useradd laowang -g B
[[email protected] ~]# id life
uid=1126(life) gid=1127(B) groups=1127(B)

(2)建立目录office_a,该目录里面的文件只能由研发部人员读取、增加、删除、修改以及执行,其他用户不能对该目录进行任何操作

[[email protected] ~]# mkdir office_a  //建目录
[[email protected] ~]# ll -d office_a/   //查看默认权限
drwxr-xr-x. 2 root root 6 Aug  9 16:03 office_a/
[[email protected] ~]# chmod 750 office_a/
[[email protected] ~]# ll -d office_a/
drwxr-x---. 2 root root 6 Aug  9 16:03 office_a/

(3)建立目录office_b,该目录里面的文件只能由财务部人员读取、增加、删除、修改以及执行,其他用户不能对该目录进行任何操作

[[email protected] /tmp]# mkdir office_b
[[email protected] /tmp]# ll -d office_b
drwxr-xr-x. 2 root root 6 Aug 10 14:44 office_b
[[email protected] /tmp]# chown .B office_b
[[email protected] /tmp]# chmod 770 office_b

(4)建立目录office_c,该目录里面的文件研发部人员可以读取、增加、删除、修改以及执行,其他部门只能做查看操作

[[email protected] /tmp]# mkdir office_c
[[email protected] /tmp]# ll -d office_c
drwxr-xr-x. 2 root root 6 Aug 10 14:46 office_c
[[email protected] /tmp]# chown .A office_c
[[email protected] /tmp]# chmod 774 office_c

(5)建立目录office_d,该目录里面的文件只有研发部的经理David拥有所有操作权限,研发部的其他人只有查看权限,其他部门不能进行任何操作

[[email protected] /tmp]# mkdir office_d
[[email protected] /tmp]# ll -d office_d
drwxr-xr-x. 2 root root 6 Aug 10 14:49 office_d
[[email protected] /tmp]# chown David.A office_d
[[email protected] /tmp]# chmod 740 office_d
[[email protected] /tmp]# ll -d office_d
drwxr-----. 2 David A 6 Aug 10 14:49 office_d

8.新建目录/web1,/web2,/web3

[[email protected] ~]# mkdir /web{1..3}

(1)更改/web1目录的权限,使其他用户对它没有任何权限;

[[email protected] ~]# ll -d /web1
drwxr-xr-x. 2 root root 6 Aug  9 17:22 /web1
[[email protected] ~]# chmod 750 /web1
[[email protected] ~]# ll -d /web1
drwxr-x---. 2 root root 6 Aug  9 17:22 /web1

(2)更改/web2目录的权限,使所属组对它拥有读写执行权限;

[[email protected] ~]# ll -d /web2
drwxr-xr-x. 2 root root 6 Aug  9 17:22 /web2
[[email protected] ~]# chmod 775 /web2
[[email protected] ~]# ll -d /web2
drwxrwxr-x. 2 root root 6 Aug  9 17:22 /web2

(3)更改/web3目录的权限,任何用户都可以读写,但是在/web3目录中创建的任何文件都属于grp1组

[[email protected] /tmp]# groupadd grp1
[[email protected] /tmp]# chgrp grp1 /web3
[[email protected] /tmp]# chmod 777 /web3
[[email protected] /tmp]# ll -d /web3
drwxrwxrwx. 2 root grp1 6 Aug 10 15:22 /web3
[[email protected] /tmp]# chmod g+s /web3
[[email protected] /tmp]# ll -d /web3
drwxrwsrwx. 2 root grp1 6 Aug 10 15:22 /web3

9.新建用户zhangsan,lisi,wangergou,三个用户都属于同一个用户组f4,密码都为oldboy

[[email protected] ~]# groupadd f4
[[email protected] ~]# useradd zhangsan -g f4
[[email protected] ~]# useradd lisi -g f4
[[email protected] ~]# useradd wangergou -g f4
[[email protected] ~]# echo "oldboy" |passwd --stdin zhangsan
Changing password for user zhangsan.
passwd: all authentication tokens updated successfully.
[[email protected] ~]# echo "oldboy" |passwd --stdin lisi
Changing password for user lisi.
passwd: all authentication tokens updated successfully.
[[email protected] ~]# echo "oldboy" |passwd --stdin wangergou
Changing password for user wangergou.
passwd: all authentication tokens updated successfully.

(1)上述用户和组都能在/data/code目录,访问,创建,删除文件,其他用户无法访问该目录

[[email protected] /tmp]# mkdir -p /data/code
[[email protected] /tmp]# chown .f4 /data/code/
[[email protected] /tmp]# ll -d /data/code/
drwxr-xr-x. 2 root f4 6 Aug 10 15:38 /data/code/
[[email protected] /tmp]# chmod 770 /data/code/

(2)code目录下创建的所有文件自动归属于f4组所有

[[email protected] /tmp]# chmod g+s /data/code/

(3)现在新增了一批用户,属于默认组,需要开放其他用户在code目录的读权限

[[email protected] /tmp]# chmod 774 /data/code/

(4)新增的所有其他用户在code目录下创建的文件自动归属f4组

[[email protected] /tmp]# chmod 777 /data/code/

10.有两个用户组,分别为python组、Linux组,python组的人可以修改读取python组的文件,但不能让Linux组的人读取;Linux组的人可以修改读取Linux组的文件,但不能让python组的人读取。

[[email protected] ~]# groupadd python
[[email protected] ~]# groupadd linux
[[email protected] ~]# mkdir /python
[[email protected] ~]# chown .python /python/
[[email protected] ~]# chmod 770 /python/

[[email protected] ~]# mkdir /linux
[[email protected] ~]# chown .linux /linux
[[email protected] ~]# chmod 770 /linux/

11.输入df -h,取出当前系统根分区剩余可用磁盘空间

[[email protected] ~]# df -h |awk 'NR==2 {print $4}'
36G

12.显示/proc/meminfo文件中以s开头的行(忽略大小写)

[[email protected] ~]# grep -i '^s' /proc/meminfo

13.在当前目录中新建文件text,假设该文件的权限为614。现要求设置该文件属主(u)增加执行权限,属组(g)增加写权限,其他用户(o)删除读权限,应该如何操作,另外修改后的权限用字母应该如何表示

[[email protected] ~]# touch text
[[email protected] ~]# chmod 614 text
[[email protected] ~]# chmod u+x text
[[email protected] ~]# chmod g+w text
[[email protected] ~]# chmod o-r text
[[email protected] ~]# ll
-rwx-wx---. 1 root root    0 Aug 10 16:19 text

14.在当前目录中创建目录aaa,并把该目录的权限设置为只有文件主有读、写和执行权限

[[email protected] ~]# mkdir aaa
[[email protected] ~]# chmod 700 aaa/

15.设某文件myfile的权限为-rw-r--r--,若要增加所有人可执行的权限,应该怎么做

[[email protected] ~]# touch myfile
[[email protected] ~]# chmod 644 myfile
[[email protected] ~]# chmod o+x myfile

16.输入时间命令"date"将当前系统时间输出到/data/1.txt

[[email protected] ~]# date > /data/1.txt

17.输入时间命令"date"将当前系统时间追加到/data/1.txt

[[email protected] ~]# date >> /data/1.txt

18.在当前系统能ping通百度的情况下,使用" ping -c3 baidu.com "将返回的信息输出到/data/1.txt

[[email protected] ~]# ping -c3 baidu.com > /data/1.txt

19.接上题,将/data/1.txt中,出现关键字time的第一行取出,然后将该行中所消耗的延时信息取出(time等于的数值就是消耗的延时信息)

[[email protected] ~]# grep 'time' /data/1.txt |awk 'NR==1 {print $8}' |awk -F "=" '{print $2}'
27.5

20.使用“ls /ta”将错误的信息输出到/data/1.txt

[[email protected] ~]# ls /ta 2> /data/1.txt

21.将/data/1.txt的文件内容,标准输出到/data/2.txt

[[email protected] ~]# cat /data/1.txt > /data/2.txt

22.解释以下linux标准输入输出中文件描述符的含义

0 标准输入--->>>默认是键盘,也可以是文件或其他命令的输出
1 标准输出--->>>默认输出到屏幕
2 错误输出--->>>默认输出到屏幕

23.解释以下linux标准输入输出中符号的含义

<                                     输入重定向
<<                                   追加输入重定向
>                                    输出重定向
>>                                   追加输出重定向
2>                                  **错误覆盖输出重定向**
2>>                                  **错误追加输出重定向**
`&>`or `>&` or `2>&1`           **把标准输出和标准错误作为同一个数据流重定向到文件**
&>                                混合输出重定向
&>>                              **把标准输出和标准错误作为同一个数据流重追加重定向到文件**

24.使用"seq 10 50"将以0结尾的行标准输出到3.txt

[[email protected] ~]# seq 10 50 |grep '0$' >3.txt

25.把/etc/fstab文件内容重定向到/tmp目录下文件名为fstab.out

[[email protected] ~]# cat /etc/fstab > /tmp/fstab.out

26.把字符"hello world"追加到/tmp/fstab.out文件尾部

[[email protected] ~]# echo "hello world" >> /tmp/fstab.out

原文地址:https://www.cnblogs.com/yinwu/p/11332375.html

时间: 2024-08-14 06:17:45

Linux必会面试题--1的相关文章

Linux运维MySQL必会面试题100道

老男孩教育Linux运维班MySQL必会面试题100道 (1)基础笔试命令考察 (要求:每两个同学一组,一个口头考,一个上机实战作答,每5个题为一组,完成后换位) 1.开启MySQL服务 2.检测端口是否运行 3.为MySQL设置密码或者修改密码. 4.登陆MySQL数据库. 5.查看当前数据库的字符集 6.查看当前数据库版本 7.查看当前登录的用户. 8.创建GBK字符集的数据库oldboy,并查看已建库完整语句 9.创建用户oldboy,使之可以管理数据库oldboy 10.查看创建的用户o

(转)Linux运维MySQL必会面试题100道

老男孩教育Linux运维班MySQL必会面试题100道 (1)基础笔试命令考察 (要求:每两个同学一组,一个口头考,一个上机实战作答,每5个题为一组,完成后换位) 1.开启MySQL服务 2.检测端口是否运行 3.为MySQL设置密码或者修改密码. 4.登陆MySQL数据库. 5.查看当前数据库的字符集 6.查看当前数据库版本 7.查看当前登录的用户. 8.创建GBK字符集的数据库oldboy,并查看已建库完整语句 9.创建用户oldboy,使之可以管理数据库oldboy 10.查看创建的用户o

C语言必会面试题(3、耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,...)

3.耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:1,2,3,1,2,3....凡是报到"3"就退出圈子,最后留在圈子内的人就是出卖耶稣的叛徒.请找出它原来的序号. int a[13] = {1,2,3,4,5,6,7,8,9,10,11,12,13}; int number = 13;//记录当前人数 int count = 0;//1,2,3报数 int i = 0; while (number > 1) { if

linux批量分发必会面试题,通过邮件反馈结果。

请准备三台linux机器为别为A,B,C,要求实现以下内容1.用自己的名字用户完成一把钥匙开多把锁(A,钥匙,B,C锁)的免密码登录部署场景该题在生产环境中的用途为:批量分发数据,批量发布程序代码,批量控制管理等. 大型批量管理软件pupet/saltstack2.在1题的前提下同样用自己的名字用户完成多把钥匙开一把锁(B,C钥匙,A锁)的免密码登录B--AC--A一题中我们在A创建了锁和钥匙,所以B和C要控制A就先把钥匙发给B和C,因为A本地的锁还不正常,就像A给B和C发公钥一样给自己再发一份

C语言必会面试题(3、耶稣有13个门徒,当中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个開始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,...)

3.耶稣有13个门徒.当中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个開始报号:1.2,3.1,2,3.... 凡是报到"3"就退出圈子.最后留在圈子内的人就是出卖耶稣的叛徒.请找出它原来的序号. int a[13] = {1,2,3,4,5,6,7,8,9,10,11,12,13}; int number = 13;//记录当前人数 int count = 0;//1,2,3报数 int i = 0; while (number > 1) { if

Django 必会面试题总结

https://www.cnblogs.com/wenyule/articles/699aa722eb4f9b16acf554df2337ec6f.html#_labelTop 原文地址:https://www.cnblogs.com/sunxiuwen/p/10230380.html

嵌入式Linux C笔试题积累(转)

http://blog.csdn.net/h_armony/article/details/6764811 1.   嵌入式系统中断服务子程序(ISR) 中断是嵌入式系统中重要的组成部分,这导致了很 多编译开发商提供一种扩展—让标准C支持中断.具代表事实是,产生了一个新的关键字 __interrupt.下面的代码就使用了__interrupt关键字去定义了一个中断服务子程序(ISR),请评论一下这段代码的. __interrupt double compute_area (double radi

Linux 经典面试题

[Linux  经典面试题] 1. 在Linux系统中,以 文件 方式访问设备 . 2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统. 3. Linux文件系统中每个文件用 i节点 来标识. 4. 全部磁盘块由四个部分组成,分别为引导块 .专用块 . i节点表块 和数据存储块. 5. 链接分为: 硬链接 和 符号链接 . 6. 超级块包含了i节点表 和 空闲块表 等重要的文件系统信息. 7. 某文件的权限为:d-rw-_r--_r--,用数值形式表示该权限,则该八

Linux C 面试题总结 .

http://blog.csdn.net/sjin_1314/article/details/39861929 Linux C 面试题总结