目录
(3)用户如何进行图形化与文本模式登录、重启、关机与注销?“
(1)简述Linux系统下的用户账户分为哪几种以及用户UID的取值是多少?
(2)简述用户账户管理文件/etc/passwd各字段数据的含义。
(2)简述如何配置匿名用户、本地用户、虚拟用户登录FTP服务器?
(5)简述如何配置Apache服务器以及使用虚拟目录的优势?
单选汇总
1.选择题
(1)下列中不是Linux系统的特点()。
A.多用户 B.单任务 C.开放性 D. 设备独立性
(2)Linux最早是由计算机爱好者()开发的。
A. Linus Torvalds B. Andrew S. Tanenbaum C. K.Thompson D. D.Ritchie
(3)下列中()是自由软件。
A. Windows XP B.UNIX C. Linux D.MAC
(4)Linux系统中可以实现关机命令是()。
A. shutdown –k now B.shutdown –r now C. shutdown –c now D. shutdown –h now
(1)Linux系统下超级用户登录后,默认的命令提示符为()。
A.! B.# C.$ D. @
(2)可以用来建立一个新文件使用的命令是()。
A.cp B.rm C. touch D. more
(3)命令行的自动补齐功能要使用到()键。
A. Alt B.Shift C. Ctrl D.Tab
(4)下面不通配符的是()。
A. ! B.* C. ? D. [ ]
(5)Linux设备文件保存位置()。
A. /home B. /dev C. /etc D. /root
(6)普通用户主目录的位置()。
A. /home B. /dev C. /etc D. /root
(7)在下列命令中,用于显示当前目录路径命令()。
A. cd B. ls C. stat D.pwd
(8)在下列命令中,不能显示文本文件内容的命令是()。
A.cat B. more C. less D.join
(9)在列命令中,用于将文本文件内容加以排序的命令是()。
A.wc B. file C. sort D.tail
(10)在给定文件中查找与设定条件相符字符串的命令是()。
A.grep B. find C. head D.gzip
(11)在Vim的命令模式中,输入()不能进入末行模式。
A.: B. i C. ? D./
(12)在Vim的命令模式中,输入()不能进入编辑模式。
A.o B. a C. e D.i
(13)使用()操作符,可以输出重定向到指定的文件中,追加文件内容。
A.> B. >> C. < D.<<
(14)在Linux控制台中,使用()快捷键,可以实现清屏功能。
A. Ctrl+A B. Ctrl+E C. Ctrl+S D. Ctrl+L
(15)在Linux控制台中,使用()快捷键,可以实现剪切删除光标前的所有字符。
A. Ctrl+U B. Ctrl+K C. Ctrl+W D. Ctrl+Y
正在上传…重新上传取消
1.选择题
(1)Linux系统中,若文件名前面多一个点“.”,则代表文件为( )。
A.只读文件 B.写入文件 C.可执行文件 D. 隐藏文件
(2)Linux系统中,可以使用()命令来查看隐藏文件。
A.ll B.ls -a C. ls -l D. ls -ld
(3)存放Linux基本命令的目录是什么( )。
A. /bin B./lib C. /root D./home
(4)Linux系统中,将加密后的密码存放到( )文件中。
A. /etc/passwd B./etc/shadow C. /etc/password D. /etc/gshadow
(5)Linux系统中,超级用户root的UID是多少( )。
A. 0 B. 1 C. 100 D. 1000
(6)Linux系统中,新建用户user01,并为用户设置密码为123456的命令是( )。
A. useradd –c 123456 user01 B. useradd –d 123456 user01
C. useradd –p 123456 user01 D. useradd –n 123456 user01
(7)Linux系统中,为用户user01添加属组student命令是( )。
A. usermod –G student user01 B. usermod –g student user01
C. usermod –M student user01 D. usermod –m student user01
(8)Linux系统中,删除主目录和以及目录中的所有文件( )。
A. userdel –h user01 B. userdel –r user01
C. userdel –R user01 D. userdel –z user01
(9)Linux系统中,groupmod命令更改组群识别码或名称的参数为( )。
A. -g B. –h C.-n D. -p
(10)Linux系统中,将用户user01加入到组workgroup的命令是()。
A. gpasswd -a user01 workgroup B. gpasswd –d user01 workgroup
C. gpasswd –h user01 workgroup D. gpasswd –r user01 workgroup
(11)Linux系统中,文件/mnt/test01设置权限,默认权限为:rw-r--r--,则该权限的数字表示法为( )。
A. 764 B. 644 C.640 D. 740
(12)Linux系统中,一个文件的权限为:-rwxrw-rw-时,则这个文件为( )。
A. 目录文件 B. 普通文件 C. 设备文件 D. 连接文件
(13)Linux系统中,一个文件的权限为:drwxrw-rw-时,则这个文件为( )。
A. 目录文件 B. 普通文件 C. 设备文件 D. 连接文件
(14)Linux系统中,一个文件的权限为:lrwxrw-rw-时,则这个文件为( )。
A. 目录文件 B. 普通文件 C. 设备文件 D. 连接文件
(15)Linux系统中,建立目录的默认权限为( )。
A. drwxr-xr-- B. drw-r-xr-x C. drwxr-xr-x D. drw-r-xr--
(16)Linux系统中,显示隐藏文件属性的命令( )。
A. chown B. chattr C. chgrp D. lsattr
(17)Linux系统中,设置ACL权限的命令( )。
A. setacl B. setfacl C. getacl D.getfacl
(18)Linux系统中,显示ACL权限的命令( )。
A. setacl B. setfacl C. getacl D.getfacl
- 选择题
- 表4.1设备节点前缀及设备类型说明
设备节点前缀 | 设备类型说明 | 设备节点前缀 | 设备类型说明 |
fb | frame缓冲 | ttyS | 串口 |
fd | 软盘 | scd | SCSI音频光驱 |
hd | IDE硬盘 | sd | SCSI硬盘 |
lp | 打印机 | sg | SCSI通用设备 |
par | 并口 | sr | SCSI数据光驱 |
pt | 伪终端 | st | SCSI磁带 |
tty | 终端 | md | 磁盘阵列 |
(1)Linux系统中,最多可以划分几个主分区( )。
A.1 B.2 C.4 D. 8
(2)Linux系统中,按照设备命令分区的规则,IDE1的第1个硬盘的第3个主分区为( )。
A. /dev/hda0 B. /dev/hda1 C. /dev/hda2 D. /dev/hda3
(3)Linux系统中,SCSI硬盘设备节点前缀为( )。
A. hd B.md C. sd D.sr
(4)Linux系统中,磁盘阵列设备节点前缀为( )。
A. hd B.md C. sd D.sr
(5)Linux系统中,SCSI数据光驱设备节点前缀为( )。
A. hd B.md C. sd D.sr
(6)Linux系统中,IDE硬盘设备节点前缀为( )。
A. hd B.md C. sd D.sr
(7)Linux系统中,使用fdisk命令进行磁盘分区时,输入“n”可以进行创建分区的操作,使用( )创建主分区。
A. p B.l C.e D.w
(8)Linux系统中,mkfs命令的作用就是在硬盘上创建Linux文件系统,以哪个选项是设置文件系统的类型( )。
A.-t B. -h C. -v D.-l
(9)Linux系统中,mkfs命令的作用就是在硬盘上创建Linux文件系统,若不指定文件系统类型,默认将使用( )。
A.xfs B. ext2 C. ext3 D. ext4
(10)mount命令的作用就是将一个设备,通常是存储设备,挂载到一个已经存在的目录上,mount命令使用( )选项,设置文件系统类型。
A.-o B. -l C. -n D. -t
(11)在fdisk命令中,使用t指令可以更改分区的类型,如果不知道分区类型对应的ID号,可以输入“L”指令查看各分区类型对应的ID号,若设置分区类型改为“Linux LVM”,也就是要将分区的ID修改为( )。
A.86 B. 87 C. 88 D.8e
(12)在fdisk命令中,使用t指令可以更改分区的类型,如果不知道分区类型对应的ID号,可以输入“L”指令查看各分区类型对应的ID号,若设置分区类型改为“Linux raid 自动”,也就是要将分区的ID修改为( )。
A.fb B. fc C. fd D.fe
(13)mdadm是Linux系统下的一款标准的软件RAID管理工具,可以使用()命令选项查看RAID5状态。
A.-A B. -B C. -C D.-D
(14)若想在一个新分区上建立文件系统,则应该使用( )命令。
A.fdisk B.mkfs C.format D.makefs
1.选择题
(1)Linux系统中,查看自己主机的IP地址,使用的命令()。
A.hostname B. ifconfig C.host D. ping
(2)网卡配置文件/etc/sysconfig/network-scripts/ifcfg-ens33,以下哪个选项是激活网卡()。
A. BOOTPROTO B. IPADDR C. ONBOOT D. PREFIX
(3)使用ping命令检测网络连通性,以下哪项参数是设置回应返回的次数()。
A.-c B.-f C. -i D.-n
(4)可以使用()命令来追踪网络数据包的路由途径。
A. nslookup B.ip C. netstat D. traceroute
(5)测试自己的主机和其它主机是否能正常通信,可以使用()命令。
A.host B.ping C.ifconfig D. nslookup
1.选择题
(1)对于给定的RPM包xyz-4.5.6-7.x86_64.rpm,它的软件名为()。
A. xyz B. xyz-4.5.6 C. xyz-4.5.6-7 D. x86_64
(2)对于给定的RPM包xyz-4.5.6-7.x86_64.rpm,它的体系号为()。
A. xyz B. xyz-4.5.6 C. xyz-4.5.6-7 D. x86_64
(3)对于给定的RPM包xyz-4.5.6-7.x86_64.rpm,它的主版本号为()。
A.4 B.5 C.6 D. 7
(4)对于给定的RPM包xyz-4.5.6-7.x86_64.rpm,它的修订号为()。
A.4 B.5 C.6 D. 7
(5)对于给定的RPM包xyz-4.5.6-7.x86_64.rpm,它的释出号为()。
A.4 B.5 C.6 D. 7
(6)使用yum命令,进行软件包安装的命令为()。
A. remove B.install C. update D.clean
(7)使用yum命令,进行软件包升级的命令为()。
A. remove B.install C. update D.clean
(8)使用yum命令,进行软件包删除的命令为()。
A. remove B.install C. update D.clean
1.选择题
(1)Shell在定义变量时,习惯上用大写字母来命令变量,变量名以字母或下划线开头,不能用数字,在使用变量时,要在变量名前面加上前缀()。
A.! B.# C.$ D. @
(2)可以使用()命令对Shell变量进行算术运算。
A.read B.expr C. export D. echo
(3)在read命令中,以下哪项可以输入提示符()。
A. -n B.-a C. -t D.-p
(4)在Shell Script脚本通常使用()符号作为注释。
A. # B.// C. @ D.#!
(5)在Shell Script脚本通常使用()符号作为脚本的开始。
A. # B.// C. @ D.#!
(6)在关系运算符中,()运算符表示检测左边的数是否大于等于右边的。
A.-gt B.-eq C. -ge D. -le
(7)在关系运算符中,()运算符表示检测左边的数是否小于等于右边的。
A.-gt B.- eq C. -ge D. -le
(8)在关系运算符中,()运算符表示检测两个数是否相等。
A.-gt B.- eq C. -ge D. –le
(9)在Shell脚本中,用来读取用户在命令行的输入的命令是()。
A.tar B.join C.fold D. read
(10)下面()不是Shell的循环控制结构。
A.for B.while C.switch D. until
(11)关于Linux的Shell说法错误的是()。
A. 编译型的程序设计语言 B.能执行外部命令
C. 能执行内部命令 D. 一个命令语言解释器
(12)在Shell变量的赋值有4种方法,其中采用X=10的方法称为()。
A.使用read命令 B.直接赋值 C.使用命令的输出 D.使用命令行参数
1.选择题
(1)Samba服务器的配置文件是()。
A.smb.conf B.sam.conf C.http.conf D. rc.samba
(2)Samba的主配置文件不包括()项目。
A.global B.homes C. server D. printers
(3)FTP服务器使用的端口号()。
A. 21 B.22 C. 23 D.24
(4)命令rpm -qa | grep vsftpd的作用是()。
A.安装vsftpd程序 B.启动vsftpd程序
C. 运行vsftpd程序 D. 检查是否已经安装vsftpd程序
(5)下列应用协议,()可以实现本地与远程主机之间文件传输的协议。
A.SNMP B.FTP C. ARP D.Telnet
(6)DHCP采用客户机/服务器(C/S)模式,使用()传输协议。
A. TCP B.UDP C.IP D. TCP/IP
(7)DHCP服务器使用的端口号为()。
A. 53 B.20和21 C. 67和68 D.80
(8)在DNS配置文件中,用于表示某主机别名的是()。
A.NS B. CNAME C.MX D.NAME
(9)CentOS提供的WWW服务器软件()。
A.Apache B.IIS C.Firefox D.IE
(10)Apache服务器是()。
A.DNS服务器 B. FTP服务器 C.Web服务器 D.Mail服务器
项目一 认识Linux网络操作系统与安装
(1)简述 Linux 的版本以及特性?
答:版本1.Red Hat Linux 2.CentOS 3.Fedora 4.Mandrake 5.Debian 6.Ubuntu 7.Gentoo
8.FreeBSD
特性:(1)开放性。
(2)多用户。
(3)多任务。
(5)设备独立性。
(6)提供了丰富的网络功能。
(7)可靠的安全系统。
(8)良好的可移植性。
(9)支持多文件系统。
(2)如何安装 Centos 7 操作系统?
1、打开VMware选择文件->新建虚拟机。
2、选择本地“装程序光盘映像文件(iso)”,并选择“稍后安装操作系统(s)”
3、选择操作系统“Linux”,选择操作系统版本“CentOS 7 64位”,点击下一步
4、给操作系统分配磁盘大小,选择默认20G,选择将虚拟磁盘存储为单个文件。
5、选择Centos7 镜像路径。
6、选择安装时的语言。
7、设置时间
8、选择需要安装的软件。
9、选择 Server with Gui(图形化界面),然后点击Done。
10、选择安装位置,在这里可以进行磁盘划分
11、返回CENTOS 7安装窗口,继续进行安装,配置用户设置。
12、选择【ROOT密码】,进行ROOT用户密码设置
13、CENTOS 7操作系统安装完成。
(3)用户如何进行图形化与文本模式登录、重启、关机与注销?“
1. 图形化系统登录
(1)系统安装完成后,在虚拟机中启动Centos7操作系统,选择【开启此虚拟机】
2.图形化系统关机、重启与注销
如果要在图形界面下退出系统,单击右上角关机按钮正在上传…重新上传取消图标,如图1.39所示。在单击右上角关机按钮,右下角也有一个关机按钮图标,可以进行系统重启、关机,如图1.40所示,单击root用户右侧图标,可以进行用户注销操作
(4)如何进行终端界面切换?
“Linux是一个多用户操作系统,默认情况下,Linux会提供6个Terminal 来让用户登录,切换的方式为Ctrl+Alt+F1~F6,如图1.42所示。而且,系统会为这6个终端界面以 tty1、tty2、tty3、tty4、tty5、tty6 的命名方式命名,除此之外,Linux还有一个默认的X窗口桌面,使用Ctrl+Alt+F7,可以切换到图形桌面进行登录了。
安装了图形界面,想进入纯文本模式,可以按以上组合键进行切换,那么如何从文本模式进入图形界面呢,可以使用Ctrl+Alt+F1组合键即可
(5)如何重置root 管理员密码?
1.打开【应用程序】菜单,单击【终端】应用程序,输入以下内容
[root@localhost ~]# cat /etc/redhat-release //查看系统内核版本
CentOS Linux release 7.6.1810 (Core) // CentOS Linux内核版本为:7.6.1810
[root@localhost ~]#
2. 在终端输入“reboot”或“shutdown –r now”命令,或进单击右上角关机按钮正在上传…重新上传取消图标,选择【重启】按钮,重启Linux系统主机并出现引导界面时,按“e”键进入内核编辑界面
3. 按住光标键【↓】向下翻,在Linux16参数行的最后面追加“rd.break”参数,然后按下“Ctrl+X”组合键来运行修改过的内核程序
4. 大约30秒过后,系统进入紧急救援模式,依次输入以下命令,等待系统重启操作完毕。
mount –o remount,rw /sysroot //重新以可读可写的方式挂载/sysroot
chroot /sysroot //切换系统的根位置为/sysroot
passwd //修改root密码
touch /.autorelabel //使seLinux生效
exit //退出
reboot //重启
4. 重新输入root管理员新密码“lncc@123”来登录Linux系统,命令行的执行效果。
(6)如何进行系统克隆与快照管理?
1.系统克隆
1.打开VMware虚拟机主界面,关闭虚拟机中的系统,选择你要克隆的系统,选择菜单栏【虚拟机】→【管理(M)】→【克隆(C)】
2. 进入克隆虚拟机向导界面,单击【下一步(N)】按钮,进入克隆源选择窗口,,可以选择3.【虚拟机中的当前状态(C)】或是选择【现有快照(仅限关闭的虚拟机)(S):】进行选择。
选择克隆类型,选择克隆方法,可以选择【创建链接克隆(L)】,也可以选择【创建完整克隆(F)】,单击【下一步(N)】按钮。
4.进入【新虚拟机名称】窗口,如图1.51所示,为虚拟机命令以及安装位置进行路径选择设置,单击【完成】按钮。
5.进入【正在克隆虚拟机】窗口,单击【关闭】按钮,返回虚拟机主窗口界面,系统克隆完成。
2. 快照管理
1)打开VMware虚拟机主界面,启动虚拟机中的系统,选择你要快照保存备份的系统,选择菜单栏【虚拟机】→【快照(N)】→【拍摄快照(T)】
2)单击【拍摄快照(T)】按钮,返回虚拟机主窗口界面,系统拍摄快照完成,
(7)如何使用 SecureCRT与 SecureFX 远程连接管理 Linux 系统?“
项目二 Linux基础操作命令-使用Shell命令
2.简答题
(1)什么是Shell?它的功能是什么?
1、shell是操作系统的最外层,是一个用户跟操作系统之间交互的命令解释器。
2、大多数linux默认的shell命令解释器是 bash(/bin/bash)
3、shell独立于内核,是链接内核和应用程序的桥梁,通俗来讲shell是内核周围的外壳
Shell是系统的 用户界面 ,提供了用户与 内核 进行交互操作的一种 接口 。 它接收用户输入的命令并把它送入内核去执行 。
(2)列举Linux下的主要目录,并简述其主要作用。
/boot:系统启动目录,存放的是启动Linux时的一些核心文件,包括一些链接文件以及映像文件,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等。
/dev:Linux设备文件保存位置,dev是device(设备)的缩写,该目录下存放的是Linux的外部设备,Linux中的设备都是以文件的形式存在的。
/etc:这个目录用来存放系统管理员所需要的配置文件和子目录的文件保存位置,该目录的内容一般只能由管理员进行修改,密码文件、网上配置信息、系统内所有采用默认安装方式(rpm安装)的服务配置文件全部保存在此目录中,如:用户信息、服务的启动脚本、常用服务的配置文件等。
/home:普通用户的主目录(也称为家目录)。在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的主目录,所有普通用户的主目录是在/home/下建立一个和用户名相同的目录,为该用户分配一个空间,如:用户user01的主目录就是/home/user01,这个目录主要是与个人用户有关的私人文件。
/media:挂载目录。建议用来挂载媒体设备,如软盘和光盘。
/mnt:挂载目录。这个目录是空的,建议这个目录用来挂载额外的设备,如:U盘、移动硬盘和其他操作系统的分区。
/opt:第三方安装的软件保存位置。这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。不过笔者还是习惯把软件放到/usr/local/目录中,也就是说,/usr/local/目录也可以用来安装软件。
/proc: 虚拟目录,是系统内存的映射。可直接访问这个目录来获取系统信息,该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等。如:/proc/cpuinfo是保存CPU信息的,/proc/devices是保存设备驱动的列表的,/proc/filesystems是保存文件系统列表的,/proc/net是保存网络协议信息的。
/root: 系统管理员的主目录,普通用户主目录在/home/下,root主目录直接在“/”下。
/run: 目录中存放的是自系统启动以来描述系统信息的文件。
/srv: 服务数据目录。一些系统服务启动之后,可以在这个目录中保存所需要的数据。
/tmp:临时目录。系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清空。
/usr:此目录用于存储系统软件资源,存放应用程序和文件,用户要用到的程序和文件几乎都存放在这个目录下,如:命令、帮助文件等,当安装一个Linux发行版官方提供的软件包时,大多安装在这里。
/bin:存放系统基本的用户命令,基础系统所需要的命令位于此目录,也是最小系统所需要的命令,如:ls、rm、cp等,这个目录中的文件普通用户和root都可以执行,放在/bin下的命令在单用户模式下也可以执行。
/lib与/lib64:系统调用的函数库保存位置,最基本的共享库和内核模块,存放用于启动系统和执行root文件系统的命令的,如:/bin/sbin的二进制文件的共享库,或者存放32位,或者64位(file命令查看)。
/sbin:系统管理员命令存放目录,管理员用户权限可以执行。
(3)more和less命令有何区别?
1. less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示
2. less不必读整个文件,加载速度会比more更快
3. less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容
(4)举例说明压缩/解压缩的常用命令?
(5)显示文件内容的常用命令有哪些,简述其特点?
(6)Vim编辑器的基本工作模式有哪几种,简述其主要作用?
(7)Vim中替换命令的格式是什么,各部分的含义是什么?
(8)硬链接与软链接的区别是什么?
硬链接的特点如下:
1)硬链接以文件副本的形式存在,但不占用实际空间。
2)不允许给目录创建硬链接。
3)硬链接只能在同一文件系统中创建。
软链接的特点如下:
1)软链接以路径的形式存在,类似于Windows操作系统中的快捷方式。
2)软链接可以跨文件系统,而硬链接不可以。
3)软链接可以对一个不存在的文件名进行链接。
4)软链接可以对目录进行链接。
(9)管道的作用是什么?
管道具有把多个命令从左到右串联起来的能力,可以通过使用管道符“|”来建立一个管道行,管道的功能是把左边命令的输出重定向,传送给右边的命令作为输入,同时把右边命令的输入重定向,以左边命令的输出结果作为输入,
(10)简述输入与输出重定向的作用?
简而言之,输入重定向是指把文件导入到命令中,而输出重定向则是指把原本要输出到屏幕的数据信息写入到指定文件中。
项目三 用户组群与文件目录权限管理
(1)简述Linux系统下的用户账户分为哪几种以及用户UID的取值是多少?
Linux系统下的用户账户分为三种:超级用户(root)、系统用户和普通用户
超级用户的UID为0。
系统用户的UID一般为1~999。
普通用户的UID一般为1000~65535
(2)简述用户账户管理文件/etc/passwd各字段数据的含义。
账户名称:密码:UID:GID:用户信息:主目录:命令解释器(登录Shell)
正在上传…重新上传取消
(3)如何禁用用户账户,通常有几种方法?
有时候需要临时禁用一个账户而不删除它,禁用用户账户可以使用passwd或usermod命令实现,也可以直接修改/etc/passwd或/etc/shadow文件。
[root@localhost ~]# passwd -l user01
[root@localhost ~]# usermod -L user01
(4)简述组群文件/etc/group文件各字段数据的含义。
组群名称:组群密码(一般为空,用x占位):GID:组群成员
2 bin:x:1:user02,user03
(5)如何使用su和sudo命令?
su [选项] [-] [USER [参数]...]
su命令各选项及功能说明
选项 | 功能说明 |
- | -切换到超级管理员root账户,-user表示完全切换成另一个用户 |
-c | 向shell 传递一条命令,然后退出所切换到的用户环境 |
-f | 适用于csh与tsch,使用shell不用去读取启动文件 |
-m,-p | 变更身份时,不重置环境变量,保留环境变量不变 |
-g | 指定主组 |
-G | 指定一个辅助组 |
-l | 使shell成为登录 shell |
-s | 指定要执行的shell |
sudo [选项] [-s] [-u用户] command
表3.17 sudo命令各选项及功能说明
选项 | 功能说明 |
-A | 使用助手程序进行密码提示 |
-b | 后台运行命令 |
-c | 关闭所有 >= num 的文件描述符 |
-E | 在执行命令时保留用户环境, 保留特定的环境变量 |
-e | 编辑文件而非执行命令 |
-g | 以指定的用户组或 ID 执行命令 |
-H | 将 HOME 变量设为目标用户的主目录 |
-h | 显示帮助消息并退出 |
-i | 以目标用户身份运行一个登录 |
-k | 完全移除时间戳文件 |
-l | 列出用户权限或检查某个特定命令 |
-n | 非交互模式,不提示 |
-p | 保留组向量,而非设置为目标的组向量 |
-P | 使用指定的密码提示 |
-r | 以指定的角色创建 SELinux 安全环境 |
-S | 从标准输入读取密码 |
-s | 以目标用户运行 shell;可同时指定一条命令 |
-t | 以指定的类型创建 SELinux 安全环境 |
-T | 在达到指定时间限制后终止命令 |
-U | 在列表模式中显示用户的权限 |
-u | 以指定用户或 ID 运行命令(或编辑文件) |
-V | 示版本信息并退出 |
-v | 更新用户的时间戳而不执行命令 |
(6)如何设置文件和目录的权限?
(7)如何进行特殊权限设置?
SET位权限又叫做特殊权限,一般文件权限是rwx,在某些特殊场合可能无法满足要求,为了方便普通用户执行一些特权命du令,通过设置SUID、SGID权限允许普通用户以root身份暂时执行某些程序,并在执行结束后再恢复身份。
chmod命令设置特殊权限,其格式如下:
chmod u+s 可执行文件
[root@localhost ~]# chmod u+s /usr/bin/mkdir //设置mkdir文件SUID权限
特殊权限也可以采用数字表示法,SUID、SGID和sticky权限分别为4、2和1来表示,使用chmod命令设置文件权限时,可以在普通权限的数字前面加上一位数字来表示特殊权限,如:设置/mnt/test01文件特殊权限,相关命令配置命令如下:
[root@localhost ~]# chmod 6664 /mnt/test01 //设置test01文件特殊权限
(8)如何修改文件和目录权限的默认权限与隐藏权限?
1.文件预设权限umask
umask命令其格式如下:
umask [-p] [-S] [模式]
umask命令各选项及功能说明,如表3.21所示。
表3.21 umask命令各选项及功能说明
选项 | 功能说明 |
-p(小写) | 输出的权限掩码可直接作为指令来执行 |
-S(大写) | 以符号方式输出权限掩码 |
(1)chattr命令—修改文件属性。
(2)lsattr命令—显示文件隐藏属性。
lsattr命令其格式如下:
lsattr [选项] 文件
lsattr命令各选项及功能说明,如表3.24所示。
表3.24 lsattr命令各选项及功能说明
选项 | 功能说明 |
-a | 列出目录中的全部文件,将隐藏文件的属性也显示出来 |
-E | 显示设备属性的当前值,从设备数据库中获得 |
-d | 如果是目录,仅列出目录本身的属性而非目录内的文件名 |
-D | 显示属性的名称,属性的默认值,描述和用户是否可以修改属性值得标志 |
-R | 递归的操作方式,连同子目录的数据也一并列出来 |
-V | 显示指令的版本信息 |
【实例23】在/home/test01目录下,新建文件test01.txt,执行lsattr命令相关操作,相关命令配置命令如下:
[root@localhost ~]# touch /home/test01/test01.txt
[root@localhost ~]# chattr +aiS /home/test01/test01.txt //修改文件属性
[root@localhost ~]# lsattr -a /home/test01/test01.txt //显示隐藏文件属性
--S-ia---------- /home/test01/test01.txt
项目四 磁盘配置与管理
2.简答题
(1)简述Linux系统中设备命名规则?
1、主分区(primary)。主分区通常在划分硬盘的第1个分区时,会指定为主分区,Linux最多可以让用户创建4个主分区,主要是用来启动操作系统的,它主要放的是操作系统的启动或引导程序,/boot分区最好放在主分区上。
2、 扩展分区(extended)。由于Linux中一个硬盘最多只允许有4个主分区,如果想要创建更多的分区,怎么办?于是就有了扩展分区的概念。用户可以创建一个扩展分区,然后在扩展分区上创建多个逻辑分区。扩展分区从理论上来说,逻辑分区没有数量上的限制。 需要注意的是,创建扩展分区的时候,会占用一个主分区的位置,因此,如果创建了扩展分区,一个硬盘上便最多只能创建3个主分区和一个扩展分区。而且,扩展分区不是用来存放数据的,它的主要功能是为了创建逻辑分区。这个概念和Windows可说是一模一样。
3、逻辑分区(logical)。逻辑分区不能够直接创建,它必须依附在扩展分区下,容量受到扩展分区大小的限制,通常逻辑分区是存放文件和数据的地方。
大部分设备的前缀名后面跟随一个数字,它唯一指定某一设备。硬盘驱动器的前缀名后面跟随一个字母和一个数字,字母用于指明设备,而数字用于指明分区。因此,/dev/sda2指定了硬盘上的一个分区,/dev/pts/10指定了一个网络终端会话,设备节点前缀及设备类型说明,如表4.1所示。
(2)简述如何进行磁盘挂载与卸载?
mount命令的作用就是将一个设备,通常是存储设备,挂载到一个已经存在的目录上,访问这个目录就是访问该存储设备,mount命令格式如下:
mount [选项] [--source] <源> | [--target] <目录>
mount命令各选项及功能说明,如表4.4所示。
表4.4 mount命令各选项及功能说明
选项 | 功能说明 |
-a | 挂载 fstab 中的所有文件系统 |
-c | 不对路径规范化 |
-f | 空运行;跳过 mount(2) 系统调用 |
-F | 对每个设备禁用 fork(和 -a 选项一起使用) |
-T | /etc/fstab 的替代文件 |
-h | 显示此帮助并退出 |
-i | 不调用 mount.<类型> 助手程序 |
-l | 列出所有带有指定标签的挂载 |
-n | 不写 /etc/mtab |
-o | 挂载选项列表,以英文逗号分隔 |
-r | 以只读方式挂载文件系统(同 -o ro) |
-t | 限制文件系统类型集合 |
-v | 打印当前进行的操作 |
-V | 显示版本信息并退出 |
-w | 以读写方式挂载文件系统(默认) |
mount命令-t<文件系统类型>与-o<选项>参数选项及其含义,如表4.5所示。
表4.5 mount命令-t与-o参数选项及含义
-t <文件系统类型> | -o <选项> | ||
ext4/xfs | Linux目前常用的文件系统 | ro | 以只读方式挂载 |
msdos | ms-dos的文件系统,即FAT16 | rw | 以读写方式挂载 |
vfat | 即FAT32 | remount | 重新挂载已经挂载的设备 |
iso9660 | CD-ROM光盘标准文件系统 | user | 允许一般用户挂载设备 |
ntfs | NTFS文件系统 | nouser | 不允许一般用户挂载设备 |
auto | 自动检测文件系统 | codepage=xxx | 代码页 |
swap | 交换分区的系统类型 | iocharset=xxx | 字符集 |
设备文件名对应分区的设备文件名,如:/dev/sdb1;挂载点为用户指定用于挂载点的目录,挂载点的目录需要满足以下几方面的要求:
1、目录事先存在,可用使用mkdir命令新建目录。
2、挂载点目录目录不可被其他进程使用。
3、挂载点下原有文件将被隐藏。
【实例3】将新增加的SCSI硬盘分区/dev/sdb1、/dev/sdb2、/dev/sdb5和/dev/sdb6分别挂载到/mnt/data01、/mnt/data02、/mnt/data05和/mnt/data06目录下,执行相关操作命令如下:
[root@localhost cdrom]# cd /mnt
[root@localhost mnt]# mkdir data01 data02 data05 data06 //新建目录
[root@localhost mnt]# ls -l | grep '^d' //显示grep查找以'd'开头的目录
drwxr-xr-x. 2 root root 6 8月 25 11:59 data01
drwxr-xr-x. 2 root root 6 8月 25 11:59 data02
drwxr-xr-x. 2 root root 6 8月 25 11:59 data05
drwxr-xr-x. 2 root root 6 8月 25 11:59 data06
dr--r--r--. 4 root root 82 8月 21 09:02 test
[root@localhost mnt]# mount /dev/sdb1 /mnt/data01 //挂载目录
[root@localhost mnt]# mount /dev/sdb2 /mnt/data02
[root@localhost mnt]# mount /dev/sdb5 /mnt/data05
[root@localhost mnt]# mount /dev/sdb6 /mnt/data06
[root@localhost mnt]#
卸载
umount命令用于卸载一个已经挂载的文件系统(分区),相当于Windows系统里的弹出设备,umount命令格式如下:
umount [选项] <源> | <目录>
【实例8】使用umount命令卸载文件系统,相关操作命令如下:
[root@localhost ~]# umount /mnt/u-disk
[root@localhost ~]# umount /media/cdrom
[root@localhost ~]# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 36G 4.3G 31G 13% /
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 21M 1.9G 2% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 179M 836M 18% /boot
tmpfs tmpfs 378M 36K 378M 1% /run/user/0
[root@localhost ~]#
(3)简述如何创建逻辑卷以及如何创建、删除RAID5阵列?
(4)如何添加磁盘
1、分区。不是管是分一个分区还是多个分区。
2、格式化。分区必须经过格式化才能创建文件系统。
3、挂载。被格式化的硬盘分区必须挂载到操作系统相应的文件目录下。
(5)如何进行磁盘分区
fdisk [选项] <磁盘> 更改分区表
fdisk [选项] -l <磁盘> 列出分区表
fdisk -s <分区> 给出分区大小(块数)
在“命令(输入 m 获取帮助):”提示符后,例如输入:m,可以查看所有命令帮助信息,输入相应的命令来选择需要的操作,如表4.2所示,列出了fdisk命令操作及功能说明。
表4.2 fdisk命令操作及功能说明
命令操作 | 功能说明 | 命令操作 | 功能说明 |
a | 设置可引导标签 | o | 建立空白 DOS 分区表 |
b | 编辑bsd磁盘标签 | p | 显示分区列表 |
c | 设置DOS操作系统兼容标记 | q | 不保存退出 |
d | 删除一个分区 | s | 新建空白 SUN 磁盘标签 |
g | 新建一个空的GPT分区表 | t | 改变一个分区的系统 ID |
G | 新建一个IRIX(SGI)分区表 | u | 改变显示记录单位 |
l | 显示已知的文件系统类型,82为 Linxu swap 分区,83 为 Linux 分区 | v | 验证分区表 |
m | 显示帮助菜单 | w | 保存退出 |
n | 新建分区 | x | 附加功能(仅专家) |
【实例1】使用fdisk命令对新增加的SCSI硬盘/dev/sdb进行分区操作,在此硬盘上创建两个主分区和一个扩展分区,在扩展分区上再创建两个逻辑分区,执行相关操作如下:
下面我们首先创建一个容量为5G的主分区,主分区创建结束之后 ,输入“p”查看已创建好的分区/dev/sdb1,执行相关操作命令如下:
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0bcee221
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
命令(输入 m 获取帮助):
(2)继续创建第2个容量为3G的主分区,主分区创建结束之后 ,输入“p”查看已创建好的分区/dev/sdb1、/dev/sdb2,执行相关操作命令如下:
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (10487808-41943039,默认为 10487808):
将使用默认值 10487808
Last 扇区, +扇区 or +size{K,M,G} (10487808-41943039,默认为 41943039):+3G
分区 2 已设置为 Linux 类型,大小设为 3 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0bcee221
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
/dev/sdb2 10487808 16779263 3145728 83 Linux
命令(输入 m 获取帮助):
(3)然后再继续创建扩展分区,需要特别注意的是,必须将所有的剩余磁盘空间全部分配给扩展分区,输入“e”创建扩展分区,扩展分区创建结束之后,输入“p”查看已经创建好的主分区和扩展分区,执行相关操作命令如下:
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): e
分区号 (3,4,默认 3):
起始 扇区 (16779264-41943039,默认为 16779264):
将使用默认值 16779264
Last 扇区, +扇区 or +size{K,M,G} (16779264-41943039,默认为 41943039):
将使用默认值 41943039
分区 3 已设置为 Extended 类型,大小设为 12 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0bcee221
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
/dev/sdb2 10487808 16779263 3145728 83 Linux
/dev/sdb3 16779264 41943039 12581888 5 Extended
命令(输入 m 获取帮助):
扩展分区的起始扇区和结束扇区,使用默认值就可以的,可以把所有的剩余磁盘空间12G全部分配给扩展分区,从上面操作可以看出划分两个主分区的容量分别为5G和3G,扩展分区的容量为12G。
(4)扩展分区创建完成后就可以创建逻辑分区了,在扩展分区上再创建两个逻辑分区,磁盘容量分别为8G和4G,在创建逻辑分区的时候就不需要指定分区编号了,系统会自动从5开始顺序编号,执行相关操作命令如下:
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 1 extended, 1 free)
l logical (numbered from 5)
Select (default p): l
添加逻辑分区 5
起始 扇区 (16781312-41943039,默认为 16781312):
将使用默认值 16781312
Last 扇区, +扇区 or +size{K,M,G} (16781312-41943039,默认为 41943039):+8G
分区 5 已设置为 Linux 类型,大小设为 8 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 1 extended, 1 free)
l logical (numbered from 5)
Select (default p): l
添加逻辑分区 6
起始 扇区 (33560576-41943039,默认为 33560576):
将使用默认值 33560576
Last 扇区, +扇区 or +size{K,M,G} (33560576-41943039,默认为 41943039):
将使用默认值 41943039
分区 6 已设置为 Linux 类型,大小设为 4 GiB
命令(输入 m 获取帮助):
(5)最后再次输入“p”,查看分区创建情况,执行相关操作命令如下:
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0bcee221
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
/dev/sdb2 10487808 16779263 3145728 83 Linux
/dev/sdb3 16779264 41943039 12581888 5 Extended
/dev/sdb5 16781312 33558527 8388608 83 Linux
/dev/sdb6 33560576 41943039 4191232 83 Linux
命令(输入 m 获取帮助):
(6)完成对硬盘的分区以后,输入“w”保存退出或输入“q”不保存退出fdisk。硬盘分区完成以后,一般需要重启系统以使设置生效,如果不想重启系统,可以使用partprobe命令使系统获新的分区表的情况,这里可以执行partprobe命令重新探测/dev/sdb硬盘中分区表的变化情况,执行相关操作命令如下:
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# partprobe /dev/sdb
[root@localhost ~]# fdisk -l
磁盘 /dev/sda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x00011a58
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 83886079 40893440 8e Linux LVM
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0bcee221
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
/dev/sdb2 10487808 16779263 3145728 83 Linux
/dev/sdb3 16779264 41943039 12581888 5 Extended
/dev/sdb5 16781312 33558527 8388608 83 Linux
/dev/sdb6 33560576 41943039 4191232 83 Linux
磁盘 /dev/mapper/centos-root:37.7 GB, 37706792960 字节,73646080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:4160 MB, 4160749568 字节,8126464 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@localhost ~]#
到此,已经完成了新增加硬盘的分区操作。
(6)什么是逻辑卷
在LVM中主要涉及以下几个概念。
1、物理存储介质(Physical Storage Media)。
指系统的物理存储设备:磁盘,如:/dev/sda、/dev/had等,是存储系统最底层的存储单元。
2、物理卷(Physical Volume,PV)。
指磁盘分区或逻辑上与磁盘分区具有同样功能的设备,是LVM的最基本存储逻辑块,但和基本的物理存储介质(如:分区、磁盘)比较,包含有与LVM相关的管理参数。
3、卷组(Volume Group,VG)。
类似于非LVM系统中的物理磁盘,由一个或多个物理卷组成,可以在卷组上创建一个或多少个逻辑卷。
4、逻辑卷(Logical Volume,LV)。
可以将卷组划分成若干个逻辑卷,相当于在逻辑硬盘上划分出几个逻辑分区,逻辑卷建立在卷组之上,每个逻辑分区上都可以创建具体的文件系统,如:/home、/mnt等。
5、物理块(Physical Eextent,PE)。
每一个物理卷疲划分成称为物理块的基本单元,具有唯一编号的物理块是可以被LVM寻址的最小单元,物理块的大小是可以配置的,默认为4MB,物理卷由大小相同的基本单元物理块组成。
在Centos7.6系统中,LVM得到了重视,在安装系统的过程中,如果设置由系统自动进行分区,则系统除了创建一个“/boot”引导分区之外,会将剩余的磁盘空间全部采用LVM进行管理,并在其中创建两个逻辑卷,分别挂载到根分区和交换分区。
(7)如何创建逻辑卷
【实例13】下面将/dev/sdb2和/dev/sdb6的分区类型改为“Linux LVM”,也就是要将分区的ID修改为“8e”。分区创建成功后要保存分区表,重启系统或执行“partprobe /dev/sdb”命令即可,执行相关操作命令,如图4.14所示。
正在上传…重新上传取消
项目五 网络配置管理
2.简答题
(1)如何配置本地的IP地址以及修改本机的主机名?
【实例1】配置网络IP地址,并查看相关信息。
(1)进入Linux操作系统终端窗口,输入:ifconfig或ip address命令,可以查看本地IP地址情况,如图5.1所示。
正在上传…重新上传取消
图5.1 查看本地IP地址
(2)编辑网络配置文件/etc/sysconfig/network-scripts/ifcfg-ens33,如图5.2所示。
正在上传…重新上传取消
图5.2 编辑网络配置文件
(3)修改网卡配置文件内容,使用vim编辑器进行配置内容修改,相关配置修改内容如下,如图5.3所示,
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
修改选项:
BOOTPROTO=dhcp--->static // DHCP动态主机配置协议,配置为静态
ONBOOT=no--->yes //是否激活网卡,配置为激活状态
增加选项:
IPADDR=192.168.100.100 //配置IP地址
PREFIX=24或NETMASK=255.255.255.0 //配置网络子网掩码
GATEWAY=192.168.100.2 //配置网关
DNS1=8.8.8.8 //配置DNS地址解析
[root@localhost ~]# systemctl restart network //重启网络服务
正在上传…重新上传取消
图5.3 修改网卡配置文件内容
(4)查看网络配置结果,使用ifconfig命令,如图5.4所示。
正在上传…重新上传取消
2.主机名配置文件(/etc/hostname)与主机名解析配置文件(/etc/hosts)
[root@localhost ~]# cat /etc/hostname
localhost.localdomain
[root@localhost ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@localhost ~]#
该文件只有一行,记录着本机的主机名,用户在安装CentOS7.6时指定的主机名,将保存在该文件中,用户可以直接对它进行修改。
注意:直接修改/etc/hostname中的主机名时,应同时更改/etc/hosts文件内容。
【实例3】使用hostnamectl命令修改查看主机名,执行相关操作如下:
(1)查看当前主机名,如图5.6所示。
正在上传…重新上传取消
图5.6 查看当前主机名
(2)设置新的主机名,并查看相关信息,如图5.7所示。
正在上传…重新上传取消
图5.7 设置主机名并查看相关信息
(2)如何使用ip命令来查看本地的IP、路由等信息?
(3)ip命令查看路由表信息,如图5.25所示。
正在上传…重新上传取消
图5.25 ip命令查看路由表信息
(3)如何监控本机的磁盘、内存、CPU的使用情况
【实例10】使用iostat命令查看CPU、磁盘性能等相关数据,执行相关操作如下:
(1)使用iostat命令查看CPU、磁盘利用率,如图5.28所示。
正在上传…重新上传取消
图5.28 查看CPU、磁盘利用率
(2)使用iostat命令显示磁盘整体状况信息,如图5.29所示。
正在上传…重新上传取消
图5.29 显示磁盘整体状况信息
各字段输出选项的具体含义,如表5.12所示。
表5.12 iosta命令各字段输出选项及功能说明
选项 | 功能说明 |
Tps | 每秒I/O数(即IOPS,磁盘连续读和连续写之和) |
Blk_read/s | 每秒从设备读取的数据大小,单位block/s(块每秒) |
Blk_wrtn/s | 每秒写入设备的数据大小,单位block/s |
Blk_read | 从磁盘读出的块的总和 |
Blk_wrtn | 写入磁盘的块的总数 |
KB_read/s | 每秒从磁盘读取的数据大小,单位KB/s |
KB_wrtn/s | 每秒写入磁盘的数据大小,单位KB/s |
KB_read | 从磁盘读出的数据总和,单位KB |
KB_wrtn | 写入磁盘读数据总和,单位KB |
rrqm/s | 每秒合并到设备的读请求数 |
wrqm/s | 每秒合并到设备的写请求数 |
r/s | 每秒向磁盘发起的读操作数 |
w/s | 每秒向磁盘发起的写操作数 |
rsec/s | 每秒向磁盘发起读取的扇区数量 |
wsec/s | 每秒向磁盘发起写入的扇区数量 |
avgrq-sz | I/O请求的平均大小,以扇区为单位 |
avgqu-sz | 向设备发起I/O请求队列的平均队列长度 |
await | I/O请求的平均等待时间,单位为毫秒,这个时间包括请求队列消耗的时间和为每个请求服务的时间 |
svctm | I/O请求的平均服务时间,单位为毫秒 |
%util | 处理I/O请求所占用的百分比,即设备利用率,当这个值接近100%时,表示磁盘I/O已经饱和 |
【实例12】使用mpstat命令实时进行系统监控,查看多核CPU核心的当前运行状态信息,每3秒更新一次,执行相关操作,如图5.32所示。
正在上传…重新上传取消
图5.32 查看多核CPU核心的当前运行状态信息
项目六 软件包管理
2.简答题
(1)简述RPM包的优缺点?
RPM的优点
(1)已经编译且打包,安装方便。
(2)软件信息记录在RPM数据库中,方便查询、验证与卸载。
RPM的缺点
(1)当前系统环境必须与原RPM包的编译环境一致。
(2)需要满足依赖属性要求。
(3)卸载时注意,最底层的软件不可以先移除,否则可能会造成整个系统的问题。
(2)简述RPM包命令格式?
1.典型的命名格式(常用)
典型的命名格式如下:
软件名-版本号-释出号.体系号.rpm
如果体系号为src时,表明为源代码包,否则执行程序包。如wxy-3.5.6-8.x86_64.rpm为执行程序包,软件名为:wxy,主版号为:3,次版号为:5,修订版本号为:6,释出号为:8,适用体系为:x86_64,扩展名为:rpm,而wxy-3.5.6-8.src.rpm则为源代码包。
2.URL方式的命名格式(较常用)
(1)FTP方式命名格式。
ftp://[用户名[:密码]@]主机[:端口]/包文件
3.其他命名格式(很少使用)
命名格式:任意
如:将wxy-3.5.6-8.x86_64.rpm改名为wxy.txt,用RPM安装也会安装成功,其根本原因是RPM判定一个文件是否是RPM格式,不是看名字,而看内容,看其是否符合特定的格式。
(3)rpm和yum命令有何区别?
rpm 只能安装已经下载到本地机器上的rpm 包. yum能在线下载并安装rpm包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是rpm 工具所不具备的。
(4)简述yum软件包安装过程?
【实例6】安装、删除、升级软件命令,执行相关操作如下。
(1)使用“yum -y install passwd-0.79-6.el7.x86_64”安装软件,yum会自动处理依赖问题、安装好依赖并且显示出来,如果不加“-y”参数,则会提示确认,如图6.11所示。
正在上传…重新上传取消
图6.11使用yum安装软件
(1)使用“yum remove unrar”卸载软件unrar,如图6.12所示。
正在上传…重新上传取消
图6.12使用yum卸载软件unrar
(2)使用“yum -y update firefox”升级软件,如图6.13所示。
正在上传…重新上传取消
图6.13使用yum升级软件firefox
(5)如何配置本地yum仓库源文件?
(3)配置本地yum仓库源文件(/etc/yum.repos.d/firefox.repo),执行相关操作命令如下,操作过程结果,如图6.17所示。
[root@localhost ~]# vim /etc/yum.repos.d/firefox.repo //配置本地yum仓库源文件
# /etc/yum.repos.d/firefox.repo
[firefox]
name=centos 7.6-Base-firefox.repo
baseurl=file:///mnt/cdrom
enabled=1
priority=1
gpgcheck=0
~
"/etc/yum.repos.d/firefox.repo" [新] 6L, 102C 已写入
[root@localhost ~]#
项目七 Shell编程基础
2.简答题
(1)简述Shell Script编写中的注意事项?
(1)命令的执行从上而下,从左至右进行的。
(2)命令、参数与选项间的多个空格都会被忽略掉。
(3)空白行也将被忽略掉,并且按“TAB”键所生成的空白行同样被视为空格键。
(4)如果读取到一个Enter符号(CR),就尝试开始运行该行(或该串)命令。
(5)如果一行的内容太多,则可以使用“\[Enter]”来延伸至下一行。
(6)“#”可作为注解,任何加在“#”后面的数据将全部被视为注解文字而被忽略。
(2)简述运行Shell Script脚本有几种方法?。
(1)输入脚本的绝对路径或相对路径。
[root@localhost ~]# mkdir /home/script
[root@localhost ~]# cd /home/script/
[root@localhost script]# vim shell01.sh //编写shell01.sh文件
echo "hello everyone welcome to here !"
~
"shell01.sh" 1L, 41C 已写入
[root@localhost script]# chmod a+x shell01.sh //修改用户执行权限
[root@localhost script]# /home/script/shell01.sh //绝对路径执行
hello everyone welcome to here !
[root@localhost script]# . /home/script/shell01.sh //“.”后面需要有空格
hello everyone welcome to here !
[root@localhost script]#
(2)执行bash或sh脚本。
[root@localhost script]# bash /home/script/shell01.sh
hello everyone welcome to here !
[root@localhost script]# sh /home/script/shell01.sh
hello everyone welcome to here !
[root@localhost script]#
(3)在脚本路径前加“.”或source。
[root@localhost script]# . shell01.sh
hello everyone welcome to here !
[root@localhost script]# source shell01.sh
hello everyone welcome to here !
[root@localhost script]# source /home/script/shell01.sh
hello everyone welcome to here !
[root@localhost script]#
(3)简述一个Shell Script脚本通常包括几部分?
一个Shell Script脚本通常包括如下部分。
(1)首行。
首行表示脚本将要调用的Shell解释器,如下显示内容。
#! /bin/bash
“#!”符号能够被内核识别为一个脚本的开始,必须位于脚本的首行;/bin/bash是bash程序的绝对路径,表示后续的内容通过bash程序解释执行。
(2)注释。
注释符号“#”放在需要注释内容的前面,最好备注Shell脚本的功能以防日后忘记。
(3)内容。
可执行内容是经常使用的Linux命令或程序语言。
编写Shell Script,实现firefox软件包自动安装,自行运行结果。
#! /bin/bash
#firefox软件包安装
#version 1.1
#制作人:csg 联系方式QQ:84813752
#版权声明:free
rpm -qa firefox
yum -y remove firefox
mkdir /mnt/backup-repo
mv /etc/yum.repos.d/* /mnt/backup-repo
umount /dev/sr0
mkdir /mnt/cdrom
mount /dev/sr0 /mnt/cdrom
touch /etc/yum.repos.d/local.repo
echo -e "[firefox]\nname=centos 7.6-Base-firefox.repo\nbaseurl=file:///mnt/cdrom" > /etc/yum.repos.d/local.repo
#-e 启用解释反斜杠的转义功能;\n为新行
echo -e "enabled=1\npriority=1\ngpgcheck=0" >> /etc/yum.repos.d/local.repo
yum clean all
yum repolist all
yum -y install firefox
rpm -qa firefox
(4)简述Shell变量的设置规则?
Shell变量的设置规则如下。
(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名称建议采用大写字母,便于区分。
(2)在bash中,变量的默认类型都是字符串型,如果要进行数值运算,则必须指定变量类型为数值型。
(3)变量用等号连接值,等号两侧不能有空格。
(4)变量的值如果有空格,需要使用单引号或者双引号括起来。
Shell中的变量分为用户自定义变量、环境变量、位置参数变量和预定义变量,可以通过set命令查看系统中的所有变量。
项目八 常用服务器配置与管理
2.简答题
(1)简述Samba服务器的功能及特点?
(1)共享目录。在局域网共享某些文件和目录,使用同一个网络内的Windows用户可以在网上邻居里访问该目录,就与访问网上邻居里的其他Windows计算机一样。
(2)目录权限。决定一个目录可以由哪些人访问,具有哪些访问权限,Samba运行设置一个目录让一个人、某些人、组和所有人访问。
(3)共享打印机。在局域网上共享打印机,使局域网和其他用户可以使用Linux操作系统的打印机。
(4)打印机使用权限。决定哪些用户可以使用打印机。
(5)提供SMB客户功能。在Linux下用类似FTP方式访问Windows计算机资源(包括使用Windows下的文件及打印机)。
Samba特点及作用
特点:可以实现跨平台文件传输,并支持在线修改。
作用:
(1)分享档案与打印机服务;
(2)可以提供用户登入SAMBA主机时的身份认证;
(3)可以进行Windows网络上的主机名解析 (NetBIOS name)。
(2)简述如何配置匿名用户、本地用户、虚拟用户登录FTP服务器?
(3)简述DHCP工作原理以及分配IP地址的机制?
动态主机配置协议(Dynamic Host Configuration Protocol,DHCP),是一个应用层协议。当我们将客户主机IP地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户机能够利用这个IP上网。
DHCP有三种分配IP地址的机制。
(1)手工分配。客户机的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机。
(2)自动分配。DHCP服务器为客户主机指定一个永久性的IP地址,一旦客户机第一闪成功从DHCP服务器租用到IP地址后,就可以永久性地使用该地址。
(3)动态分配。DHCP服务器给客户机指定一个具有时间限制的IP地址,在时间到期或主机明确表示放弃地时,该地址可以被其他主机使用。
在三种地址分配方式中,只有动态分配可以重复使用客户机不再需要的地址。
DHCP具有以下功能。
(1)可以给客户分配永久固定的IP地址。
(2)保证任何IP地址在同一时刻只能由一台客户机使用。
(3)可以与那些用其他方法获得IP地址的客户机共存。
(4)可以向现有的无盘客户机分配动态IP地址。
(4)简述DNS工作原理以及DNS服务器的类型?
在DNS域名空间结构中,根域位于最顶层,管理根域的DNS服务器称为根域服务器,顶级域位于根域的下一层,常见的顶级域有“.com”、“.edu”、“.org”、“.gov”、“.net”、“.pro”以及代表国家和地区的“.cn”、“.jp”等。顶级域服务器负责管理顶级域名的解析,在顶级域下面还有二级域服务器等,假如现在把解析“www.lncc.edu.com”的任务交给根域服务器,根域服务器并不会直接返回这个主机名的IP地址,因为根域服务器只知道各个顶级域服务器的地址,并把解析“.cn”顶级域名的权限“授权”给其中一台顶级域服务器(假设是服务器A)。如果根域服务器收到的请求中包括“.cn”顶级服务器的地址,这个过程一直继续下去,直到最后有一台负责处理“.lncc.edu.com”的服务器直接返回“www.lncc.edu.com”的IP 地址。在这个过程中,DNS把域名的解析权限层层向下授权下一级DNS服务器,这种基于授权的域名解析就是DNS的分级管理机制,又称区域委派。
(1)主DNS服务器。
它对所管理区域的域名解析提供最权威和最精确的响应,是所管理区域域名信息的初始来源,搭建主DNS服务器需要准备全套的配置文件,包括主配置文件、正向解析区域文件、反向解析区域文件、高速缓存初始化文件和回送文件等,正向解析是指从域名到IP地址的解析,反向解析正好相反。
(2)从DNS服务器。
它从主DNS服务器中获得完整的域名信息备份,也可以对外提供权威和精确的域名解析,可以减轻主DNS服务器的查询负载,从DNS服务器包的域名信息和主DNS服务器完全相同,它是主DNS服务器的备份,提供的是冗余的域名解析服务。
(3)高速缓存DNS服务器。
它将从其他DNS服务器处获得的域名信息保存在自己的高速缓存中,并利用这些信息为用户提供域名解析服务,高速缓存DNS服务器的信息都有时效性,过期之后 便不再可用,高速缓存DNS服务器不是权威服务器。
(4)转发DNS服务器。
它在对外提供域名解析服务时,优先从本地缓存中查找,如果本地缓存没有匹配的数据,则会向其他DNS服务器转发域名解析请求,并将从其他DNS服务器中获得的结果保存在自己的缓存中,转发DNS服务器的特点是可以向其他DNS服务器转发自己无法完成的解析请求任务。
(5)简述如何配置Apache服务器以及使用虚拟目录的优势?
1.设置文档根目录和首页文件的实例配置
默认情况下,网站的文档根目录保存在/var/www/html目录中,如果想把保存网站文档的根目录修改为/home/www目录中,并且将首页文件修改为myweb.html,那么该如何操作呢?
(1)修改根目录为/home/www,并创建首页文件myapacheweb.html。
[root@localhost ~]# mkdir /home/www -p
[root@localhost ~]# echo "This is my first Apache web site" > /home/www/myweb.html
(2)修改Apache主配置文件。
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
……
DocumentRoot "/home/www" //修改文档根目录
<Directory "/ home /www"> //网站数据目录的权限
AllowOverride None
Require all granted
</Directory>
<Directory "/home/www">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex myweb.html //修改默认主页
</IfModule>
……
(3)防火墙放行http服务,重启httpd服务。
[root@localhost ~]# firewall-cmd --permanent --add-service=http
Warning: ALREADY_ENABLED: http
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens33
sources:
services: ssh dhcpv6-client dns http
……
[root@localhost ~]#
(4)在Linux客户端Clinet1进行测试(保证网络相互通信),在浏览器中输入http://192.168.100.100进行结果测试,如图8.36所示,发现在在客户端结果测试失败,这是什么原因引起的呢?,解决方法是在服务器端运行setenforce 0,设置SELinux为允许,操作命令如下:
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
Permissive
[root@localhost ~]#
设置完成后,再测试一下结果,如图8.37所示。
正在上传…重新上传取消
图8.36 在客户端结果测试失败
图8.37 在客户端结果测试成功
优势:
要从Web站点目录以外的其他目录发布站点,可以使用虚拟目录实现,虚拟目录是一个位于Apache服务器主目录之外的目录,它不包括在Apache服务器的主目录 中,但在访问Web站点的用户看来,它与位于主目录的子目录是一样的,每一个虚拟目录都有一个别名,客户端可以通过此别名来访问虚拟目录。
由于每个虚拟目录都可以分别设置不同的访问权限,所以非常适合不同用户对不同目录拥有不同权限的情况,另外,只有知道虚拟目录的用户才可以访问此虚拟目录,除此之外的其他用户将无法访问此虚拟目录。