1、分别用cat ac l三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处?
(1)[root@localhost ~]# cat -n /etc/ssh/ssh_config 对空白行也进行标号
(2)[root@localhost ~]# tac -n /etc/ssh/sshd_config 倒着显示文件内容
(3)[root@localhost ~]# nl -n /etc/ssh/sshd_config 对空白行不进行标号
2、分别用more和less查看/etc/ssh/sshd_config里面的内容,请用总结more和less两个命令的相同和不同之处?
[root@localhost ~]# more /etc/ssh/sshd_config 全屏方式分页显示文件内容
[root@localhost ~]# less /etc/ssh/sshd_config 按“/”可以查找内容
3、将/etc/passwd文件中的前20行重定向保存到/root下改名为20_pass.txt,将/etc/passwd文件中的后15行重定向保存到/root下改名为:pass_15.txt
[root@localhost ~]# head -20 /etc/passwd >/root/20_pass.txt
[root@localhost ~]# ls
20_pass.txt abc anaconda-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@localhost ~]# tail -15 /etc/passwd >/root/pass_15.txt
[root@localhost ~]# ls
20_pass.txt anaconda-ks.cfg 公共 视频 文档 音乐
abc pass_15.txt 模板 图片 下载 桌面
4、请用一个命令统计/etc/hosts文件包含有多少行?多少字节?多少单词数?
[root@localhost ~]# wc -lwc /etc/hosts
2 10 158 /etc/hosts
5、练习使用grep和egrep
5.1.通过grep管道工具过滤出ifconfig命令显示信息中的IP字段?
[root@localhost ~]# ifconfig | grep "inet" | grep -o "t .* n" | grep -o " .* " | head -1
192.168.100.161
5.2.将/etc/passwd文件中的前20行重定向保存到/root下名称为pass?
root@localhost ~]# head -20 /etc/passwd >/root/pass
[root@localhost ~]# ls
20_pass.txt anaconda-ks.cfg pass_15.txt 模板 图片 下载 桌面
abc pass 公共 视频 文档 音乐
5.3.过滤/etc/passwd文件中含有/sbin/nologin 的行并统计行数?
[root@localhost ~]# grep "/sbin/nologin" /etc/passwd | wc -l
35
5.4 过滤/etc/passwd文件中以sh结尾的行,及以 root开头的行,不显示包含login的行?
[root@localhost ~]# grep "sh$" /etc/passwd | grep "^root" | grep -v "login"
root:x:0:0:root:/root:/bin/bash
5.5 分别用grep和egrep过滤出/etc/ssh/sshd_config文件中不包含“#”开头和空白的行?
(1)[root@localhost ~]# grep -v "^#" /etc/ssh/sshd_config | grep -v "^$"
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
SyslogFacility AUTHPRIV
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
ChallengeResponseAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials no
UsePAM yes
X11Forwarding yes
UsePrivilegeSeparation sandbox # Default for new installations.
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
Subsystem sftp /usr/libexec/openssh/sftp-server
(2)[root@localhost ~]# egrep -v "^#|^$" /etc/ssh/sshd_config
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
SyslogFacility AUTHPRIV
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
ChallengeResponseAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials no
UsePAM yes
X11Forwarding yes
UsePrivilegeSeparation sandbox # Default for new installations.
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
Subsystem sftp /usr/libexec/openssh/sftp-server
6.1 通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.gz
[root@localhost ~]# tar -zcf /root/file.tar.gz /etc/passwd
tar: 从成员名中删除开头的“/”
[root@localhost ~]# ls
20_pass.txt anaconda-ks.cfg pass 公共 视频 文档 音乐
abc file.tar.gz pass_15.txt 模板 图片 下载 桌面
6.2通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.bz2
root@localhost ~]# tar -jcf /root/file.tar.bz2 /etc/passwd
tar: 从成员名中删除开头的“/”
[root@localhost ~]# ls
20_pass.txt anaconda-ks.cfg file.tar.gz pass_15.txt 模板 图片 下载 桌面
abc file.tar.bz2 pass 公共 视频 文档 音乐
6.3创建空文件夹/web/test1,并将file.tar.bz2 解包并释放到/web/test1目录下?
[root@localhost ~]# mkdir -p /web/test1
[root@localhost ~]# tar -xf /root/file.tar.bz2 -C /web/test1
[root@localhost ~]# tar tf file.tar.bz2
etc/passwd
7.1 通过vi编辑/web/test1/passwd文件将文件里为root单词全部替换成benet。
[root@localhost ~]# vi /web/test1/etc/passwd
root:x:0:0:root:/root:/bin/bash
:% s/root/benet/g
4 substitutions on 2 lines
:wq
benet:x:0:0:benet:/benet:/bin/bash
7.2 通过vi编辑 删除pass文件第1、5、10行。
[root@localhost ~]# vi pass
7.3 在vi中显示pass文件行号复制文件2 3 4行粘贴到以lp开头的行下。
7.4 通过vi编辑 查找文件内包含mail var等字符串,并记录所在行号。
:/mail n
:/var n
mail:8 var:1、2、3、8、16、18
7.5 通过vi编辑 快速跳转到文件的第二行,通过r 读取 /etc/hosts 文件的内容到第二行下。
:2
:r /etc/hosts
7.6将更改后的文件使用vim另存为/root/new_pass。
:w /root/new_pass
7.7将new_pass文件压缩成gz格式并改名为npass.gz文件。
[root@localhost ~]# gzip new_pass
[root@localhost ~]# ls
20_pass.txt anaconda-ks.cfg file.tar.gz pass 公共 视频 文档 音乐
abc file.tar.bz2 new_pass.gz pass_15.txt 模板 图片 下载 桌面
[root@localhost ~]# mv new_pass.gz npass.gz
[root@localhost ~]# ls
20_pass.txt anaconda-ks.cfg file.tar.gz pass 公共 视频 文档 音乐
abc file.tar.bz2 npass.gz pass_15.txt 模板 图片 下载 桌面
8统计/dev 目录下的文件数量。
[root@localhost ~]# ls /dev | wc -w
155
[root@localhost ~]# ls -al /dev/ | grep -v "^d" | wc -l
139
9.1在/boot下查找文件名以vmlinuz开头的文件?
[root@localhost ~]# find /boot -name vmlinuz*
/boot/vmlinuz-3.10.0-229.el7.x86_64
/boot/vmlinuz-0-rescue-0d2a67e7e5f2443a9b4aa9232abbce4f
9.2在/boot下查找文件大小大于3M 小于 20M 的文件
[root@localhost ~]# find /boot -size +3M -a -size -20M
/boot/vmlinuz-3.10.0-229.el7.x86_64
/boot/vmlinuz-0-rescue-0d2a67e7e5f2443a9b4aa9232abbce4f
/boot/initramfs-3.10.0-229.el7.x86_64.img
10 请详细写出构建本地yum仓库的步骤?并在每行命令后面用自己的话做上中文注释?
umount /dev/sr0 //卸载光盘
mount /dev/sr0 /media/ //挂载光盘
ls /media/ //查看
构建本地YUM仓库文档
cd /etc/yum.r*
mkdir a/
mv C* a/
创建本地yum仓库文档
vi. /local.repo
[cdrom] //仓库名称
name=cdrom
baseurl=file:///media //制定rpm包的位置
enabled=1 //启用本地yum仓库
gpgcheck=0 //禁用gpg校验
yum -y clean all //清除yum缓存
yum makecache //重建yum缓存
rpm -q vsftpd //查询是否安装vsftpd
yum -y install vsftpd //用yum安装vsftpd
rpm -q vsftpd //查询是否安装vsftpd
yum -v remove vsftpd //用yum卸载vsftpd
rpm -q vsftpd //查询是否卸载vsftpd
11、用yum命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost ~]# yum -y install vsftpd
已加载插件:fastestmirror, langpacks
cdrom | 3.6 kB 00:00:00
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 vsftpd.x86_64.0.3.0.2-9.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
=======================================================================================
Package 架构 版本 源 大小
=======================================================================================
正在安装:
vsftpd x86_64 3.0.2-9.el7 cdrom 165 k
事务概要
=======================================================================================
安装 1 软件包
总下载量:165 k
安装大小:343 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : vsftpd-3.0.2-9.el7.x86_64 1/1
验证中 : vsftpd-3.0.2-9.el7.x86_64 1/1
已安装:
vsftpd.x86_64 0:3.0.2-9.el7
完毕!
[root@localhost ~]# rpm -q vsftpd
vsftpd-3.0.2-9.el7.x86_64
[root@localhost ~]# yum -y remove vsftpd
已加载插件:fastestmirror, langpacks
正在解决依赖关系
--> 正在检查事务
---> 软件包 vsftpd.x86_64.0.3.0.2-9.el7 将被 删除
--> 解决依赖关系完成
依赖关系解决
=======================================================================================
Package 架构 版本 源 大小
=======================================================================================
正在删除:
vsftpd x86_64 3.0.2-9.el7 @cdrom 343 k
事务概要
=======================================================================================
移除 1 软件包
安装大小:343 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在删除 : vsftpd-3.0.2-9.el7.x86_64 1/1
验证中 : vsftpd-3.0.2-9.el7.x86_64 1/1
删除:
vsftpd.x86_64 0:3.0.2-9.el7
完毕!
[root@localhost ~]# rpm -q vsftpd
未安装软件包 vsftpd
12、用rpm命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost ~]# rpm -vi /media/Packages/vsftpd-3.0.2-9.el7.x86_64.rpm
警告:/media/Packages/vsftpd-3.0.2-9.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
软件包准备中...
vsftpd-3.0.2-9.el7.x86_64
[root@localhost ~]# rpm -q vsftpd
vsftpd-3.0.2-9.el7.x86_64
[root@localhost ~]# rpm -ev vsftpd
软件包准备中...
vsftpd-3.0.2-9.el7.x86_64
[root@localhost ~]# rpm -e vsftpd
错误:未安装软件包 vsftpd
13、通过源码方式通过解包、配置、编译、安装四个步骤安装源码软件httpd-2.2.17.tar.gz?并进行测试?