chapter02 - 03 作业
1、分别用cat ac l三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处?文件中的内容
[root@localhost ~]# cat -nA /etc/ssh/sshd_config
1 #^I$OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $$
2 $
[root@localhost ~]# tac /etc/ssh/sshd_config
# ForceCommand cvs server
[root@localhost ~]# nl /etc/ssh/sshd_config
1 # $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $
1:查看全部文件内容 2:倒序显示文件内容 3:以行号显示文件内容,除去空白行。
2、分别用more和less查看/etc/ssh/sshd_config里面的内容,请用总结more和less两个命令的相同和不同之处?
[root@localhost ~]# more /etc/ssh/sshd_config
# $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $
--More--(17%)
[root@localhost ~]# less /etc/ssh/sshd_config
# $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $
不同点: 相同点:全屏方式显示文件内容。
More:以百分比方式显示文件内容
Less:倒序分页查看文件内容
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
[root@localhost ~]# tail -15 /etc/passwd > /root/pass_15.txt
[root@localhost ~]# ls pass_15.txt
4、请用一个命令统计/etc/hosts文件包含有多少行?多少字节?多少单词数?
[root@localhost ~]# wc /etc/hosts
2 10 158 /etc/hosts
5、练习使用grep和egrep
5.1.通过grep管道工具过滤出ifconfig命令显示信息中的IP字段?
[root@localhost ~]# ifconfig |grep "inet "
inet 192.168.100.176 netmask 255.255.255.0 broadcast 192.168.100.255
inet 127.0.0.1 netmask 255.0.0.0
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
5.3.过滤/etc/passwd文件中含有/sbin/nologin 的行并统计行数?
[root@localhost ~]# grep /sbin/nologin /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin [root@localhost ~]# wc -l /etc/passwd 44 /etc/passwd
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 ~]# grep -v "^#" /etc/ssh/sshd_config |grep -v "^$"
HostKey /etc/ssh/ssh_host_rsa_key
[root@localhost ~]# egrep "sh$" /etc/passwd |grep "^root" |grep -v "login"
root:x:0:0:root:/root:/bin/bash
6.1 通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.gz
[root@localhost ~]# tar -czf /root/file.tar.gz /etc/passwd
tar: 从成员名中删除开头的“/”
file.tar.gz
6.2通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.bz2
[root@localhost ~]# tar -cjf /root/file.tar.bz2 /etc/passwd
tar: 从成员名中删除开头的“/”
[root@localhost ~]# ls
file.tar.bz2
6.3创建空文件夹/web/test1,并将file.tar.bz2 解包并释放到/web/test1目录下?
[root@localhost ~]# mkdir -pv /web/test1
mkdir:已创建目录 "/web"
mkdir: 已创建目录 "/web/test1
[root@localhost ~]# tar -xf /root/file.tar.bz2 -C/web/test1
[root@localhost ~]# ls /web/test1
etc
7.1 通过vi编辑/web/test1/passwd文件将文件里为root单词全部替换成benet。
:% s/root/benet/g
benet:x:0:0:benet:/benet:/bin/bash
7.2 通过vi编辑 删除pass文件第1、5、10行。
dd
7.3 在vi中显示pass文件行号复制文件2,3,4行粘贴到以lp开头的行下。
2,4y p set nu
7.4 通过vi编辑 查找文件内包含mail var等字符串,并记录所在行号。
/mail var
7.5 通过vi编辑 快速跳转到文件的第二行,通过r 读取 /etc/hosts 文件的内容到第二行下。
C
r /etc/hosts
7.6将更改后的文件使用vim另存为/root/new_pas
:w /root/new_pass
7.7将new_pass文件压缩成gz格式并改名为npass.gz文件。
gzip new_pass
mv new_pass.gz napsas.gz
8统计/dev 目录下的文件数量
ls -l /dev/ |wc _l
9.1在/boot下查找文件名以vmlinuz开头的文件?
[root@localhost ~]# cd /boot/
[root@localhost boot]# find vmlinuz*
vmlinuz-0-rescue-311b75c2a1bf484ebce42b876cb0f867
vmlinuz-3.10.0-957.el7.x86_64
9.2在/boot下查找文件大小大于3M 小于 20M
[root@localhost boot]# find -size +3M -a -size -20M
./System.map-3.10.0-957.el7.x86_64
./vmlinuz-3.10.0-957.el7.x86_64
./vmlinuz-0-rescue-311b75c2a1bf484ebce42b876cb0f867
10 请详细写出构建本地yum仓库的步骤?并在每行命令后面用自己的话做上中文注释?
1::umount /beidaqingniao/ 卸载光盘
2 mount /dev/sr0/ biedaqingniao/ 挂载光盘
3 cd /etc/yum.r* 切换到设备目录
4 mkdir a/ 创建目录
5 mv /C* a/ 剪切C字开头的文件到a
6 vi .local.repo 进入文本编辑
7 [cdroom] 仓库名称
8 name=cdrom
baseurl=file:///media //指定rpm包的位置
enabled=1 //启用本地yum仓库
gpgcheck=0 //禁用gpg校验
清除yum缓存
yum -y clean all
重建yum缓存
yum makecache
---------------------
查询是否安装vsftpd
rpm -q vsftpd
用yum安装vsftpd
yum -y install vsftpd
查询是否安装vsftpd
rpm -q vsftpd
用yum卸载vsftpd
yum -y remove vsftpd
查询是否卸载vsftpd
rpm -q vsftpd
1、用yum命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost ~]# umount /dev/sr0
[root@localhost ~]# mount /dev/sr0/ /media/
root@localhost ~]# cd /etc/yum.repos.d/
root@localhost yum.repos.d]# mkdir a/
root@localhost yum.repos.d]# mv C* a/
root@localhost yum.repos.d]# vi local.repo
[root@localhost yum.repos.d]# yum -y clean all
root@localhost yum.repos.d]# yum -y install vsftpd
[root@localhost yum.repos.d]# rpm -q vsftpd
vsftpd-3.0.2-25.el7.x86_64
root@localhost ~]# yum -y remove vsftpd
root@localhost yum.repos.d]# rpm -q vsftpd
未安装软件包 vsftpd
12、用rpm命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
pm -i /media/Packages/vsftpd-3.0.2-25.el7.x86_64.rpm
[root@localhost ~]# rpm -q vsftpd
vsftpd-3.0.2-25.el7.x86_64
root@localhost ~]# rpm -e vsftpd
[root@localhost ~]# rpm -q vsftpd
未安装软件包 vsftpd
13、通过源码方式通过解包、配置、编译、安装四个步骤安装源码软件httpd-2.2.17.tar.gz
[root@localhost ~]# tar -xf httpd-2.2.17.tar.gz -C /usr/src
[root@localhost ~]# cd /usr/src/httpd-2.2.17/
[root@localhost httpd-2.2.17]# ./configure –prefix=/usr/local/apache
[root@localhost httpd-2.2.17]# make
[root@localhost httpd-2.2.17]# make install
[root@localhost httpd-2.2.17]#vi /usr/local/apache/conf/httpd.conf
ServerName www.example.com:80
root@localhost ~]#/usr/local/apache/bin/apachectl/start
运行:lynx 127.0.01