文章目录

  • RHCE8学习笔记(持续更新中。。。)
    • 第零章 RHCE8管理
      • Root登录
      • 启动服务器
      • 远程登录
    • 第一章 Linux概述+使用技巧
      • 准备工作:启动各台虚拟机,远程登录练习机a、b
      • 帮助手册
      • 目录操作命令
      • 修改权限
      • 创建,删除命令
    • 第一章课后作业
    • 第二章 破解root用户密码
      • 破解密码步骤
    • 第三章 文件操作管理
      • vim编辑器的使用
      • 用户家目录与控制台
    • 第三章课后作业
    • 第四章 用户与组管理
      • 添加用户
      • 组信息文件/etc/group中四个字段的含义
      • 影子文件/etc/shadow两个字段的含义
      • 用户管理之userdel命令的用法
      • 用户管理之usermod命令的用法
      • 组管理之groupadd命令的用法
      • 组管理之groupdel命令的用法
      • 组和用户的关系
      • chown命令的使用方法
    • 第四章课后作业
    • 第五章 高级权限
      • 反掩码
      • SUID权限弥补
      • SGID权限弥补
      • STICK粘滞位
      • ACL访问控制列表
      • 补充知识:
    • 第五章课后作业
    • 第六单 YUM软件仓库技术
      • RPM软件包的使用技巧
      • YUM软件仓库的配置及使用
      • YUM常见命令使用技巧
      • 通过指定的HTTP或FTP服务器设置YUM软件仓库源
      • YUM软件仓库的命令配置方法(在物理机foundation上操作)
      • 通过真实的CentOS8服务器作为YUM软件仓库源
      • YUM软件仓库源常见错误的解决方法(yum.PID)
    • 第六单元课后作业
    • 待更新。。。。
    • 第十二章 归档技术
      • tar命令(归档)的使用
        • (1)创建tar包
        • (2)创建压缩的tar包
        • (3)查询tar包中包含的文件目录列表
        • (4)释放在指定目录下-C
    • 第十二章课后作业

RHCE8学习笔记(持续更新中。。。)

第零章 RHCE8管理

Root登录

username: root
password: Asimov

启动服务器

rht-vmctl status all  # 查看各台虚拟机状态
rht-vmctl start all   # 启动各台虚拟机
rht-vmctl stop all    # 关闭各台虚拟机

远程登录

ssh root@servera
ssh root@serverb

第一章 Linux概述+使用技巧

准备工作:启动各台虚拟机,远程登录练习机a、b

rht-vmctl start all
ssh root@servera
ssh root@serverb

帮助手册

whatis IS
IS --help

目录操作命令

pwd    # 树状目录结构
cd     # 切换目录 cd.. 上一个目录 cd / 根目录
ls -l  # (== ll) 查看目录下文件
ll -d  # 直接查看目录属性,不看目录内容

目录属性介绍

dr-xr-xr-x.   2 root root       4096  2月 22 2012 bin

第一列:d,-,f,b,c,l,p d:目录,-/f:文件
第二列(中间的九列): 所有者、组内、组外权限-------------rwx分别表示读写执行 -表示没有该权限
第三列: 文件硬链接数或目录子目录数
第四列,第五列: 所有者、所属组
第六列: 大小
第七列: 创建日期、时间
第八列: 名字

修改权限

chmod 777 rhel-server-6.0-i386-dvd.iso

777: rwxrwxrwx 三位为一组,-表示0,其他表示1 转换为十进制后的数字

单个修改:

chmod u+w,g-w,o+x rhel-server-6.0-i386-dvd.iso

u–>root,g–>组内,o–>组外

创建,删除命令

mkdir kkkkkba  # 创建名为kkkkkba文件夹
touch kkkkkba  # 创建名为kkkkkba的文件
rm -rf xxx     # 删除xxx

第一章课后作业

  1. 叙述RHCE8多虚拟机环境架构。

    Window–>VMware16–>物理机foundation0–>Virtual Machine Manager(KVM)–>

    ​ bastion(网关服务器)

    ​ workstation(工作站服务器)

    ​ servera(练习机a)

    ​ serverb(练习机b)

    ​ classroom(环境服务器)

  2. 简述远程登录虚拟机servera的步骤。

    先使用ping servera测试连通性,可以Ping通的情况下再运行ssh root@servera,密码是:redhat。登录成功后,显示的主机名是servera

  3. 简述关闭多虚拟机环境的步骤。

    使用完毕后,可以在servera或serverb环境下运行exit退回到foundation0,在foundation0终端窗口中运行poweroff命令关机,此时回返回到VMware16界面,再关闭VMware16界面即可。

    注意:一定要正常关闭foundation0,否则下次可能会无法启动

  4. 如果虚拟机出现故障,给出四种解决方法。

    1. 始终 ping 不通servera或serverb解决方法:rht-vmctl status all 查看是否所有虚拟机都处于 running 状态,如果有没有运行的虚拟机,单独启动它,例如如虚拟机 bastion 未启动,则运行命令rht-vmctl start bastion
    2. 某台虚拟机始终无法启动解决方法:rht-vmctl fullreset all-q // 全部重置虚拟机,-q 表示无需交互,直接确认
    3. 物理机foundation0 无法启动解决方法:恢复快照
    4. 恢复快照物理机foundationo 仍然无法启动解决方法:重新解压压缩文件,在VMware16 中打开新解压的系统
  5. 简述红帽Linux认证考试的三个等级是什么?

    初级 red hat Certified System Administrator

    中级 red hat Certified Engineer

    高级 red hat Certified Architect

  6. 什么是Linux的发行版本和内核版本。

  7. 查看Linux内核版本的命令是什么?简述Linux内核版本各部分的含义。

    uname -r
    2.6.32-71.el6.i686
    4.18.0-80.el8.x86_64
    # 主版本号.次版本号.修正号
    # 次版本号分奇数与偶数
    
  8. 简述Linux在日常生活中无处不在的八个方面。

    ​ 1.安卓内核

    ​ 2.电影行业

    ​ 3.银行系统(ATM)

    ​ 4.政府机构

    ​ 5.游戏服务器

    ​ 6.IBM的Watson超级计算机

    ​ 7.金融领域(证券交易)

    ​ 8.交通领域(航空调度系统)

  9. 简述Linux使用过程中的四种帮助命令的用法。

    (1)whatis ls(如果无法使用whatis帮助,可以运行命令mandb加载帮助手册)

    (2)ls --help

    (3)man iscsiadm(/表示搜索;/EXAMPLES搜索实例;:n表示调转到第n行;n表示下一个;shift+n表示上一个;g表示跳转到第一行;shift+g(或G)表示跳转到最后一行;man -f等效于whatis)

    (4)info ls

  10. 简述Linux使用过程中的七种技巧的用法。

    (1)history(history -c清空当前历史命令;history -w将历史命令保存到历史命令文件/root/.bash_history中;)
    (2)clear(ctrl+l) 清屏幕
    (3)上下建 切换上/下一条命令
    (4)Tab 补全
    (5)!$ (表示调用上一条命令中的最后一个参数)
    (6)!keyword (表示倒序检索历史缓存中的最近命令列表,首个匹配的命令会被重复执行)
    (7)强行退出的6方种方法

    ​ Ctrl + C Ctrl + B Ctrl + D exit quit 右上角关闭

