1、分别用cat \tac\nl三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处?
1)[root@localhost ~]cat /etc/ssh/sshd_config
2)[root@localhost ~]tac /etc/ssh/sshd_config
3)[root@localhost ~]nl /etc/ssh/sshd_config
cat是显示文件内容,tac是到过来显示文件内容,nl类似于cat -n。但是空白行不标行号
2、分别用more和less查看/etc/ssh/sshd_config里面的内容,请用总结more和less两个命令的相同和不同之处?
[root@localhost ~]more /etc/ssh/sshd_config
[root@localhost ~]less /etc/ssh/sshd_config
more是全屏分页显示文件内容,回车键可以下一行,空格键可以下一页,q退出。但是不可向上翻页
Less跟more类似,但是还可以通过pageup和pagedown翻页。通过/可以查找字符串,
3、将/etc/passwd文件中的前20行重定向保存到/root下改名为20_pass.txt,将/etc/passwd文件中的后15行重定向保存到/root下改名为:pass_15.txt
[root@localhost ~]# head -20 /etc/passwd >20_pass.txt
[root@localhost ~]# tail -15 /etc/passwd > 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.150 netmask 255.255.255.0 broadcast 192.168.100.255
inet6 fe80::95cd:794c:63dc:60c2 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>pass
5.3.过滤/etc/passwd文件中含有/sbin/nologin 的行并统计行数?
[root@localhost ~]# grep "/sbin/nologin" /etc/passwd|wc -l
36
5.4 过滤/etc/passwd文件中以sh结尾的行,及以 root开头的行,不显示包含login的行?
[root@localhost ~]# grep "$sh" /etc/passwd|grep "^root"|grep "login" -v
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
2.[root@localhost ~]# egrep "^#|^$" /etc/ssh/sshd_config -v
6.1 通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.gz
[root@localhost ~]# tar -czvf /root/file.tar.gz /etc/passwd
6.2通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.bz2
[root@localhost ~]# tar -cjvf /root/file.tar.bz2 /etc/passwd
6.3创建空文件夹/web/test1,并将file.tar.bz2 解包并释放到/web/test1目录下?
[root@localhost ~]# mkdir /web/test1 -pv //创建文件
mkdir: 已创建目录 "/web"
mkdir: 已创建目录 "/web/test1"
[root@localhost ~]# tar -xf file.tar.gz -C /web/test1 //释放
[root@localhost ~]# cd /web/test1/ // 进入
[root@localhost test1]# ls //列表
etc
7.1 通过vi编辑/web/test1/passwd文件将文件里为root单词全部替换成benet。
[root@localhost test1]# vi /web/test1/etc/passwd
:
/ %s/root/benet/g
7.2 通过vi编辑 删除pass文件第1、5、10行。
命令模式下
1G dd //删除第一行
5G dd //删除第五行
10G dd //删除第十行
7.3 在vi中显示pass文件行号复制文件2 3 4行粘贴到以lp开头的行下。
:set nu //显示行号
2G 3yy //复制 234行
光标移动到第四行
p //粘贴
7.4 通过vi编辑 查找文件内包含mail var等字符串,并记录所在行号。
命令模式下,/mail n查找下一个,N查找上一个
命令模式下,/var n查找下一个,N查找上一个
7.5 通过vi编辑 快速跳转到文件的第二行,通过r 读取 /etc/hosts 文件的内容到第二行下。
命令模式下:
2G //快速跳转
:r /rtc/hosts 读取
7.6将更改后的文件使用vim另存为/root/new_pass。
:w /root/new_pass
"~/new_pass" [New] 30L, 1467C written
7.7将new_pass文件压缩成gz格式并改名为npass.gz文件。
[root@localhost ~]# tar -cvzf npass.gz /root/new_pass
tar: 从成员名中删除开头的“/”
/root/new_pass
[root@localhost ~]# ls
anaconda-ks.cfg new_pass 公共 图片 音乐
file.tar.gz npass.gz 模板 文档 桌面
initial-setup-ks.cfg pass 视频 下载
8统计/dev 目录下的文件数量。
[root@localhost ~]# ls -l /dev|wc -l
158
9.1在/boot下查找文件名以vmlinuz开头的文件?
[root@localhost ~]# find /boot -name "vmlinuz*"
/boot/vmlinuz-3.10.0-693.el7.x86_64
/boot/vmlinuz-0-rescue-c9c41b41b23d4502addcffeff6b160d6
9.2在/boot下查找文件大小大于3M 小于 20M 的文件
{root@localhost ~]# find /boot -size +3M -a -size -20M
/boot/System.map-3.10.0-693.el7.x86_64
/boot/vmlinuz-3.10.0-693.el7.x86_64
/boot/vmlinuz-0-rescue-c9c41b41b23d4502addcffeff6b160d6
/boot/initrd-plymouth.img
/boot/initramfs-3.10.0-693.el7.x86_64kdump.img
10 请详细写出构建本地yum仓库的步骤?并在每行命令后面用自己的话做上中文注释?
umount /dev/sr0 卸载光盘
mount /dev.sr0 /media 挂载光盘
ls /media 查询挂载情况
构建本地yum仓库文档
cd /etc/yum.r*
mkdir ./a
mv ./c* ./a
vi local.repo
[wangrui] 仓库名称
name=wangrui
baseurl=file///media/ 创建rpm包位置
enabled=1 启动本地yum仓库
gpgcheck=0 禁用gpg校验
====================================================
[root@localhost yum.repos.d]# yum -y clean all (清除本地yum缓存)
已加载插件:fastestmirror, langpacks
正在清理软件源: kgc
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]# yum makecache (重建本地yum缓存)
已加载插件:fastestmirror, langpacks
kgc | 3.6 kB 00:00
(1/4): kgc/group_gz | 156 kB 00:00
(2/4): kgc/primary_db | 3.1 MB 00:00
(3/4): kgc/filelists_db | 3.1 MB 00:00
(4/4): kgc/other_db | 1.2 MB 00:00
Determining fastest mirrors
元数据缓存已建立
11、用yum命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost yum.repos.d]# yum -y install vsftpd.x86_64
[root@localhost yum.repos.d]# rpm -q vsftpd
vsftpd-3.0.2-22.el7.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 ~]# umount /dev/sr0 //卸载光盘
[root@localhost ~]# ls /media/ //查询光盘挂载情况
[root@localhost ~]# mount /dev/sr0 /media //挂载光盘
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]cd /media/Packages
[root@localhost Packages]# rpm -q vsftpd 查询安装情况
未安装软件包 vsftpd
[root@localhost Packages]# rpm -i 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
[root@localhost Packages]# rpm -q vsftpd 查询
vsftpd-3.0.2-22.el7.x86_64
[root@localhost Packages]# rpm -e vsftpd 卸载
[root@localhost Packages]# rpm -q vsftpd
未安装软件包 vsftpd
13、通过源码方式通过解包、配置、编译、安装四个步骤安装源码软件httpd-2.2.17.tar.gz?并进行测试?