chapter02 - 03 作业
1、分别用cat \tac\nl三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处?
[root@localhost ~]# cat /etc/ssh/sshd_config (正序排列)
[root@localhost ~]# tac /etc/ssh/sshd_config(倒序排列)
[root@localhost ~]# nl /etc/ssh/sshd_config(不标记空行)
2、分别用more和less查看/etc/ssh/sshd_config里面的内容,请用总结more和less两个命令的相同和不同之处?
[root@localhost ~]# more /etc/ssh/sshd_config(enter向下一行,空格键向下一页,q退出)
[root@localhost ~]# less /etc/ssh/sshd_config(n向下,N向上,pgup向上,pgdn向下)
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 ~]# tail -15 /etc/passwd > /root/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"
inet 192.168.100.170 netmask 255.255.255.0 broadcast 192.168.100.255
inet6 fe80::25b6:b2dd:5b0d:f738 prefixlen 64 scopeid 0x20<link>
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
5.2.将/etc/passwd文件中的前20行重定向保存到/root下名称为pass?
[root@localhost ~]# head -20 /etc/passwd > /root/pass
5.3.过滤/etc/passwd文件中含有/sbin/nologin 的行并统计行数?
[root@localhost ~]# grep "/sbin/nologin" /etc/passwd | wc
36
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文件中不包含“#”开头和空白的行?
[root@localhost dev]# grep -v "^#" /etc/ssh/sshd_config | grep "^$" -v
[root@localhost ~]# egrep -v "^#|^$" /etc/ssh/sshd_config ‘’’’’
6.1 通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.gz
[root@localhost ~]# tar czvf /root/file.tar.gz /etc/passwd
tar: 从成员名中删除开头的“/”
/etc/passwd
[root@localhost ~]# ls
20_pass.txt initial-setup-ks.cfg 模板 下载
anaconda-ks.cfg pass 视频 音乐
file.tar.gz pass_15.txt 图片 桌面
fuqingqing 公共
6.2通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.bz2
[root@localhost ~]# tar cjvf /root/file.tar.bz2 /etc/passwdtar: 从成员名中删除开头的“/”
/etc/passwd
[root@localhost ~]# ls
20_pass.txt fuqingqing 公共 文档
anaconda-ks.cfg initial-setup-ks.cfg 模板 下载
file.tar.bz2 pass 视频 音乐
file.tar.gz pass_15.txt 图片 桌面
6.3创建空文件夹/web/test1,并将file.tar.bz2 解包并释放到/web/test1目录下?
[root@localhost boot]# mkdir /web/test1
[root@localhost ~]# tar xf file.tar.bz2 -C /web/test1
7.1 通过vi编辑/web/test1/passwd文件将文件里为root单词全部替换成benet。
[root@localhost ~]# vi /web/test1/etc/passwd
:% s/root/benet/g
7.2 通过vi编辑 删除pass文件第1、5、10行。
vi pass
按esc进入输入模式,1G 光标移到第一行,dd删除第一行
5G光标移到第五行,dd删除第五行
10G 光标移到第十行,dd删除第十行
:wq保存退出
7.3 在vi中显示pass文件行号复制文件2 3 4行粘贴到以lp开头的行下。
vi pass
:set nu
2G 3yy 光标移到ip开头的那一行,p粘贴
7.4 通过vi编辑 查找文件内包含mail var等字符串,并记录所在行号。
命令模式下 /mail
/var
7.5 通过vi编辑 快速跳转到文件的第二行,通过r 读取 /etc/hosts 文件的内容到第二行下。
[root@localhost ~]# vi pass
2G跳转第二行
r /etc/hosts
7.6将更改后的文件使用vim另存为/root/new_pass。
:w /root/new_pass
"~/new_pass" [New] 23L, 1038C written
7.7将new_pass文件压缩成gz格式并改名为npass.gz文件。
[root@localhost ~]# tar czvf npass.gz new_pass
new_pass
[root@localhost ~]# ls
20_pass.txt file.tar.bz2 fuqingqing new_pass pass qing 模板 图片 下载 桌面
anaconda-ks.cfg file.tar.gz initial-setup-ks.cfg npass.gz pass_15.txt 公共 视频 文档 音乐
8 统计/dev 目录下的文件数量。
[root@localhost dev]# ls -l |wc -l
158
9.1在/boot下查找文件名以vmlinuz开头的文件?
[root@localhost boot]# find -name "vmlinuz*"
./vmlinuz-3.10.0-693.el7.x86_64
./vmlinuz-0-rescue-71f48d040d9b4f5cb1796f619e5865c6
9.2在/boot下查找文件大小大于3M 小于 20M 的文件
[root@localhost boot]# find -size +3M -a -size -20M
./System.map-3.10.0-693.el7.x86_64
./vmlinuz-3.10.0-693.el7.x86_64
./vmlinuz-0-rescue-71f48d040d9b4f5cb1796f619e5865c6
./initrd-plymouth.img
./initramfs-3.10.0-693.el7.x86_64kdump.img
10 请详细写出构建本地yum仓库的步骤?并在每行命令后面用自己的话做上中文注释?
Umount /dev/sr0 卸载光盘
Mount /dev/sr0 /media / 挂载光盘
Ls/media 查询
Cd /etc/yum.r* 创建本地YUM文档
Mkdir a/ 创建一个空文件夹
Mv C* a/ 把光驱移到文件夹里
Vi qingqing.repo 创建本地YUM仓库文档
[qingqing] 仓库名称
Name=qingqing
Baseurl=file:///media/ 指定RPM包位置
Enabled=1 启动本地YUM仓库
Gpgcheck=0 禁用gpg校验
:wq 保存退出
Yum -y clean all 清除本地YUM缓存
Yum makecache重建本地YUM缓存
11、用yum命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost yum.repos.d]# rpm -q vsftpd
未安装软件包 vsftpd
[root@localhost yum.repos.d]# yum -y install vsftpd.x86_64
[root@localhost yum.repos.d]# yum -y remove vsftpd.x86_64
[root@localhost yum.repos.d]# rpm -q vsftpd
未安装软件包 vsftpd
12、用rpm命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost Packages]# rpm -q vsftpd
未安装软件包 vsftpd
[root@localhost Packages]# rpm -ivh vsftpd-3.0.2-22.el7.x86_64.rpm
警告:vsftpd-3.0.2-22.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:vsftpd-3.0.2-22.el7 ################################# [100%]
[root@localhost Packages]# rpm -e vsftpd
[root@localhost Packages]# rpm -q vsftpd
未安装软件包 vsftpd