第二章 破解root用户密码

准备工作rht-vmctl start all

破解密码步骤

  1. 打开VMM,在虚拟机servera的菜单栏上点击"Send Key”,选择Ctrl+Alt+Delete重启servera;进入之后快速点击上下键,将屏幕定格,然后选择第一项,按e编辑启动配置文件
  2. 找的linux开头的一行行尾添加rd.break console=tty0
  3. 按Ctrl+x启动
  4. 以读写的方式重新挂载根目录,可以先使用mount命令查看当前已经挂载的/sysroot目录的属性为只读ro mount -o remount
  5. 切换根目录 chroot /sysroot
  6. 使用passwd命令重置密码
  7. 创建重置SELinux安全上下文的文件 touch /.autorelable
  8. exit *2 退出重启

第三章 文件操作管理

vim编辑器的使用

vim kkkkkba.txt # 打开文件,若没有该文件则先创建文件,再打开

两种模式:

  • 命令模式 --> 按i 进入插入模式
  • 插入模式 --> 按esc进入命令模式

十种技巧

  1. 存盘退出:wq ,

直接退出:q!

另存为:w /tmp/kkkkkba.txt

  1. u 撤销操作

  2. ctrl+r 重做操作

  3. /word 查找关键字

  4. : noh 取消查找出的背景色

  5. :n/n+gg 定位到指定行

跳转到行首”0”;跳转到行尾”$”或END键跳转到文档首”gg”;跳转到文档尾为”G”

小写字母”o”表示在当前行的下一行新插入一行并且切换到插入模式
大写字母“A”在当前行的行尾插入
大写字母“I”在当前行的行首插入

  1. :set nu 插入行号
    :set nonu 取消行号

  2. 剪切当前行内容dd,粘贴p(只能粘贴到光标所在行的下一行)
    复制当前行内容yy,粘贴p(只能粘贴到光标所在行的下一行)
    当需要复制多行内容时,要先切换到可视化模式下(shift+v可视化行模式,y结合光标移动复制多行,p粘贴)
    光标上下左右移动使用快捷键kjhl

  3. :% s/111/666/g 替换全部 把111全部替换成666
    :% s/111/666 只替换每一行中的第一个匹配项
    :% s/111/666/gi 替换全部,忽略大小写

  4. 把当前文件中的连续几行另存到一个新文件中 :1,5 w /tmp/bgl.txt
    把其它文件的内容读取到当前文件中来 :r /etc/hosts

用户家目录与控制台

用户的家目录问题

  • 超级用户的家目录:/root
  • 普通用户的家目录:/home/kkkkkba001
# 创建用户
useradd kkkkkba002
passwd kkkkkba002
# 切换用户 su - / su  (高级权限用户切换低级权限用户不需要密码,反之需要密码)
su - kkkkkba002
su kkkkkba002 # 不完全的身份跳转,只切换用户名,不切换家目录
  1. 重定向技术

    1. 查看文件内容的命令more,cat

    ​ 区别: 分屏显示/无分屏

    1. 重定向的概念

    1. 重定向
    • 标准输出重定向符 >
    • 标准追加重定向符 >>
    • 标准错误重定向符 2>
    • 错误追加重定向符 2>>
    • 全部重定向 &>
    • 全部追加重定向符 &>>
    • 输入重定向
  2. find查找命令

    find / --name "*kkkkba*" --type f --user kkkkkba001
    

    –name 按名称查找

    –type 按类型查找 f/d

    –user 按用户查找

    高阶技巧

    • 以张三身份建立三个文件abc1.txt,abc2.txt,abc3.txt

    • 测试查找这三个文件

      find / -name "*abc*" -type f -user
      
    • 高级技巧:查找并删除

      find / -name "*abc*" -type f -user kkkkkba -exec rm -rf {} \;
      

      -exec 把前一个命令的输出作为参数传给第二个命令

      \ 结尾!!

  3. mv移动命令

    • 移动+重命名

      mv 111.txt /home/kkkkkba001/222.txt

    • 移动

      mv 222.txt /root/

    • 移动+覆盖

      mv -f /root/222.txt /home/kkkkkba001/

    • 移动目录

      mv /root/qqq /home/zhangsan001/

  4. cp复制命令

    • 复制+重命名

      cp 222.txt /333.txt

    • 复制(覆盖)

      cp 333.txt /home/kkkkkba001/

    • 复制(不覆盖)

      cp -n 333.txt /

    • 复制目录及子目录

      cp -r qqq /

  5. grep 在文件内容中查找

    • 查找qqq.txt中的word

      grep word qqq.txt

    • 查找+重定向

      grep word qqq.txt > qqq1.txt

    • grep "^network" aaa.txt

    • grep "network$" aaa.txt

    • 查找当前目录下名字含有为aaa的文件

      ls | grep aaa

      |管道符,可以把前边命令的结果输出给后边的命令作为其输入

