Linux题目集合 持续更新

Linux基础以及文件目录等试题

1.简述企业磁盘分区规则。

/boot 系统引导分区 一般大小为200 除特殊情况不会增加
/swap 交换分区 系统内存不足时 充当临时内存
在工作中:物理内存小于8G swap就给物理内存的1.8倍
物理内存大于8G swap就给8G
/ 根分区 存放系统相关软件
在工作中:数据重要时,创建date分区,将剩余的空间划给date分区。
数据不重要时,将剩余空间划分给/分区。
不知道数据重不重要时,使用多少划分多少。

2.简述centos开机启动流程。

    centos6:
①按下电源;
②开机自检BIOS;
③MBR引导;
④GRUB菜单;
⑤加载内核;
⑥启动init进程(centos第一个启动的进程);
⑦读取/etc/inittab centos6运行级别;
⑧读取 /etc/rc.sysinit初始化系统,设置主机名ip地址;
⑨根据运行级别运行/etc/rc数字.d下面的脚本,开机自启动;
⑩启动mingetty,显示登录界面,运行login。
    centos7:
①按下电源;
②开机自检BIOS;
③MBR引导;
④GRUB菜单;
⑤加载内核;
⑥systemd;
⑦启动运行级别 target(7) multi-user.target /etc/systemd/system/default.target;
⑧并行启动各种服务 /usr/lib/systemd/system /etc/systemd/system/服务;
⑨启动login 显示登录界面。

3.简述常见运行级别

    centos6:①0 关机;②1 单用户模式;③2 多用户模式;④3 完全多用户模式;⑤4 待开发;⑥5 图形化界面,桌面模式;⑦6 关机。
    centos7:①poweroff.target;②rescue.target;③multi-user.target;④multi-user.target;⑤multi-user.target;⑥multi-user.target;⑦graphical.target;⑧reboot.target。

4.简述软硬连接的区别

   定义:Linux系统中,软连接相当于Windows中的快捷方式;硬链接与源文件有相同的inode号,可以指向block。
   创建方式:软连接ln -s 硬链接ln
   创建对象:软连接可以跨文件系统,可以对目录创建;硬链接不能跨文件系统,只能对文件创建。
   删除:删除源文件对硬链接不会造成影响。会导致软连接失效。

5.简述什么是inode,什么是block

   inode:inode是索引节点,相当于身份证,在文件系统中是唯一的,大小为256个字节,在inode中存放了文件属性以及block;
   block:数据块 大小为4k,当数据很小为1k时,其余3k也会被占用,当数据很大为8G时,会占用很多block。

6.简述什么是buffer,什么是cache

    buffer:写buffer 写缓冲 将数据写入到内存中去;
    cache:读cache 读缓存 将数据从内存中读取出来。

7.说出Linux下常用的快捷键

Ctrl c 取消当前的操作     Ctrl r 查找(历史命令)
Ctrl l 清空屏幕             Ctrl d 退出当前用户
Ctrl a 把光标移动到行首      Ctrl e 把光标移动到行尾
Ctrl u 把光标到行首的内容剪切    Ctrl y 粘贴
Ctrl s 锁屏           Ctrl q 解锁
Ctrl H 删除光标前        Ctrl D 删除光标后

8.vim编辑器中所有快捷操作的使用

gg        把光标移动到文件的第一行
G         把光标移动到文件的最后一行
100gg     把光标移动到文件的100行
o         在当前行下面插入一行并进入编辑模式
O        在当前行上面插入一行并进入编辑模式
C         删除光标所在位置到行尾的内容并进入编辑模式
D        删除光标所在位置待行尾的内容
A         快速到达行尾并进入编辑模式
zz         快速保存并退出
p         粘贴 多次粘贴 数字+p
dd         删除粘贴一整行
n         查找下一个
N        查找上一个

9.查找根下所有名中带有apple的文件与目录(不区分大小写)

[root@apple ~]#find / -iname '*apple*'
/boot/grub2/i386-pc/part_apple.mod
/sys/bus/hid/drivers/apple
/sys/module/hid_apple
/sys/module/hid_apple/drivers/hid:apple
/root/apple
/root/apple.txt.bak

10.查找根下以.txt结尾、最近一天修改过、大于1M的文件

[root@apple ~]#find / -type f -ctime +1 -name '*.txt'-size +1M

11.将/etc/目录压缩到/tmp/目录下,压缩包名为etc.tar.gz

