chapter02

1、分别用cat ac l三个命令查看文件/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、分别用moreless查看/etc/ssh/sshd_config里面的内容,请用总结moreless两个命令的相同和不同之处?

[root@localhost /]# more /etc/ssh/sshd_config     //全屏分页显示文件内容有百分比        

[root@localhost /]# more /etc/ssh/sshd_config      //more基本相同,但扩展功能更多         

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 /root

20_pass.txt  anaconda-ks.cfg  file:  公共  模板  视频  图片  文档  下载  音乐  桌面

[root@localhost ~]# tail -15 /etc/passwd > /root/pass_15.txt

[root@localhost ~]# ls /root

20_pass.txt  anaconda-ks.cfg  file:  pass_15.txt  公共  模板  视频  图片  文档  下载  音乐  桌面

4、请用一个命令统计/etc/hosts文件包含有多少行?多少字节?多少单词数?

[root@localhost ~]# wc /etc/hosts

  2  10 158 /etc/hosts

5、练习使用grepegrep

5.1.通过grep管道工具过滤出ifconfig命令显示信息中的IP字段?

[root@localhost ~]# ifconfig | grep "inet" |head -1 | grep -o "t.*n" | grep -o " .* "

 192.168.100.162  

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 -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 分别用grepegrep过滤出/etc/ssh/sshd_config文件中不包含“#”开头和空白的行?