第三章课后作业

  1. VI编辑器的两种模式是什么,各自有什么作用?如何在这两种模式间切换。

    命令模式:主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作。

    编辑模式:录入文件内容,可以对文本文件正文进行修改、或者添加新的内容。

    命令模式按 a/i/o 进入编辑模式

    编辑模式 按esc 进入命令模式

  2. 超级用户root与普通用户的家目录分别位于哪个目录下。

    root家目录: /root

    普通用户家目录: /home/用户名

  3. 简述命令提示符各部分的含义。

    [aaa@bbbb ccc ]

    aaa 当前用户

    bbb 主机名称
    ccc 当前目录

  4. 简述切换用户的原则;“su”命令与“su -”命令的区别。

    su 只切换root身份,shell任是普通用户

    -su 用户和shell 都切换

  5. 简述六种重定向符号及其含义。

    1、> 标准重定向符

    2、>> 标准追加重定向符

    3、2> 标准错误重定向符

    4、2>> 错误追加重定向符

    5、&> 全部重定向符

    6、&>> 全部追加重定向符

  6. 简述find命令中的三种基本参数的用法并列举实例说明。

    find -name "kkk" -type f  -user kkkkkba
    #   -name   指定查询名字
    #   -type   指定查询类型d/f
    #   -useR   指定查询用户
    
  7. 要求:在根目录下建立自己的学号目录,并创建一个自己名字汉语拼音的用户,以该用户的身份建立几个普通文件(文件名中要包含字符abc),使用一条find命令在/目录下查找类型为普通文件,所有者为自己名字汉语拼音的用户,名称中包含abc的对象,并将找到的结果拷贝到“/学号”目录中(只能用一条find命令实现)

    find -name "*abc*" -type f -user kkkkkba -exec mv {} /2012138 \
    

第四章 用户与组管理

添加用户

useradd kkkkkba001
passwd  kkkkkba001

Linux系统底层的四个连锁反映
创建该用户的家目录/home/a001
vim /etc/passwd(多了一行该用户的记录)
vim /etc/shadow(影子文件中多一行密码记录)
vim /etc/group(组信息文件中多一行记录,即自动创建同名组)

账户信息文件/etc/passwd中七个字段的含义

a001:x:504:505::/home/a001:/bin/bash
用户名:密码:用户ID:组ID:注释信息:家目录:shell

组信息文件/etc/group中四个字段的含义

a001:x:505:
test:x:502:harry,sam
组名:组密码:组ID:该组中包含的其他用户名.

影子文件/etc/shadow两个字段的含义

kkkkkba:xxxxxxx....xxxxxxx
用户名:加密后的密码

用户管理之userdel命令的用法

# 不彻底删除
userdel kkkkkba001
tail -1 /etc/passwd # kkkkkba001 信息还存在
# 彻底删除
userdel -rf kkkkkba001

用户管理之usermod命令的用法

usermod -u 600 -s /sbin/nologin kkkkkba001
tail -3 /etc/passwd
  • -c<备注>  修改用户帐号的备注文字。
  • -d登入目录>  修改用户登入时的目录。
  • -e<有效期限>  修改帐号的有效期限。
  • -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
  • -g<群组>  修改用户所属的群组。
  • -G<群组>  修改用户所属的附加群组。
  • -l<帐号名称>  修改用户帐号名称。
  • -L  锁定用户密码,使密码无效。
  • -s  修改用户登入后所使用的shell。
  • -u  修改用户ID。
  • -U  解除密码锁定。

组管理之groupadd命令的用法

# 添加组
groupadd k001
tail -3 /etc/group

组管理之groupdel命令的用法

groupdel k001
tail -3 /etc/group

删除组时,无法删除第一所属组,若要操作

  1. 删除用户
  2. 去除第一所属组属性

组和用户的关系

  1. 添加组

    gpasswd -a (添加)用户名 组名  //将用户添加到组
    gpasswd -a b001 group1
    gpasswd -a b002 group1
    gpasswd -a b003 group1
    tail -3 /etc/group
    group1:x:604:b001,b002,b003
    

    查看用户与组的关系

    • 站在组的角度 — 列出用户与组的关系(group第四个字段)

      tail -3 /etc/passwd
      # d001:X:1003:1003::/home/d001:/bin/bash
      # d002:x:1004:1004::/home/d002:/bin/bash
      # d003:x:1005:1007:/home/d003:/bin/bash
      tail -3 /etc/group
      # d003:X:1007:
      # f001:X:1008:d001,d002,d003
      # f002:X:1009:
      
    • 站在用户的角度

      grops d001
      # d001: d001 f001
      
  2. 删除组

    gpasswd -d(删除) b003 group1  # (无法改变[添加、删除]第一所属组)
    tail -3 /etc/group
    
  3. 查询用户所在组

    groups k001
    

chown命令的使用方法

# chpwn 所有者:所属组
(1)chown b001:group1 qqq1.txt # 设置新的所有组和所有者 所属组由所有者第一所属组填充
(2)chown :root qqq1.txt
(3)chown b003: qqq1.txt # (自动以该用户私有组替换)

