zoukankan      html  css  js  c++  java
  • Linux 目录和文件管理

    chapter02 - 03 作业

    1、分别用cat \tac\nl三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处?

    [root@localhost ~]# cat /etc/ssh/sshd_config

    [root@localhost ~]# tal /etc/ssh/sshd_config

    [root@localhost ~]# nl /etc/ssh/sshd_config

    nl命令,文件内容有序号显示

    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仅能阅览,less输入“/”可以进行查询 。

    3、/etc/passwd文件中的前20行重定向保存到/root下改名为20_pass.txt,将/etc/passwd文件中的后15行重定向保存到/root下改名为:pass_15.txt

    [root@localhost ~]# head -20 /etc/passwd > /root/20_passwd.txt

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

    [root@localhost ~]# ls /root

    10.txt         4.txt  9.txt            公共  下载

    1.txt          5.txt  anaconda-ks.cfg  模板  音乐

    20_passwd.txt  6.txt  wumiinyan        视频  桌面

    2.txt          7.txt  wuminyan         图片

    3.txt          8.txt  yun.conf         文档

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

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

    2 /etc/hosts

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

    10 /etc/hosts

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

    158 /etc/hosts

    5、练习使用grep和egrep

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

    [root@localhost ~]# ifconfig | grep 'inet '

            inet 192.168.100.167  netmask 255.255.255.0  broadcast 192.168.100.255

            inet 127.0.0.1  netmask 255.0.0.0

    [root@localhost ~]# ifconfig | grep 'inet ' | sed s/^.*inet//g | sed s/netmask.*$//g

     192.168.100.167  

     127.0.0.1 

    5.2.将/etc/passwd文件中的前20行重定向保存到/root下名称为pass?

    [root@localhost ~]# head -20 /etc/passwd > /root/passwd

    [root@localhost ~]# ls /root

    20_passwd.txt    passwd     yun.conf  视频  下载

    anaconda-ks.cfg  wumiinyan  公共      图片  音乐

    pass_15.txt      wuminyan   模板      文档  桌面

    5.3.过滤/etc/passwd文件中含有/sbin/nologin 的行并统计行数?

    [root@localhost ~]# grep -i "/sbin/nologin" /etc/passwd | wc -l

    35

    5.4 过滤/etc/passwd文件中以sh结尾的行,及以 root开头的行,不显示包含login的行?

    [root@localhost ~]# egrep "^root|sh$" /etc/passwd | grep -v "login"

    root:x:0:0:root:/root:/bin/bash

    wmy:x:1000:1000:wmy:/home/wmy:/bin/bash

    5.5 分别用grep和egrep过滤出/etc/ssh/sshd_config文件中不包含“#”开头和空白的行?

    [root@localhost ~]#  grep -v "^#" /etc/ssh/ssh_config  | grep -v "^$"

    Host *

    GSSAPIAuthentication yes

    ForwardX11Trusted yes

    SendEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES

    SendEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT

    SendEnv LC_IDENTIFICATION LC_ALL LANGUAGE

    SendEnv XMODIFIERS

     

    [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

    Subsystemsftp/usr/libexec/openssh/sftp-server

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

    [root@localhost ~]# tar -czf /root/file.tar.bz2 /etc/passwd

    tar: 从成员名中删除开头的“/”

    [root@localhost ~]# ls /root

    20_passwd.txt    pass_15.txt  wuminyan  模板  文档  桌面

    anaconda-ks.cfg  passwd       yun.conf  视频  下载

    file.tar.gz    wumiinyan    公共      图片  音乐

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

    [root@localhost ~]# tar -cjf /root/file.tar.bz2 /etc/passwd

    20_passwd.txt    pass_15.txt  yun.conf  图片  桌面

    anaconda-ks.cfg  passwd       公共      文档

    file.tar.bz2     wumiinyan    模板      下载

    file.tar.gz      wuminyan     视频      音乐

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

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

    mkdir: 已创建目录 "/web"

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

    [root@localhost ~]# ls /root

    20_passwd.txt    pass_15.txt  yun.conf  图片  桌面

    anaconda-ks.cfg  passwd       公共      文档

    file.tar.bz2     wumiinyan    模板      下载

    file.tar.gz      wuminyan     视频      音乐

    [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

    7.2 通过vi编辑 删除pass文件第1、5、10行。

    :set nu

    dd1

    dd2

    dd3

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

    set  nu

    2yy         3yy         4yy

    /lp         /lp          /lp

    p           p            p

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

    set  nu

    /mail var

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

    2G

    r  /etc/hosts

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

    w /root/new_pass

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

    [root@localhost ~]# gzip /root/new_pass

    [root@localhost ~]# mv /root/new_pass.gz /root/npsass.gz

    [root@localhost ~]# ls

    20_passwd.txt    npsass.gz    wuminyan  视频  音乐

    anaconda-ks.cfg  pass_15.txt  yun.conf  图片  桌面

    file.tar.bz2     passwd       公共      文档

    file.tar.gz      wumiinyan    模板      下载

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

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

    156

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

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

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

    /boot/vmlinuz-0-rescue-4794b643ab6c46f79bb0812941ef036

    9.2在/boot下查找文件大小大于3M 小于 20M 的文件

    [root@localhost ~]# find /boot -size +1M -a -size -20M

    /boot/grub2/fonts/unicode.pf2

    /boot/System.map-3.10.0-229.el7.x86_64

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

    /boot/vmlinuz-0-rescue-4794b643ab6c46f79bb0812941ef03b6

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

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

    umount   /dev/st0   //卸载/media/下已下载的光盘

    mount   /dev/st0  /media/

    将第一张挂载到/media/目录下

    ls   /media/

    构建本地yum仓库文档

    cp   /ect/yum.r*

    mkdir   a/

    mv  C*  a/

    创建本地yum仓库文档

    vi  ./local.repo

    [cdrom]             //仓库名称

    name=cdrom

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

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

    gpgchech=0               //禁用gpg校验

     

    清除yum缓存

    yum  -y  clean  all

    重建yum缓存

    yum  makecache

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

    [root@localhost ~]# umount /dev/sr0

    [root@localhost ~]# mount /dev/sr0 /media/

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

    [root@localhost ~]# ls /media/

    [root@localhost ~]# ls /media/

    CentOS_BuildTag  images    repodata

    EFI              isolinux  RPM-GPG-KEY-CentOS-7

    EULA             LiveOS    RPM-GPG-KEY-CentOS-Testing-7

    GPL              Packages  TRANS.TBL

    [root@localhost ~]# cd /etc/yum.r*

    [root@localhost yum.repos.d]# mkdir a/

    [root@localhost yum.repos.d]# mv C* a/

    [root@localhost yum.repos.d]# vi ./local.repo

    [cdrom]             

    name=cdrom

    baseurl=file.///media     

    enableed=1               

    gpgchech=0

     

    [root@localhost yum.repos.d]# yum -y clean all

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

    已加载插件:fastestmirror, langpacks

    cdrom                             | 3.6 kB     00:00     

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

    (2/4): cdrom/primary_db             | 2.7 MB   00:05     

    (3/4): cdrom/filelists_db           | 2.7 MB   00:10     

    (4/4): c drom/other_db               | 1.1 MB   00:01     

    Determining fastest mirrors

    元数据缓存已建立

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

    [root@localhost ~]# rpm -q vsftpd

    未安装软件包 vsftpd

    [root@localhost ~]# cd /media/Packages/

    [root@localhost Packages]# rpm -iv 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

    软件包准备中...

    vsftpd-3.0.2-22.el7.x86_64

    [root@localhost Packages]# rpm -q vsftpd

    vsftpd-3.0.2-22.el7.x86_64

    13、通过源码方式通过解包、配置、编译、安装四个步骤安装源码软件httpd-2.2.17.tar.gz?并进行测试?

    1、将软件包导入(直接拖过去)

    2、查看gcc、gcc-c++、make是否安装

    gcc  --version

    yum  -y  install  gcc

    gcc-c++  --version

    yum  -y  install  gcc-c++

    make  --version

    yum  -y  install  make

    3、将源码解压到/usr/src/目录下

    tar  -xf  httpd-2.2.17.tar.gz  -C  /usr/src/

    cd  /usr/src/

    ls

    cd  httpd-2.2.17  

    ./configure --prefix=/usr/local/apache/

    5、编译(源码包目录下)

    make

    6、安装(源码包目录下)

    make  install

    7、修改配置文件

    [root@localhost httpd-2.2.17]# cd /usr/local/apache/conf

    [root@localhost conf]# ls

    extra  httpd.conf  magic  mime.types  original

    将ServerName打开

    [root@localhost conf]# vi httpd.conf 

    /ServerName

    小n

    Yy

    小p     

    8、启动

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

    9、安装lynx

    [root@localhost conf]# lynx 127.0.0.1

    bash: lynx: 未找到命令...

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

    已加载插件:fastestmirror, langpacks

    Loading mirror speeds from cached hostfile

    正在解决依赖关系

    --> 正在检查事务

    ---> 软件包 lynx.x86_64.0.2.8.8-0.3.dev15.el7 将被 安装

    --> 解决依赖关系完成

    [root@localhost conf]# lynx 127.0.0.1

  • 相关阅读:
    《人月神话》阅读笔记(三)
    记账软件开发进度(六)
    记账软件开发进度(五)
    记账软件开发进度(四)
    《人月神话》阅读笔记(二)
    记账软件开发进度(三)
    package bufio
    Go语言:net/http包的使用模式和源码解析
    package http
    Golang系列中常用包
  • 原文地址:https://www.cnblogs.com/qiyueqi/p/11252537.html
Copyright © 2011-2022 走看看