[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

[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 etc]# tar cfz /root/file.tar.gz passwd

[root@localhost etc]# ls /root/

20  20_pass.txt  anaconda-ks.cfg  file:  file.tar.gz  pass_15.txt  公共  模板  视频  图片  文档  下载  音乐  桌面

6.2通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.bz2

[root@localhost etc]# ls /root/

20  20_pass.txt  anaconda-ks.cfg  file:  file.tar.bz2  file.tar.gz  pass_15.txt  公共  模板  视频  图片  文档  下载  音乐  桌面

6.3创建空文件夹/web/test1,并将file.tar.bz2 解包并释放到/web/test1目录下?

[root@localhost etc]# mkdir -pv /web/test1

mkdir: 已创建目录 "/web"

mkdir: 已创建目录 "/web/test1"

[root@localhost etc]# tar -xf /root/file.tar.bz2 -C /web/test1/

[root@localhost etc]# ls /web/test1/

passwd

 

7.1 通过vi编辑/web/test1/passwd文件将文件里为root单词全部替换成benet

vi /web/test1/passwd

:% s/root/benet/g

7.2 通过vi编辑 删除pass文件第1510行。

vi /web/test1/pass 

:10d

:5d

:1d

7.3 vi中显示pass文件行号复制文件2 3 4行粘贴到以lp开头的行下。

vi /root/pass

:2,4 co 5

7.4 通过vi编辑 查找文件内包含mail var等字符串,并记录所在行号。

/mail

 12 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

/var

  4 adm:x:3:4:adm:/var/adm:/sbin/nologin

  5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

8 adm:x:3:4:adm:/var/adm:/sbin/nologin

12 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

15 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

21 colord:x:998:997:User for colord:/var/lib/colord:/sbin/nologin

23 libstoragemgmt:x:997:995:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin

7.5 通过vi编辑 快速跳转到文件的第二行,通过r 读取 /etc/hosts 文件的内容到第二行下。

#2G

:r /etc/hosts

 2 bin:x:1:1:bin:/bin:/sbin/nologin

 3 127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

 4 ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

7.6将更改后的文件使用vim另存为/root/new_pass

[root@localhost etc]# vi /root/pass

:w /root/new_pass

[root@localhost etc]# ls /root/new_pass

/root/new_pass

 

7.7new_pass文件压缩成gz格式并改名为npass.gz文件。

[root@localhost ~]# tar -zcf  npass.gz new_pass

[root@localhost ~]# ls

20  20_pass.txt  anaconda-ks.cfg  file:  file.tar.bz2  file.tar.gz  new_pass  npass.gz  pass  pass_15.txt  公共  模板  视频  图片  文档  下载  音乐  桌面

8统计/dev 目录下的文件数量。

[root@localhost ~]# ls -l /dev | wc -l

155

9.1/boot下查找文件名以vmlinuz开头的文件?

[root@localhost ~]# find /boot -name "vmlinuz*"

/boot/vmlinuz-3.10.0-229.el7.x86_64

/boot/vmlinuz-0-rescue-76a363a1f202450e985e41117f13079a

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-76a363a1f202450e985e41117f13079a

/boot/initramfs-3.10.0-229.el7.x86_64.img

 

10 请详细写出构建本地yum仓库的步骤?并在每行命令后面用自己的话做上中文注释?

[root@localhost conf]#umount /dev/sr0  //卸载光盘

[root@localhost conf]#mount /dev/sr0 /media/    //挂载光盘

mount: /dev/sr0 写保护,将以只读方式挂载

[root@localhost conf]#ls /media/       //查看

CentOS_BuildTag  EFI  EULA  GPL  images  isolinux  LiveOS  Packages  repodata  RPM-GPG-KEY-CentOS-7  RPM-GPG-KEY-CentOS-Testing-7  TRANS.TBL

[root@localhost conf]#cd /etc/yum.r*   //构建本地YUM仓库文档

[root@localhost yum.repos.d]# mkdir a/    //创建目录a

[root@localhost yum.repos.d]# mv C* a/     //C开头的文件全部移到文件夹a

[root@localhost yum.repos.d]# vi ./local.repo      //创建本地yum仓库文档

[cdrom]    //仓库名称

name=cdrom

baseurl=file:///media   //指定rpm包的位置

enabled=1   //启用本地yum仓库

gpgcheck=0  //禁用gpg校验

11、用yum命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?

[root@localhost yum.repos.d]# yum -y clean all    //清除yum缓存

已加载插件:fastestmirror, langpacks

正在清理软件源: cdrom

Cleaning up everything

Cleaning up list of fastest mirrors

[root@localhost yum.repos.d]# yum makecache    //重建yum缓存

已加载插件:fastestmirror, langpacks

cdrom                                                                                                                                                                   | 3.6 kB  00:00:00     

(1/4): cdrom/group_gz                                                                                                                                                   | 154 kB  00:00:00     

(2/4): cdrom/filelists_db                                                                                                                                               | 2.7 MB  00:00:00     

(3/4): cdrom/primary_db                                                                                                                                                 | 2.7 MB  00:00:00     

(4/4): cdrom/other_db                                                                                                                                                   | 1.1 MB  00:00:00     

Determining fastest mirrors

元数据缓存已建立

[root@localhost yum.repos.d]# rpm -q vsftpd      //查询是否安装vsftpd

未安装软件包 vsftpd

[root@localhost yum.repos.d]# yum -y install vsftpd    //yum安装vsftpd

[root@localhost yum.repos.d]# rpm -q vsftpd         //查询是否安装vsftpd

vsftpd-3.0.2-9.el7.x86_64

[root@localhost yum.repos.d]# yum -y remove vsftpd     //yum卸载vsftpd

[root@localhost yum.repos.d]# rpm -q vsftpd          //查询是否卸载vsftpd

未安装软件包 vsftpd

12、用rpm命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?

[root@localhost yum.repos.d]# rpm -i vsftpd          //rpm安装vsftpd

[root@localhost yum.repos.d]# rpm -q vsftpd         //查询是否安装vsftpd

vsftpd-3.0.2-9.el7.x86_64

[root@localhost yum.repos.d]# rpm -e vsfrpd          //yum卸载vsftpd

[root@localhost yum.repos.d]# rpm -q vsftpd         //查询是否安装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 yum.repos.d]# ./configure --prefix=/usr/local/apache

[root@localhost yum.repos.d]#make

[root@localhost yum.repos.d]# make install

[root@localhost yum.repos.d]# cd /usr/local/apache/conf/

[root@localhost conf]#cd http.conf httpd.conf.bak

[root@localhost conf]#vi /usr/local/apache/conf/httpd.conf

ServerName www.example.com:80

[root@localhost conf]#/usr/local/apache/bin/apachectl start

[root@localhost conf]#lynx 127.0.0.1

[root@localhost conf]#yum -y install lynx

[root@localhost conf]#lynx 127.0.0.1

原文地址:https://www.cnblogs.com/wzy01/p/11252313.html