第四章课后作业

  1. 简述添加用户yz后,Liux系统底层的四个连锁反映。

    家目录 多了一个xz文件夹

    /etc/passwd 多了一行用户记录

    /etc/shoadw 多了一行密码记录

    /etc/group 多了一行同名记录

  2. 简述账户信息文件“/etc/passwd”中七个字段的含义。

    用户名:密码:用户ID:组ID:注释信息:家目录:shell

  3. 简述组信息文件“/etc/group”中四个字段的含义。

    组名:组密码:组ID:该组中包含的其他用户名

  4. 彻底的删除一个用户的方法及删除后对应的四个连锁反映是什么。

    userdel -rf kkkkkba
    
    • 删除用户家目录
    • 删除/etc/passwd中的用户记录
    • 删除/etc/shoadw中的密码记录
    • 删除/etc/group中的同名组
  5. 如何修改一个具有“/sbin/nologin”这种shel‖的用户,使其又能重新本地登录inux系统(使用两种方法)。

    usermod -s /bin/login k001
    
    # 直接修改/etc/passwd 中对应用户的/sbin/nologin
    
  6. 如何使用passwd命令将一个用户添加到一个组中,将一个用户从一个组中删除掉,举例说明。

    添加:gpasswd -a k001 f001

    删除:gpasswd -d k001 f001

  7. 如何修改一个用户的primary group,举例说明。

    usermod -g group2 k001
    
  8. 如何修改一个用户的supplementary groups,.举例说明(使用两种方法)。

    usermod -G group2 k001
    
    gpasswd -a group2 k001
    
  9. 如何修改一个对象的所有者与所属组,举例说明。

    chmod  root:group1 kkkkkba.txt
    
  10. 创建两个用户aaa1与aaa2,要求实现用户21可以登录到用户aaa2的家日录中,且具有任何权限。

    usreadd aaa1
    useradd aaa2
    chmod 777 /home/aaa2
    

第五章 高级权限

反掩码

查看反掩码 --> usmak

反掩码作用

目录的缺省权限= 777-UMASK

文件的缺省权限= 777-UMASK-111(无X)

修改反掩码 usmak 0001

普通用户反掩码 0002

SUID权限弥补

(主要针对文件,所有者执行位变成了s或S)

(1)查看passwd命令所执行脚本,其中有高级权限SUID

ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd
# -rwsr-xr-x.  执行位为s

(2)创建普通用户并切换用户测试命令passwd (不能修改密码)

#useradd a001
#passwd a001
#su - a001
$ passwd
Changing password for user a001.
Changing password for a001.
(current) UNIX password: a001

(3)返回root用户将passwd命令SUID高级权限去除

# chmod u-s /usr/bin/passwd
# ll /usr/bin/passwd
-rwxr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd

(4)再次切换普通用户a001,测试命令passwd (成功修改密码)

(5)s与S的区别(s表示该执行位原先具有x权限)

ll /usr/bin/passwd
# -rwsr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd
chmod u-x /usr/bin/passwd
ll /usr/bin/passwd
# -rwSr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd
chmod u+x /bin/ping
# -rwsr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd

SGID权限弥补

(主要针对目录,组内成员的执行位变成了s)

groupadd qqq
chown :qqq 111
# drwxr-xr-x. 2 root qqq    4096 11月 12 16:31 111
chmod g+s 111
# drwxr-sr-x. 3 root qqq    4096 11月 12 17:44 111

STICK粘滞位

(其他用户的执行位变成了t)

共享目录存在的问题:用户之间可以随意删除对方的文件,如果管理员开放所有权限位

若使用STICK则可以实现共享目录只有创建用户可修改删除操作

chmod o+t /share
# drwxrwxrwt.   2 root root       4096 11月 12 18:11 share

ACL访问控制列表

(可以针对文件或目录)

为指定用户增加rwx权限

(1)如何查看文件的ACL信息(准备工作vim /123.txt)
getfacl 123.txt

getfacl 123.txt
# file:123.txt
# owner:root
# group: root
user::rw-
group:r--
other:r--

(2)如何修改文件的ACL信息
setfacl -m u:lisi:rw- /123.txt

[rootaserverb ~]setfacl -m u:kkkkkba:rw- 1234.txt
[root@serverb ~]getfacl 1234.txt
# file:1234.txt
# owner:root
# group:root
user:rw-
user:kkkkkba:rw-
group:r--
mask:rw-
other::r--

使用ll命令查看该文件时会发现多了一个+,表示其设置过ACL
-rw-rw-r--+ 1 root root 86 11月 12 18:40 123.txt

(4)如何删除文件的ACL信息

# 不彻底删除(使用ll命令末尾`+`还存在)
setfacl -x u:kkkkkba /123.txt
getfacl /123.txt
# 彻底删除一个文件或目录的ACL信息
chacl -B 123.txt

(5)设置目录的ACL信息
setfacl -m d:u:lisi:rwx /345

(参数d表示在/345目录中新建的文件或目录会自动继承/345目录的ACL信息值,但要注意:ACL真正的效果仍然体现在对文件的操作上,即对文件修改时才能看出效果)

setfacl -m d:u:lisi:rwx /345
getfacl /345# fi1e:345
# owner:root
# group:root
user:rwx
group:r-x
other:r-x
default:user:rwx
default:user:kkkkkba:rwx
default:group:r-x
default:mask:rwx
default:other:r-xcd 345
touch aaa.txt
ll | grep aaa
# -rw-rw-r--+ 1 rootroot 0 Mar 30 21:38 aaa.txt

(6)当移动一个具有ACL属性的文件或目录时,默认情况下,ACL属性值是会移动的;当复制一个具有ACL属性的文件或目录时,默认情况下,ACL属性值是不会复制的,只有在cp命令后加上-p参数才可以。 cp -p 222.txt /tmp/2222.txt

