03.Linux基本操作练习题
查询当前用户名的命令是whoami
查询当前用户身份信息的命令是id
查询正在登陆用户信息的命令是who
查询用户登陆历史记录的命令是 last。
打印当前工作路径的命令是 pwd
显示目录内容列表,带-lh选项的命令是 ls -lh
简单的文本回显的命令是echo
简单的打印文件的命令是cat
Linux独有的联机帮助的命令是--help
传统Unix联机帮助的命令是man
更详细的带超链接功能的联机帮助的命令是info
同步内存数据到磁盘的命令是sync
立即关机,不建议使用,仅限单机用户的命令是 shutdown -h now
15分钟后重启服务器的命令是 shutdown -r +15
取消本次关机或重启操作的命令是shutdown -c
04.Linux文件操作练习题
ls -a列出所有文件包括隐藏的详细信息
ls -l输出长格式列表
ls -R显示递归文件
ls -d仅显示目录本身信息
cd ~切换到自己的Home目录。
cd -返回到上次所在目录。
mkdir用来创建目录
rmdir用来删除目录
touch创建新文件或者修改文件时间
file查看文件类型
读取大文件建议使用less或more命令
wc统计文件的字节数、字数、行数
grep以行为单位过滤文档内容,将所有符合正则表达式的行输出
根据文件名在特定目录中搜索可以使用find命令。
rm 命令可以删除 个目录中的一个或多个文件或目录。
ln默认的链接类型是硬链接。
ln -s创建符号链接。
文件操作rmdir命令用于删除目录,但是rmdir只能删除空目录。
tar命令归档文件名后缀**有**实际意义。
find命令选项-name是长选项。
欲把当前目录下的fle1.txt复制为fle2.txt,正确的命令是cat file1.txt > file2.txt
05.用户及用户组管理习题
系统为每个用户分配一个唯一的用户ID-UID,它的初始值为**0**
程序用户又称 系统账户,用于维持系统或某个程序的正常运行。
useradd命令添加一个用户账号, -m选项创建用户主目录, -r选项创建程序用户, -s选项指定登录Shell。
/etc/目录下 passwd文件是Linux系统中的一个重要文件,它存储着系统中所有用户的信息。
/etc/目录下shadow文件是Linux系统中的一个重要文件,它存储着系统中所有用户的密码信息。
passwd命令修改用户口令, -l选项锁定用户密码,限制用户登录, -u选项解除用户密码锁定。
usermod修改用户账号就是根据实际情况更改用户的有关属性, -g选项将用户加入指定组, -G选项设定用户附加组列表。
userdel命令删除用户, -r选项删除与用户相关的所有文件。
groupadd命令用于创建一个新的用户组。
gpasswd命令是Linux下组文件/etc/group和/etc/gshadow的管理工具。 -A选项设定管理员列表, -a选项添加用户到组, -d选项从组中删除用户。
groupmod命令更改组gid或名称
groupdel命令用于删除指定的用户组。
newgrp命令切换有效用户组。
chmod命令变更文件或目录的权限, -R选项表示递归,进行目录操作
chown命令可以改变某个文件或目录的所有者和所属组
umask是文件权限掩码,可以通过掩码修改创建新文件的默认权限
Linux用户账户分为普通用户和系统用户。(❌)linux操作系统除了普通用户、系统用户,还有超级用户
配置文件/etc/passwd文件的内容较多,使用tail命令可以查看文件最后几行的内容
查看/etc/passwd文件的内容,**不**需要root权限。
通过指定登录Shell为/sbin/nologin,可以限制用户登录
没有x权限的目录不可访问。
默认情况下管理员创建了一个用户,就会在/home目录下创建一个用户主目录
**只有root**用户对Shadow文件拥有读取权利
/etc目录存放用户密码信息
useradd命令选项-g的主要参数含义指定用户所属的用户组
组账户分为系统组和用户组(❌)私有组(基本组)和公有组(附加组)
系统用户的UID取值范围1~999
useradd命令中-c命令选项用于加上注释信息
usermod命令可以修改用户信息,下列哪个选项可以更改主用户组(C)
A -l B -s C -g D -G
06.软件包管理习题
dnf是yum的增强版
yum check-update命令更新缓存,并检查软件更新
yum list命令根据软件包名称列出软件包
yum search命令搜索软件包描述
yum provides命令反向查询文件由哪个包提供,或者软件包由哪个仓库提供。
yum info命令显示软件包详细信息。
yum remove命令卸载软件包
yum upgrade命令通过“卸载/安装/升级”来更新系统。
在使用apt包管理器时,apt update命令用于更新软件包列表
FreeBSD中使用 pkg作为的软件包管理工具。
rpm -qa选项列出当前全部已安装的软件包。
dpkg是Debian/Ubuntu系的软件包管理器。
rpm本地安装**不能**解决依赖问题。
yum install本地安装**能**解决依赖问题。
在Linux中,以下/usr/local目录通常用于存放软件包
apt-get -f install能够进行本地安装软件依赖修正。
在Red Hat系列的Linux中,apt search命令不能用于搜索的软件包
07.Vim编辑器习题
Vim编辑器有三种模式: 命令模式、 编辑模式和末行模式。
Vim编辑器的快捷键 3G表示移动到文档第3行。
Vim编辑器的快捷键 dd表示删除1行。
Vim编辑器的快捷键 yy表示复制1行。
Vim编辑器中 v模式可以实现模拟鼠标式的选择操作
在Vim的命令模式下,可以进行文本的复制、粘贴和删除等操作
在Vim编辑器中,要实现全局搜索并替换某个词,应该在末行模式中使用:%s/old/new/g命令?
在Vim中,要撤销上一步的操作,应该使用u命令
08.系统管理与安全测试
服务 Service是网络系统中应用层的基本单位,它通过与一个特定的端口 Port绑定来对外提供服务。服务实现了最简单的 应答系统,允许外部实体与服务器进行通信,它能够接受、处理并响应网络数据请求。
服务机制实现对普通进程进行监管,确保进程能够不间断提供服务,服务又被称为 守护进程
新版Linux系统服务被SystemD统一管理,主要命令是 systemctl。
查看服务的详细状态需要使用systemctl status命令。
临时启动服务需要使用systemctl start命令。
临时停止服务需要使用systemctl stop命令。
systemctl restart | reload | enable | disable 重启|重载|开机自启动|取消开机自启
ps命令是Linux系统中进程状态查看命令
pstree是一个用于显示系统进程树的命令。
top命令是Linux的动态任务管理器,可以实时动态地监视系统的运行状况。
journalctl是systemd套件的一个命令,是一个系统日志管理器
在Linux中,ps命令可以查看当前系统中所有运行的进程
cron命令可以用来设置周期性计划任务
Linux系统中,ps aux命令可以查看进程的CPU和内存使用情况
在Linux系统中,关于服务管理的说法,哪些是正确的?(AC)
A.服务可以在系统启动时自动运行
B.服务管理只能通过图形界面进行
C.管理员可以使用systemctl命令管理服务
D.服务配置通常存储在/etc/init.d/目录下 /usr/lib/systemd/system
以下哪些命令可以用于进程管理?(ABC)
A.ps B.kill C.top D.df //磁盘管理
关于Liux系统中的计划任务管理,以下哪些说法是正确的?(AB)
A.cron是Linux系统中用于设置周期性计划任务的工具
B.at命令可以用于设置一次性计划任务
C.计划任务配置保存在/etc/crontab文件中
Linux系统的计划任务配置主要保存在 /var/spool/cron 目录、
/etc/crontab 文件以及 /etc/cron.d 目录下。
D.计划任务无法在系统启动时自动执行
at命令可以用来设置一次性计划任务
09.网络管理与安全测试
Linux网络使用 NetworkManager服务进行管理,可以使用服务管理的方式查看网络状态或控制网络。
命令行界面下,使用的网络管理工具常用的是 setup、 nmtui。
iproute2是一个在Linux下的高级网络管理工具软件,主要命令工具是 ip、 ss。
查看L2链路层的物理设备网络命令是ip link。
查看L3网络层IP信息网络命令是ip addr。
看网关的路由信息网络命令是ip route。
查看邻居表网络命令是ip neigh。
查看全部监听的端口网络命令是ss -tulnp
查询已建立的连接网络命令是ss -nat
打印网络流量的统计数据网络命令是ss -s。
lsof命令是一个列出当前系统打开文件的工具。
ping命令是一种网络包探索器,用于测试网络连接量的程序。
telnet命令测试目标端口是否可达。
traceroute指令追踪网络数据包的路由途径。
在Linux系统中,可以使用iptables命令来配置和管理防火墙规则。
在openEuler系统中,/etc/sysconfig/network-scripts/ifcfg-文件通常用于配置网络接口
在Linux中,ping命令用于测试网络的连通性
在Linux系统中,哪个命令可以显示当前系统中活动的网络连接、监听的端口以及网络服务?(B)
A.ifconfig
B.netstati或ss
C.route
D.iptables
关于路由配置,以下哪个说法是正确的?(C)
路由配置主要是设置DNS服务器地址
路由配置不需要知道目的网络的地址
路由配置用于指定数据包在网络中的最佳传输路径
路由配置是为了提高网络的下载速度
在Linux系统中,进行网络故障排查时,以下哪些命令可能是有用的?(ABC)
A.ping
B.traceroute
C.ifconfig
D.ps //当前进程的状态
10.Shell编程测试
Shell变量可分为如下4种类型: 环境变量、 预定义变量、 位置变量和用户自定义变量。
Shell中读取一个定义过的变量,变量名前需加 $。
Shell中使用 read可以从键盘读取输入值并赋值给变量
Shell变量有三种作用域: 局部变量、 全局变量和 环境变量。
Shell中 $0代表所执行命令的名称, $1代表了命令的第1个参数。
echo命令用于在Shell中打印Shell变量的值,或者直接输出指定的字符串,一般起到一个提示的作用。
Shell中printf命令格式化并输出结果。
重定向一般是一道工艺命令的结束,表示将处理的最终结果文件如何显示或存储
如果希望执行某个命令,不希望在屏幕上显示输出结果,那么可以将输出重定向到 /dev/null。
管道使用竖线将两个命令隔开,竖线左边命令的输出就会作为竖线右边命令的输入。
Shell中将输出的结果分为几个分流,就需要使用 tee命令。
test测试后返回一个值给系统,下一个命令可以借助于 $?查看。
Shell中 shift命令用于对参数的移动,通常用于在不知道传入参数个数的情况下依次遍历每个参数然后进行相应处理。
Shell中函数的return值会被预定义变量#?获取。
Shell是一种命令行解释器,它允许用户与操作系统进行交互(✔)
在Shell脚本中,变量名区分大小写。(✔)
Shell脚本中的选择结构只能通过if语句来实现。(❌)
for循环是Shell脚本中唯一可用的循环结构(❌)
Shell函数可以在脚本中被调用,但不能在命令行中直接调用(❌)
Shell脚本中的文件包含是指将一个脚本文件的内容包含到另一个脚本文件中(✔)
Shell变量可以被赋值为命令的执行结果。(✔)
Shell脚本在执行时不需要任何解释器,可以直接运行(❌)
Shell中的测试命令是test
可以使用expr命令对Shell变量进行算术运算
在Shell程序中,要访问命令行第9个参数之后的参数,就必须使用shift命令
下列哪个是Shell的功能(C)
A.图形界面设计
B.文本编辑器
C.命令行解释器
D.数据库管理系统
在Shell脚本中,如何定义一个变量? val=value Shell注释#
在Shell脚本中,如何引用变量的值? $variable
["str1"="str2"]命令可以用来比较两个字符串是否相等
在Shell脚本中,以下哪些命令可以用于比较数值或字符串
✔:-eq -ne -gt
❌:< ==
下列哪些符号或命令可以用于获取Shell脚本中的变量值
✔: $variable ${variable}
❌:%(variable)s @(variable) #variable#
下列哪些选项是Shell脚本中可能用到的特殊变量
$# $? $* $@ $$
11.过滤器
过滤器中head命令从数据开头选择数据行。
过滤器中tail命令从数据结尾选择数据行。
过滤器中nl命令在每行前面加一字段,显示行号。
过滤器中tac命令反转文本行的顺序。
过滤器中rev命令将文件中的每行内容以字符为单位反序输出。
过滤器中sort命令将文件进行排序,并将结果标准输出。
过滤器中uniq命令用于报告或忽略文件中的重复行。
过滤器中history命令列出当前账号最常使用的5个命令。
正则表达式是一种文本模式,正则表达式由普通字符和 元字符组成。
在正则表达式里,元字符 ^来表明想对一个字符集合进行取非匹配。
在正则表达式里,元字符\d匹配任意数字字符。
在正则表达式里,元字符\s匹配任意空白字符。
在正则表达式里,元字符^匹配字符串的开头。
在正则表达式里,元字符$匹配字符串的结尾。
在正则表达式里,元字符\b 匹配单词的边界。
Unix的grep家族包括grep、egrep和fgrep,另外还集成了Perl语言的pgrep
流编辑器sed同Vim相比是非交互式的,处理时把当前处理的行存储在临时缓冲区中,称为模式空间。
perl命令开启-pe选项启用Perl一行式命令。
awk脚本是由模式和操作组成。
awk是一种编程语言,可以用于文本处理和数据分析。(✔)
正则表达式是一种用于模式匹配和文本搜索的语法。(✔)
awk是一种编程语言,可以用于文本处理和数据分析。(✔)
使用grep命令时,-i选项用于忽略大小写进行搜索。
sed命令中的s命令用于替换文本中的模式。
grep命令用于在文本中搜索特定模式
sed命令中的-i选项可以用于在文件中直接进行修改
cut命令主要用于字段抽取操作
在awk中,如何当前行的第一个字段表示为$1
sed命令可以处理流数据并进行文本替换
grep命令中,-n选项可以显示匹配行的行号
在sed命令中,如何替换文本中的所有“apple”为“orange”?
sed 's/apple/orange/g' file.txt
在使用grep命令时,以下-i,-v,-r,-l选项可以用来修改搜索行为
下列哪些说法关于sed命令是正确的?(ABD)
A. sed是一个流编辑器。
B. sed主要用于文本替换
C. sed不能处理流数据。
D. sed何以使用正则表达式。
E. sed只能处理单个文件。
下列哪些工具可以用来抽取文本中的特定字段?(CD)
A.grep B.sed C.awk D.cut E.sort
12.Docker容器
容器虚拟机技术是一种基于linux内核的轻量级的虚拟化解决方案,容器共享主机内核。
docker images命令查看本地已安装镜像。
docker search命令在线查找镜像库。
docker pull命令拉取一个镜像。
docker run 命令运行容器,选项 -d 直接进入后台运行。
docker attach进入一个已经运行的容器内部系统,一般需要接管一打开的可交互的终端。
docker exec进入容器内部系统,将后台容器切换到前台,同时需要再打开一个终端
docker ps查看正在运行容器列表和状态,选项-a已停止运行的容器。
docker stats查看所有的正在运行容器对系统各种资源的占用情况。
docker top查看指定容器内部正在运行的进程信息。
docker port查看指定容器的端口及端口映射信息
docker logs查看指定容器的执行命令及输出历史。
docker inspect完整检查指定容器的配置信息。
容器有两个特性,一个是系统,一个是程序。
容器技术的底层原理是相同的,但是运行时不兼容。(❌)
期中考试
输入答案是提供用户管理和使用资源的接口
CPU微架构指令集主要分两种,一个是Intel、AMD为首的复杂指令集CISC ,另一个是以IBM、ARM
为首的精简指令集RISC
rpm -qa选项列出当前全部已安装的软件包。
通过使用ssh,可以把所有传输的数据进行加密、压缩,实现又快又安全的传输。
云计算平台是成熟的云计算系统,目前主要包括基于基础设施层、基于平台层