[root@apple ~]#tar zcf /tmp/etc.tar.gz /etc/
tar: Removing leading `/' from member names

12.查看/tmp/etc.tar.gz这个压缩包中有什么文件

[root@apple ~]#tar -tf /tmp/etc.tar.gz

13.将/tmp/etc.tar.gz目录解压到/root/目录下(不显示过程)

[root@apple ~]#tar -xf /tmp/etc.tar.gz -C /root/

14.筛选出网卡配置文件中带有a的行(不区分大小写)

image.png

15.将网卡配置文件中所有的小写字母替换成大写字母

[root@apple ~]#tr 'a-z' 'A-Z'

16.将文本文件a.txt名称改为txt.a

[root@apple ~]#mv a.txt txt.a
[root@apple ~]#ll a.txt
ls: cannot access a.txt: No such file or directory
[root@apple ~]#ll txt.a
-rw-r--r-- 1 root root 0 Apr 29 20:32 txt.a

17.在/tmp目录下创建名为etc.soft的/etc的软连接

[root@apple ~]#ln -s /etc /tmp/etc.soft

18.报错翻译

1.Could not connect to '10.0.0.200' (port 233): Connection failed.

不能连接到这个ip 连接失败

2.mkdir: cannot create directory ‘/lidao’: File exists

不能创建目录,因为这个目录已经存在

3.tar: Removing leading `/' from member names

在压缩时不要使用绝对路径

4.ping: baidu.com: Name or service not known

ping不到这个名字或服务

5.tree: Invalid level, must be greater than 0.

不能使用的级别,必须大于1层

6.You have mail in /var/spool/mail/root你收到了一封邮件

你收到了一封邮件,定时任务没有追加重定向就会显示提示

7.Can't open file for writing

这个文件不能打开

8.descend into directory

不能进入这个目录

9.Nothing to do

不能进行这个操作

10.Could not resolve host

无法配置dns服务

19.目录下的重要文件
/etc/sysconfig/netwprk-scripts/ifcfg/-eth0 网卡配置文件
/etc/resolv.conf 解析DNS
/etc/hostname 主机名配置文件
/etc/hosts 域名与IP地址解析关系 局域网、本地DNS /etc/fstab 配置开机设备自动挂载的列表(文件)
/etc/rc.local 存放开机自动程序命令的文件 命令、脚本(命令大礼包)
/etc/profile别名 环境变量配置文件
/etc/bashrc 环境变量配置文件
/etc/inittab 系统运行级别配置文件
20.扩展题目:
如何查看/etc目录所占容量

[root@apple ~]#du -h -s /etc |sort
32M /etc

21.筛选出网卡配置文件中所有带数字的行。
22.创建一个属于old用户组的用户boy

1.特殊符号:

引号系列:
单引号 '' 所见即所得
双引号""双引号里面的特殊符号会被执行
不加引号支持{}
反引号 相当于$() 解析里面的内容

2.基础正则符号:

(1)^尖角符号:以...开头的信息过滤出来
(2)尖角美元符号:取出文件中的空行信息
(4).点符号:表示匹配任意一个且只有一个字符
(5)星号:匹配前面的一个字符连续出现0次或者多次
(6).*点跟星号:匹配所有信息
(7)\转译字符:将一些有意义的符号进行转译,变为一个普通字符
(8)[]中括号:匹配括号中的每一个字符,并且匹配的关系是或者的关系
(9)[^]对中括号里面匹配的字符信息进行排除
(10)^[]以中括号里面匹配的字符作为一行开头的字符

3.扩展正则符号

(1)+加号符号:匹配加号前面一个字符连续出现1次或多次
(2)|竖线符号:或者关系符号
(3)()小括号符号:将多个字符信息汇总为一个整体
(4){}花括号符号:指定花括号前一个字符连续匹配多少次
{n,m}n表示最少连续匹配多少次,m表示最多连续匹配多少次 {n}表示只连续匹配n次。
(5)?问号符号:表示匹配问号前面一个字符出现0次或者1次。

3.找出/alex目录下以.txt结尾,修改实际是180天之前的,大于100k并小于10M的文件(3分)

[root@apple ~]#find /alex -type f -ctime 179 -name '*,txt'-size +1M -100k 

4.找出/oldboy目录下以.log结尾的文件并把文件中的oldboy替换为oldgirl(至少2种方法)

find /oldboy -type f -name "*.log"|xargs sed 's#(oldboy)#(oldgirl)#g'
find /oldboy -type f -name "*.log" - - exec sed 's#(oldboy)#(oldgirl)#g' {} \:
sed 's#(oldboy)#(oldgirl)#g' `find /oldboy -type f -name "*.log"`

5.找出/oldboy下面以.conf结尾的文件打包备份到/tmp/下面(2种方法)

find /oldboy -type f -name "*.conf"|xargs tar zcf /tmp.tar.gz 
tar zcf /tmp.tar.gz `find /oldboy -type f -name "*.conf"`

6.筛选出/etc/ssh/sshd.config文件中不是以#和D开头的行

egrep -v '^#|^D' /etc/ssh/sshd.config

7.查找出/etc/目录下以.txt结尾的,修改时间在最近三天的,内容中带有“PORT”的文件

find /etc/ -type f ctime +3 -name "*.txt"|xargs grep -w /etc/ "*PORT*"

8.筛选出file文件中带有oldboy或oldgirl的行

9.将以下字符追加到/oldboy/test.txt文件中(写出命令)

image.png

你可能感兴趣的:(Linux题目集合 持续更新)