mv aaa.txt /
ll / | grep aaa
# -rw-rw-r--+ 1 root root 0 Mar 30 21:38 aaa.txt
cp aaa.txt /aaa.txt
# -rw-rw-r-- 1 root root 0 Mar 30 21:38 aaa.txt
cp aaa.txt /aaa.txt -p
# -rw-rw-r--+ 1 root root 0 Mar 30 21:38 aaa.txt

补充知识:

chmod 7777 111.txt
# -rwsrwsrwt
chmod 1777 111.txt
# -rwxrwxrwt
chmod 3777 111.txt
# -rwxrwsrwt

第五章课后作业

  1. 简述UMASK反掩码的作用。

    控制默认权限

  2. 查看及修改UMASK反掩码的命令是什么并举例说明。

    umask
    

    查看: umask

    修改: umask 1111

  3. SUID权限弥补的表现形式及作用分别是什么?

    表现形式:所有者的执行位变为s/S

    作用:使文件的创建者拥有全部权限

  4. SUID权限弥补的s与S的区别是什么?

    若用户无写权限 执行位变为s

    若用户有写权限 执行位变为S

  5. 写出去掉文件/usr/bin/passwd的SUID权限的命令;给文件/usr/bin/passwd添加SUID权限的命令。

    chmod u-s /user/bin/passwd
    
    chmod u+s /user/bin/passwd
    
  6. SGID权限弥补的表现形式及作用分别是什么?

    表现形式:组内成员的执行位变为s

    作用:sgid权限一般应用在目录上,当一个目录拥有sgid权限时,任何用户在该目录下创建的文件的属组都会继承该目录的属组。

  7. STICK粘滞位的表现形式及作用分别是什么?

    表现形式:其他用户的执行位变为t

    作用:sticky权限一般针对目录来设置,作用是只允该目录下的文件的创建者删除自己的创建的文件,不允许其他人删除文件。

  8. 写出在根目录下建立自己学号的子目录,并将其设置为STICK粘滞位目录的命令。

    mkdir /2012138
    chmod -R o+t  /2012138
    
  9. 写出查看文件“/tmp/aaa.txt”ACL属性的命令;写出为文件“/tmp/aaa.txt”设置ACL属性的命令(例如为zhangsan用户设置ACL,使其具有“读写执行”的权限);写出删除文件“/tmp/aaa.txt”的ACL属性的命令(例如删除zhangsan用户对该文件具有的“读写执行”权限的ACL信息)。

    ll /tmp/ | grep aaa.txt
    setfacl -m u:zhangsan:rwx /tmp/aaa.txt
    setfacl -x g:zhangsan /tmp/aaa.txt
    
  10. 叙述命令chmod 7777 111.txt的作用。

> 将文件的root、组内、组外权限设置为 rwx 并设置SUID SGID STICK权限

第六单 YUM软件仓库技术

RPM软件包的使用技巧

(在物理机foundation上操作)

注意:自己的笔记本上可以在foundation0上执行 cd /content/rhel8.0/x86_64/dvd/BaseOS/Packages和cd /content/rhel8.0/x86_64/dvd/AppStream/Packages测试

  1. 如何查询指定软件包是否安装

    rpm -q httpd
    rpm -q cifs-utils
    rpm -q vsftpd
    
  2. **如何删除指定软件包 **

    rpm -e cifs-utils
    rpm -e vsftpd
    rpm -e httpd**
    
  3. **如何安装指定软件包(注意:保证在Packages目录下有需要安装的rpm包) **

    rpm -ivh cifs-utils-6.8-2.el8.x86_64.rpm    (在系统光盘挂载目标目录的BaseOS/Packages下有cifs-utils的rpm包)
    rpm -ivh vsftpd*   (在系统光盘挂载目标目录的AppStream/Packages下有vsftpd的rpm包)
    
  4. **问题:依赖性关系(rpm -e httpd) **

    rpm -e httpd rpm -ivh httpd

    • 安装A包时,存在前驱依赖包B,C,则不能安装,需要先安装B,C包再安装A包

    • 删除A包时,若此包为B,C包的依赖包,则不能删除,老的系统管理员,先删除BC再删除A包

YUM软件仓库的配置及使用

(在物理机foundation上操作)三点注意事项+五行参数

  1. 回环挂载RHEL8系统镜像文件/mnt/iso

    mount -o loop rhel-8.0-x86_64-dvd.iso /mnt/iso
    du -sh /mnt/iso
    
  2. 修改YUM软件仓库的配置文件

    一定要将目录切换到YUM软件仓库的工作目录/etc/yum.repos.d/下才有效;工作目录下的配置文件必须以.repo结尾;有且只有一个repo

    vim /etc/yum.repos.d/server.repo
    

    录入五个参数

    [base]                             //[]里写软件仓库的名称,一般使用base.
    name=my rhel8                      //name后写软件仓库的全称
    baseurl=file:///mnt/iso/BaseOS     //baseurl后写软件仓库的绝对路径
    enabled=1                          //启用该软件仓库
    gpgcheck=0                         //不校验软件包(即不进行签名检查)
    [local_app]
    name=local iso app
    baseurl=file:///mnt/iso/AppStream
    enabled=1
    gpgcheck=0
    

    注意:在笔记本测试时baseurl=file:///content/rhel8.0/x86_64/dvd/BaseOS;

    ​ 另一个baseurl=file:///content/rhel8.0/x86_64/dvd/AppStream
    eg:

    [kkkkkbabase]
    name=kkkkkba yum Base
    baseurl=file:///content/rhel8.0/x86_64/dvd/BaseOS
    enabled=1
    gpgcheck=0
    [kkkkkba_app]
    name=kkkkkba yum App
    baseurl=file:///content/rhel8.0/x86_64/dvd/AppStream
    enabled=1
    gpgcheck=0
    
  3. 验证软件仓库的方法

    yum clean all   //清空YUM缓存
    yum makecache  //建立缓存,此步可跳过
    yum repolist(会看到1658/4672个包)
    

YUM常见命令使用技巧

  1. 查询指定的软件包

    yum search vsftpd
    
  2. 查询指定软件的详细信息(可以判断该软件包是否安装)

    yum info vsftpd
    yum info autofs
    yum info httpd
    yum info httpd*
    rpm -e httpd        # (依赖性关系问题,无法删除)
    
  3. 如何安装指定的软件包

    yum install vsftpd
    yum info vsftpd
    yum -y install autofs
    
  4. 如何删除指定的软件包

    yum -y erase httpd*
    yum info httpd
    
  5. 查看yum环境组

     yum grouplist
    
  6. 安装组内软件包

    yum groupinstall 'Development Tools'
    
  7. 查看某个文件或命令属于哪个包

    yum whatprovides /etc/passwd
    yum provides /etc/passwd
    
  8. 追根溯源

    yum history
    

通过指定的HTTP或FTP服务器设置YUM软件仓库源

(在虚拟机servera上操作)

ssh root@servera
cd /etc/yum.repos.d/
cat rhel_dvd.repo
[rhel-8.0-for-x86_64-baseos-rpms]
baseurl = http://content.example.com/rhel8.0/x86_64/dvd/BaseOS
enabled = true
gpgcheck = false
name = Red Hat Enterprise Linux 8.0 BaseOS (dvd)
[rhel-8.0-for-x86_64-appstream-rpms]
baseurl = http://content.example.com/rhel8.0/x86_64/dvd/AppStream
enabled = true
gpgcheck = false
name = Red Hat Enterprise Linux 8.0 AppStream (dvd)

eg:

[kkkkkbabase]
name = kkkkkba yun Base
baseurl = http://content.example.com/rhel8.0/x86_64/dvd/BaseOS
enabled = true
gpgcheck = false
[kkkkkba_app]
name = kkkkkba yun App
baseurl = http://content.example.com/rhel8.0/x86_64/dvd/AppStream
enabled = true
gpgcheck = false

YUM软件仓库的命令配置方法(在物理机foundation上操作)

yum whatprovides yum-config-manager
rpm -ivh dnf-utils-4.0.2.2-3.el8.noarch
yum-config-manager --help
  1. yum-config-manager --disable ucf-upd //禁用该软件仓库,等效于enabled=0

    yum repolist   // 可以看到如下三段软件仓库ucf-rhel-8-for-x86_64-appstream-rpms,ucf-rhel-8-for-x86_64-baseos-rpms,ucf-upd
    yum-config-manager --disable ucf-upd   //禁用ucf-upd段软件仓库
    yum repolist   // 再次查看,只能看到两段软件仓库
    
  2. yum-config-manager --enable ucf-upd //启用该软件仓库,等效于enabled=1

    cd /etc/yum.repos.d/
    mkdir bck
    mv *.repo bck/
    yum repolist
    
  3. **yum-config-manager --add-repo file:///content/ucf/ //添加新的软件仓库,包括本地源与网络源
    本地源测试:

    ll /content/ucf/     //可以看到有Package包目录和repodata目录
    yum-config-manager --add-repo file:///content/ucf/
    yum repolist   //可以看到content_ucf软件仓库(3个包)
    cat content_ucf*.repo
    
    [content_ucf*]
    name=created by dnf config-manager from file:///content/ucf/
    baseurl=file:///content/ucf/
    enabled=1
    

    网络源测试:

    在浏览器中输入http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/
    小步骤:先ping通域名foundation0.ilt.example.com;然后可以在浏览器中输入http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd查看内容;最后再设置软件仓库源。

    yum-config-manager  --add-repo http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/
    yum repolist   //可以看到foundation0软件仓库(1660个包)
    cat foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_.repo
    
    [foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_]
    name=created by dnf config-manager from http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/
    baseurl=http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/
    enabled=1
    

    网络源测试:

    在浏览器中输入http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/

    yum-config-manager  --add-repo http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/
    yum repolist   //可以看到foundation0软件仓库(4672个包)
    cat foundation0.ilt.example.com_rhel8.0_x86_64_dvd_AppStream_.repo
    
    [foundation0.ilt.example.com_rhel8.0_x86_64_dvd_AppStream_]
    name=created by dnf config-manager from http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/
    baseurl=http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/
    enabled=1
    
    yum -y erase autofs
    yum -y install autofs     //Error: GPG check FAILED,来源于BaseOS仓库
    

GPG检测失败,解决方法:
方法一:在配置文件中设置不进行gpgcheck签名检查(即将gpgcheck=0)

vim foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_.repo
加入gpgcheck=0
再次安装yum -y install autofs,OK

方法二:导入GPG公钥

先将环境恢复,即去掉配置文件中的gpgcheck=0;删除软件包autofs
yum -y install autofs //Error: GPG check FAILED
在浏览器中输入http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release,可以看到GPG公钥内容
rpm --import /content/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release
再次安装yum -y install autofs,OK

方法三:将GPG公钥(对应GPG签名信息)写入repo文件中

先将环境恢复,即去掉GPG公钥
rpm -qa | grep pub //查看系统中的公钥信息,主要有publicsuffix-list-dafsa-20180723-1.el8.noarch,gpg-pubkey-d4082792-5b32db75,gpg-pubkey-530679ee-4f6b7813,gpg-pubkey-fd431d51-4ae0493b
rpm -e gpg-pubkey-d4082792-5b32db75 gpg-pubkey-530679ee-4f6b7813 gpg-pubkey-fd431d51-4ae0493b //删除GPG公钥,由于不知道是哪个,所以把后三个公钥都删除了
yum -y erase autofs //删除autofs
yum -y install autofs //Error: GPG check FAILED
vim foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_.repo
加入gpgkey=http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release
再次安装yum -y install autofs,OK

通过真实的CentOS8服务器作为YUM软件仓库源

保证Linux系统是在连接外网的前提下做此实验

在百度中搜索华为镜像,即华为开源镜像站https://mirrors.huaweicloud.com/,点击CentOS,点击继续使用,选择CentOS版本为8

在Linux终端窗口中运行下方的命令wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-8-anon.repo,然后拷贝到/etc/yum.repos.d/下(原来的配置文件提前做好备份)

yum clean all
yum repolist
yum -y install mariadb-server

YUM软件仓库源常见错误的解决方法(yum.PID)

解决方法:按照提示信息将对应文件/run/yum.pid删除即可。

第六单元课后作业

  1. 写出使用rpm命令查询,安装,删除RPM软件包(以httpd包为例)的相关命令。

    rpm -q httpd
    rpm -e httpd
    rpm -ivh httpd
    
  2. 简述使用rpm命令管理RPM软件包的弊端。

    依赖性问题

    安装A包时,存在前驱依赖包B,C,则不能安装,需要先安装B,C包再安装A包

    删除A包时,若此包为B,C包的依赖包,则不能删除,老的系统管理员,先删除BC再删除A包

  3. 简述YUM软件仓库技术的优点。

    安装方便,自动解决添加或删除rpm包时遇到的依赖性问题

    可以同时配置多个资源库

    配置文件简单明了

  4. 简述配置YUM软件仓库时的三点注意事项+五行参数的含义。

    注意事项:

    工作目录必须为 /etc/yum.repos.d/

    配置文件必须以.repo结尾

    必须只有一个.repo文件

    五行参数意义

    [] //[]里写软件仓库的名称,一般使用base.

    name= /name后写软件仓库的全称

    baseurl= //后写软件仓库的绝对路径

    enabled=1 /启用该软件仓库

    gpgcheck=0 //不校验软件包

  5. 简述验证YUM软件仓库的相关命令及效果?

    yum clean all    清空缓存
    yum repolist    显示所有仓库
    
  6. 简述YUM常见命令使用技巧(以httpd包为例),具体包括:判断该软件包是否安装;安装;删除;追根溯源。

    yum info httpd        # 查看是否安装
    yum install httpd   # 安装
    yum remove hpptd    # 卸载
    yum history         # 追根溯源
    

待更新。。。。

第十二章 归档技术

tar命令(归档)的使用

归档:将多个文件汇集成一个文件

(1)创建tar包

tar -cvf bgl.tar /etc

-c 创建归档包
-v 显示详细的提示信息
-f 指定文件名

echo $?(如果结果为0,说明上边的命令执行成功,非0,表示失败)
file bgl.tar //显示类型

tar -cvf kkkkkba.tar /etc
ll | grep kkkkkba
# -rw-r--r--.1 root root 27217920 Apr 9 22:47 kkkkkba.tar
file kkkkkba.txt
# kkkkkba.tar:POSIX tar archive(GNU)
dd if=/dev/zero of=./kkkkkba1.txt bs=1M count=3 (输出并生成大文件)
dd if=/dev/zero of=./kkkkkba2.txt bs=1M count=5

–if input file 输入原文件
–of outout file 输出生成文件
–bs block size 数据块文件大小

du -sh kkkkkba1.txt
#  50M kkkkkba1.txt
du -sh kkkkkba2.txt
#  50M kkkkkba2.txt
tar -cvf kkkkkba3.tar kkkkkba1.txt kkkkkba2.txt
du -sh kkkkkba3.txt
#  80M kkkkkba3.txt

(2)创建压缩的tar包

三种压缩技术:
gzip-----.gz
即在tar命令中添加一个参数-z
tar -zcvf bgl.tar.gz /etc
file bgl.tar.gz
du -sh bgl.tar.gz
tar -zcvf aaa.tar.gz 111.txt 222.txt

tar -zcvf kkkkkba4.tar.gz kkkkkba1.txt kkkkkba2.txt
do -sh kkkkkba4.tar.gz
# 80K kkkkkba4.tar.gz

bzip2-----.bz2
即在tar命令中添加一个参数-j
tar -jcvf bgl.tar.bz2 /etc
file bgl.tar.bz2
du -sh bgl.tar.bz2
tar -jcvf aaa.tar.bz2 111.txt 222.txt

tar -jcvf kkkkkba5.tar.bz2 kkkkkba1.txt kkkkkba2.txt
do -sh kkkkkba5.tar.bz2
# 1K kkkkkba5.tar.bz2

xz-----.xz
即在tar命令中添加一个参数-J
tar -Jcvf bgl.tar.xz /etc
file bgl.tar.xz
du -sh bgl.tar.xz
tar -Jcvf aaa.tar.xz 111.txt 222.txt

tar -Jcvf kkkkkba6.tar.xz kkkkkba1.txt kkkkkba2.txt
do -sh kkkkkba6.tar.xz
# 16K kkkkkba6.tar.xz

(3)查询tar包中包含的文件目录列表

-t 查看的是使用tar命令归档的包

-f 指定文件名

tar -tf kkkkkba6.tar.gz
# kkkkkba1.txt
# kkkkkba2.txt

(4)释放在指定目录下-C

mkdir /666
tar -xjvf kkkkkba5.tar.bz2 -C /666
ll /666
-rw-r--r--.1 rootroot 31457280 Apr 9 23:03 kkkkkba1.txt
-rw-r--r--.1 rootroot 52428800 Apr 9 23:04 kkkkkba2.txt

第十二章课后作业

  1. 创建一个名为 /root/backup.tar.gz 的 tar 存档,其应包含 /usr/local 的内容,该 tar 存档必须使用 gzip 进行压缩;查看该归档压缩包;将该归档压缩包释放到根目录下。
tar -cvf /root/backup.tar /usr/local
tar -zcvf /root/backup.tar.gz /root/backup.tar
  1. 将/etc目录归档并压缩到/root/backup.tar.bz2,使用bzip2压缩;查看该归档压缩包;将该归档压缩包释放到根目录下。
tar -cvf /root/backup.tar  /etc
tar -jcvf /root/backup.tar.bz2 /root/backup.tar
  1. 将/tmp目录归档并压缩到/root/backup.tar.xz,使用xz压缩;查看该归档压缩包;将该归档压缩包释放到根目录下。
tar -cvf /root/backup.tar  /tmp
tar -Jcvf /root/backup.tar.xz /root/backup.tar

Linux-RHCE8学习笔记相关推荐

  1. linux系统管理学习笔记之三----软件的安装

    linux系统管理学习笔记之三----软件的安装 2009-12-29 19:10:02 标签:linux 系统管理 [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 ...

  2. linux系统管理学习笔记之一-------linux解压缩命令

    linux系统管理学习笔记之一-------linux解压缩命令 2009-12-29 11:52:55 标签:linux tar [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接 ...

  3. 操作系统进程学习(Linux 内核学习笔记)

    操作系统进程学习(Linux 内核学习笔记) 进程优先级 并非所有进程都具有相同的重要性.除了大多数我们所熟悉的进程优先级之外,进程还有不同的关键度类别,以满足不同需求.首先进程比较粗糙的划分,进程可 ...

  4. linux系统管理学习笔记之八---进程与作业的管理

    linux系统管理学习笔记之八---进程与作业的管理 2010-01-05 13:00:42 标签:linux 进程 [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 ...

  5. linux系统管理学习笔记之八---linux文件与目录的管理及权限

    linux系统管理学习笔记之八---linux文件与目录的管理及权限 2010-01-05 09:00:49 标签:权限 管理 文件目录 linx [推送到技术圈] 版权声明:原创作品,允许转载,转载 ...

  6. 韩顺平Linux教程学习笔记

    Linux系统学习笔记   新装了deepin v23系统,结果磁盘没设置好,玩崩了,百度半天修复不了,看看韩顺平老师的Linux操作课程,做做笔记(只记录对自己有用的).   B站网址 基础篇·Li ...

  7. Linux操作系统学习笔记【入门必备】

    Linux操作系统学习笔记[入门必备] 文章目录 Linux操作系统学习笔记[入门必备] 1.Linux入门 2.Linux目录结构 3.远程登录 3.1 远程登录Linux-Xshell5 3.2 ...

  8. 【韩顺平Linux】学习笔记1

    [韩顺平Linux]学习笔记1 一.网络连接的三种方式 二.虚拟机克隆 三.虚拟机快照 四.虚拟机迁移和删除 五.VMtools 六.Linux目录结构 七.远程登录和文件传输 一.网络连接的三种方式 ...

  9. Linux+javaEE学习笔记之Linux网络环境配置

    Linux+javaEE学习笔记之Linux网络环境配置 网络知识简单介绍: Ip地址是:IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物 ...

  10. Zynq-7000系列之linux开发学习笔记:编译Linux内核和制作设备树(六)

    开发板:Zynq7030数据采集板 PC平台:Ubuntu-18.04 + MobaXterm 开发环境:Xilinx Vivado + SDK -18.3 交叉编译工具:arm-linux-gnue ...

最新文章

  1. 大文件上传服务器:支持超大文件HTTP断点续传的实现办法
  2. HP CP1215打印机遇到spoolsv.exe错误。
  3. python+OpenCV图像处理
  4. Attic——删除重复数据的备份程序
  5. mac电脑安装python_【mac电脑怎么安装python】mac版python安装教程
  6. BP神经网络 语音信号分类
  7. Bootstrap modal使用及点击外部不消失的解决方法
  8. 更改Mysql5.7的默认编码为utf8解决database为latin1无法修改问题
  9. Tricks(三十四)—— 判断某一属性列是数值型还是标称型
  10. Linux 软件安装位置选择指南
  11. 2.4 GHz ZigBee网络处理器CC2530ZNP(TI)
  12. 神经网络之BP算法【图文并茂】
  13. 前端jq实现视频跟图片一起混播
  14. Python编程PTA题解——输出星期名缩写
  15. python图片转excel,用Python玩转图片处理,并导出文件列表到Excel文件
  16. 牛文文点评长租公寓行业:过度金融化会毁灭整个行业
  17. 怎样写一个解释器——王垠
  18. 【vn.py】SpreadTrading价差交易
  19. 蒋涛对话王成录:开发者的黄金十年
  20. 国内常用公共DNS服务器、各省运营商DNS服务器汇总

热门文章

  1. 免费的游戏挂机倒计时提醒、游戏挂机计时提醒、建筑升级倒计时提醒软件
  2. conductor 3.13.2 win10 idea 编译
  3. 如何挑选考研政治的复习资料
  4. 音箱就是银行营业厅?京东讯飞兴业推智能金融叮咚音箱 | 消息
  5. mac pbcopy和pbpaste使用
  6. 山西汾酒亮眼业绩背后:9大流通股东集体增持,研发费用不增反降
  7. 远程登录linux 系统进入图形化界面
  8. c语言 判断文件是否存在
  9. Java中System.out.println()简单简介
  10. vue自定义指令之手写v-loading指令