当前位置:   article > 正文

云计算--day07_设备和挂载点

设备和挂载点

陈鑫


光盘(相当于U盘,存储设备)连接当前主机

  1. [root@localhost ~]# ll /dev/sr0
  2. brw-rw----+ 1 root cdrom 11, 0 Dec 7 23:24 /dev/sr0

光盘设备名称(块设备)(/dev/sr0) s-设备类型SATA  (/dev/sr0 这个设备文件并不是直接连接光盘设备,他只是把设备识别成了一个设备的访问入口 ,也就是是设备的驱动程序文件。后期要想加载该设备下的数据内容,要将设备挂载到系统的某一个挂载点目录

匹配光盘:

cdrom 也是光盘的意思,默认的是软链接文件

  1. [root@localhost ~]# ll /dev/cdrom
  2. lrwxrwxrwx. 1 root root 3 Dec 7 23:24 /dev/cdrom -> sr0

两个挂载点目录:

  1. [root@localhost ~]# FHS /media /mnt
  2. 永久连接的挂载点目录 临时连接的挂载点目录
  3. [root@localhost ~]# ll /
  4. rwxr-xr-x. 2 root root 6 Jun 21 2021 media
  5. drwxr-xr-x. 5 root root 45 Nov 26 06:55 mnt

注:①在查看软件包时 或切换软件包下路径时,需要先将设备与挂载点目录下的一个挂载点先挂载

       ②例 zsh-html  是个软件名就在家目录下,与zsh-5.5.1-6.el8_1.2.src.rpm软件包名不同,他只能在对应的挂载点目录下的软件包路径下查看



一 .设备与挂载点目录挂载


1.获取本地软件包

如何将一个设备和挂载点目录挂载

#mount       /dev/sr0                 /mnt                  临时生效,重启后需要再次挂载

  挂载    文件系统名称    挂载点目录

umount    文件系统名或挂载点目录

#umount           /mnt            临时取消挂载

命令演示

#mount

  1. [root@localhost ~]# mount 查看当前目录所有的挂载点信息
  2. sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
  3. proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
  4. devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=887108k,nr_inodes=221777,mode=755)
  5. securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
  6. tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
  7. devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)

光盘设备

系统上的挂载点

/dev/sr0 on /run/media/redhat/RHEL-8-5-0-BaseOS-x86_64 

  1. [root@localhost ~]# cd /run/media/redhat/RHEL-8-5-0-BaseOS-x86_64
  2. [root@localhost RHEL-8-5-0-BaseOS-x86_64]# ll 光盘设备下所有文件
  3. total 48
  4. dr-xr-xr-x. 4 redhat redhat 2048 Oct 13 2021 AppStream
  5. dr-xr-xr-x. 4 redhat redhat 2048 Oct 13 2021 BaseOS
  6. dr-xr-xr-x. 3 redhat redhat 2048 Oct 13 2021 EFI
  7. -r--r--r--. 1 redhat redhat 8154 Oct 13 2021 EULA
  8. -r--r--r--. 1 redhat redhat 1455 Oct 13 2021 extra_files.json
  9. -r--r--r--. 1 redhat redhat 18092 Oct 13 2021 GPL
  10. dr-xr-xr-x. 3 redhat redhat 2048 Oct 13 2021 images
  11. dr-xr-xr-x. 2 redhat redhat 2048 Oct 13 2021 isolinux
  12. -r--r--r--. 1 redhat redhat 103 Oct 13 2021 media.repo
  13. -r--r--r--. 1 redhat redhat 1669 Oct 13 2021 RPM-GPG-KEY-redhat-beta
  14. -r--r--r--. 1 redhat redhat 5135 Oct 13 2021 RPM-GPG-KEY-redhat-release
  15. -r--r--r--. 1 redhat redhat 1796 Oct 13 2021 TRANS.TBL

用户自己将光盘设备移动到一个挂载点目录  (更方便)

将一个设备和挂载点目录挂载

  1. [root@localhost ~]# mount /dev/sr0 /mnt (后期加载光盘只需要到/mnt下)
  2. mount: /mnt: /dev/sr0 already mounted on /run/media/redhat/RHEL-8-5-0-BaseOS-x86_64.
  3. [root@localhost ~]# mount
  4. /dev/sr0 on /run/media/redhat/RHEL-8-5-0-BaseOS-x86_64 type iso9660 (ro,nosuid,nodev,relatime,nojoliet,check=s,map=n,b
  5. /dev/sr0 on /mnt type iso9660 (ro,relatime,nojoliet,check=s,map=n,blocksize=2048,uid=1000,gid=1000,dmode=500,fmode=400)
  1. [root@localhost ~]# ll /mnt
  2. total 48
  3. dr-xr-xr-x. 4 redhat redhat 2048 Oct 13 2021 AppStream (这两个目录记录了当前主机上可以安
  4. dr-xr-xr-x. 4 redhat redhat 2048 Oct 13 2021 BaseOS 装的软件包)
  5. dr-xr-xr-x. 3 redhat redhat 2048 Oct 13 2021 EFI
  6. -r--r--r--. 1 redhat redhat 8154 Oct 13 2021 EULA
  7. -r--r--r--. 1 redhat redhat 1455 Oct 13 2021 extra_files.json
  8. -r--r--r--. 1 redhat redhat 18092 Oct 13 2021 GPL
  9. dr-xr-xr-x. 3 redhat redhat 2048 Oct 13 2021 images
  10. dr-xr-xr-x. 2 redhat redhat 2048 Oct 13 2021 isolinux
  11. -r--r--r--. 1 redhat redhat 103 Oct 13 2021 media.repo
  12. -r--r--r--. 1 redhat redhat 1669 Oct 13 2021 RPM-GPG-KEY-redhat-beta
  13. -r--r--r--. 1 redhat redhat 5135 Oct 13 2021 RPM-GPG-KEY-redhat-release
  14. -r--r--r--. 1 redhat redhat 1796 Oct 13 2021 TRANS.TBL
  15. AppStream BaseOS
  16. [root@localhost ~]# cd /mnt/AppStream
  17. [root@localhost AppStream]# ll
  18. total 1156
  19. dr-xr-xr-x. 2 redhat redhat 1179648 Oct 13 2021 Packages (软件包都在里面)
  20. dr-xr-xr-x. 2 redhat redhat 4096 Oct 13 2021 repodata
  21. [root@localhost AppStream]# cd Packages (记录的是软件包之间的依赖关系)
  22. [root@localhost Packages]# ll
  23. -r--r--r--. 1996 redhat redhat 532104 Mar 3 2020 zsh-html-5.5.1-6.el8_1.2.noarch.rpm
  24. -r--r--r--. 399 redhat redhat 402752 Jun 8 2020 zstd-1.4.4-1.el8.x86_64.rpm
  25. -r--r--r--. 154 redhat redhat 95368 Aug 3 2021 zziplib-0.13.68-9.el8.i686.rpm
  26. -r--r--r--. 154 redhat redhat 93100 Aug 3 2021 zziplib-0.13.68-9.el8.x86_64.rpm
  27. -r--r--r--. 154 redhat redhat 48684 Aug 3 2021 zziplib-utils-0.13.68-9.el8.x86_64.rpm
  28. 在Packages 里有linux红毛系统中所有可以安装的软件包
  29. 开发的软件包文件默认格式都是.rpm

取消挂载

  1. [root@localhost Packages]# umount /mnt 在挂载点目录不能取消
  2. umount: /mnt: target is busy.
  3. [root@localhost Packages]# cd
  4. [root@localhost ~]# umount /mnt

如何查看是否挂载成功

  1. [root@localhost ~]# umount /mnt
  2. [root@localhost ~]# mount | grep /mnt
  3. [root@localhost ~]# mount /dev/sr0 /mnt
  4. mount: /mnt: WARNING: device write-protected, mounted read-only.
  5. 警告 但命令是成功的
  6. [root@localhost ~]# mount | grep /mnt
  7. /dev/sr0 on /mnt type iso9660 (ro,relatime,nojoliet,check=s,map=n,blocksize=2048,uid=1000,gid=1000,dmode=500,fmode=400)

eg:

当前目录下有多少个软件包

  1. [root@localhost Packages]# pwd pwd --查看当前所在的具体路径
  2. /mnt/AppStream/Packages
  3. [root@localhost Packages]# ll |wc -l
  4. 6222
  5. 6222-1=6221(总量那一行不算)
  1. [root@localhost Packages]# cd /mnt/BaseOS/Packages
  2. [root@localhost Packages]# pwd
  3. /mnt/BaseOS/Packages
  4. [root@localhost Packages]# ll
  5. -r--r--r--. 233 redhat redhat 74200 Sep 16 2021 yum-utils-4.0.21-3.el8.noarch.rpm
  6. -r--r--r--. 849 redhat redhat 276820 Dec 15 2018 zip-3.0-23.el8.x86_64.rpm
  7. -r--r--r--. 303 redhat redhat 107380 Oct 27 2020 zlib-1.2.11-17.el8.i686.rpm
  8. -r--r--r--. 323 redhat redhat 104736 Oct 27 2020 zlib-1.2.11-17.el8.x86_64.rpm
  9. -r--r--r--. 303 redhat redhat 58948 Oct 27 2020 zlib-devel-1.2.11-17.el8.i686.rpm
  10. -r--r--r--. 323 redhat redhat 58924 Oct 27 2020 zlib-devel-1.2.11-17.el8.x86_64.rpm
  11. -r--r--r--. 507 redhat redhat 3039316 Mar 3 2020 zsh-5.5.1-6.el8_1.2.x86_64.rpm
  12. [root@localhost Packages]# ll | wc -l
  13. 1710
  14. 1710-1=1709

安装的软件包都在这两个路径下

  1. [root@localhost Packages]# pwd pwd --查看当前所在的具体路径
  2. /mnt/AppStream/Packages
  3. [root@localhost Packages]# pwd
  4. /mnt/BaseOS/Packages
  5. (AppStream非红帽官方开发的软件程序)(第三方提供的软件包)
  6. (BaseOS红帽官方开发的软件程序)

BaseOS 中的软件包主要是用于提供操作系统底层功能,数量不多;
AppStream 中则包含了大量的第三方应用软件包。


二.安装软件包


1.  rpm    软件管理工具(命令)

     rpm    -ivh     软件包名               安装软件包   [i--安装   v--详细信息   h hash--缓存(可以看见软件包的安装进程)]

               -evh    软件名                   卸载对应的软件  (可以查看软件的详细卸载进程)

                -q       软件名                   查询已经安装软件(查询对应的软件是否安装)

                -qa                                  查询已经安装的所有软件

                 -ql      软件名                  查看指定软件程序的文件列表信息

                -qf     文件绝对路径         查询某一个文件时由哪一个包提供

                -Uvh   软件名                  (U-update)  更新软件显示详细的进程信息

                -qpi     软件包名               查看软件包的详细信息

eg:

①软件包的详细介绍   (版本号)

  1. [root@localhost Packages]# umount /mnt
  2. umount: /mnt: target is busy.
  3. [root@localhost Packages]# cd
  4. [root@localhost ~]# umount /mnt
  5. [root@localhost ~]# cd /mnt/AppStream/Packages/
  6. -bash: cd: /mnt/AppStream/Packages/: No such file or directory
  7. [root@localhost ~]# mount /dev/sr0 /mnt
  8. mount: /mnt: WARNING: device write-protected, mounted read-only.
  9. [root@localhost ~]# cd /mnt/AppStream/Packages/
  10. [root@localhost Packages]# ll
  11. .....
  12. -r--r--r--. 154 redhat redhat 48684 Aug 3 2021 zziplib-utils-0.13.68-9.el8.x86_64.rpm (版本号前面的字符信息 版本号
  13. 软件包装好的软件名称)
  14. 注:有些软件包和软件名是没有关系的
  15. 所以可以通过命令rpm -qpi 软件包名  (查看软件包的详细信息)
  16. 版本号: 0.13.68-9.el8.x86_64.rpm
  17. 主版本.子版本.修订版本次数
  18. 0 . 13 . 68
  19. 若程序发生重大变换主版本会加一,如果变换过小 ,则主版本不变子版本加一
  20. 修订版本次数:修改bug次数 (该程序在发布之前一共修改了多少次)
  21. 注:bug不一定是错误,不符合用户逻辑也算
  22. 如果bug修改次数过多的,直接将修订版本次数赋值为0,子版本加一
  23. el:企业linux
  24. el8:企业linux 8 这个版本
  25. 注:后期在互联网上安装软件包的时候 标记的是el6、7不一定可以在当前8上面安装的
  26. 主机的架构是x86_64 ,那么软件包的架构也要是x86_64
  27. 总结:在互联网上下载的软件包的相关版本信息要和主机的相关版本信息相一致

② 安装对应的软件包

  1. [root@localhost ~]# cd /mnt/AppStream/Packages
  2. [root@localhost Packages]# rpm -ivh zsh-html-5.5.1-6.el8_1.2.noarch.rpm
  3. warning: zsh-html-5.5.1-6.el8_1.2.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
  4. Verifying... ################################# [100%]
  5. Preparing... ################################# [100%]
  6. Updating / installing... (h 缓存 进度显示 )
  7. 1:zsh-html-5.5.1-6.el8_1.2 ################################# [100%]
  8. 若没有切换到对应的路径,就必须写绝对路径
  9. [root@localhost Packages]# rpm -ivh /mnt/AppStream/Packages/zsh-html-5.5.1-6.el8_1.2.noarch.rpm

③查看软件是否安装成功

法一:

  1. [root@localhost Packages]# rpm -q zsh-html (软件名)
  2. zsh-html-5.5.1-6.el8_1.2.noarch
  3. [root@localhost ~]# rpm -q zsh-html
  4. zsh-html-5.5.1-6.el8_1.2.noarch
  5. [root@localhost ~]# rpm -q tar
  6. tar-1.30-5.el8.x86_64 (tar命令其实也是系统安装的一个软件)
  7. [root@localhost ~]# rpm -q httpd
  8. package httpd is not installed (查找的这个软件程序没有安装好)

法二:

  1. [root@localhost ~]# rpm -qa | grep zsh-html
  2. zsh-html-5.5.1-6.el8_1.2.noarch

④查看一共安装了多少个软件

  1. [root@localhost ~]# rpm -qa | wc -l
  2. 1369

⑤卸载软件

  1. [root@localhost ~]# rpm -evh zsh-html
  2. Preparing... ################################# [100%]
  3. Cleaning up / removing...
  4. 1:zsh-html-5.5.1-6.el8_1.2 ################################# [100%]
  5. [root@localhost ~]# rpm -q zsh-html
  6. package zsh-html is not installed

⑥查看一个软件包的详细信息

  1. [root@localhost Packages]# rpm -qpi zsh-html-5.5.1-6.el8_1.2.noarch.rpm
  2. warning: zsh-html-5.5.1-6.el8_1.2.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
  3. Name : zsh-html
  4. Version : 5.5.1 版本
  5. Release : 6.el8_1.2
  6. Architecture: noarch
  7. Install Date: (not installed)
  8. Group : Unspecified
  9. Size : 3343388 大小(默认最小单位byte)
  10. License : MIT
  11. Signature : RSA/SHA256, Tue 03 Mar 2020 09:26:42 PM CST, Key ID 199e2f91fd431d51
  12. Source RPM : zsh-5.5.1-6.el8_1.2.src.rpm
  13. Build Date : Tue 03 Mar 2020 09:07:42 PM CST 开发时间
  14. Build Host : arm64-038.build.eng.bos.redhat.com
  15. Relocations : (not relocatable)
  16. Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
  17. Vendor : Red Hat, Inc.
  18. URL : http://zsh.sourceforge.net/ 对应的详细信息
  19. Summary : Zsh shell manual in html format
  20. Description :
  21. The zsh shell is a command interpreter usable as an interactive login
  22. shell and as a shell script command processor. Zsh resembles the ksh
  23. shell (the Korn shell), but includes many enhancements. Zsh supports
  24. command line editing, built-in spelling correction, programmable
  25. command completion, shell functions (with autoloading), a history
  26. mechanism, and more.
  27. This package contains the Zsh manual in html format.

⑦-ql      软件名                  查看指定软件程序的文件列表信息

  1. [root@localhost Packages]# rpm -ql tar
  2. /usr/bin/gtar (bin 可以用到的命令)
  3. /usr/bin/tar
  4. /usr/lib/.build-id (lib 该程序相关的库文件 )
  5. /usr/lib/.build-id/9b
  6. /usr/lib/.build-id/9b/25e81ba8d838de94d97e4ade418726d8f8d739
  7. /usr/share/doc/tar (share 共享文档 doc 文本)
  8. /usr/share/doc/tar/AUTHORS
  9. /usr/share/doc/tar/ChangeLog
  10. /usr/share/doc/tar/NEWS
  11. /usr/share/doc/tar/README (对软件工具的解释说明)
  12. /usr/share/doc/tar/THANKS
  13. /usr/share/info/tar.info-1.gz
  14. /usr/share/info/tar.info-2.gz
  15. /usr/share/info/tar.info.gz
  16. /usr/share/licenses/tar
  17. /usr/share/licenses/tar/COPYING
  18. /usr/share/locale/bg/LC_MESSAGES/tar.mo (共享的一些本地信息)
  19. /usr/share/locale/ca/LC_MESSAGES/tar.mo
  20. /usr/share/locale/cs/LC_MESSAGES/tar.mo
  21. .........
  22. /usr/share/man/man1/gtar.1.gz
  23. /usr/share/man/man1/tar.1.gz (帮助)
  24. 注:并不是所有的命令都有man手册,而是系统上所装的程序提供了man手
  25. 册,才能通过man手册做出一个查看

⑧  -qf     文件绝对路径         查询某一个文件时由哪一个包提供

  1. [root@localhost Packages]# which vim
  2. /usr/bin/vim 查看vim ,这个命令(软件程序)的绝对路径
  3. [root@localhost Packages]# rpm -qf /usr/bin/vim
  4. vim-enhanced-8.0.1763-16.el8.x86_64 提供vim的软件包
  5. vim的扩展程序包

⑨安装软件时的依赖关系如何解决

  1. [root@localhost Packages]# rpm -ivh yp-tools-4.2.3-1.el8.x86_64.rpm
  2. warning: yp-tools-4.2.3-1.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
  3. error: Failed dependencies:
  4. ypbind >= 3:2.4-2 is needed by yp-tools-4.2.3-1.el8.x86_64
  5. (ypbind和yp-tools 必须同时安装或同时卸载)
  6. [root@localhost Packages]# rpm -ivh yp-tools-4.2.3-1.el8.x86_64.rpm ypbind-2.5-2.el8.x86_64.rpm
  7. warning: yp-tools-4.2.3-1.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
  8. error: Failed dependencies:
  9. nss_nis is needed by ypbind-3:2.5-2.el8.x86_64 (yphind 和nss_nis 又必须同时安装或同时卸载)
  10. 注:有依赖关系的包还要先判断在哪一条路径下
  11. [root@localhost Packages]# rpm -ivh yp-tools-4.2.3-1.el8.x86_64.rpm ypbind-2.5-2.el8.x86_64.rpm /mnt/BaseOS/Packages/nss_nis-3.0-8.el8.x86_64.rpm
  12. warning: yp-tools-4.2.3-1.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
  13. Verifying... ################################# [100%]
  14. Preparing... ################################# [100%]
  15. Updating / installing...
  16. 1:nss_nis-3.0-8.el8 ################################# [ 33%]
  17. 2:ypbind-3:2.5-2.el8 ################################# [ 67%]
  18. 3:yp-tools-4.2.3-1.el8 ################################# [100%]

注:有依赖关系的软件包还要先判断在哪一条路径下

卸载时一样

  1. [root@localhost Packages]# rpm -evh yp-tools
  2. error: Failed dependencies:
  3. yp-tools >= 4.2.2-2 is needed by (installed) ypbind-3:2.5-2.el8.x86_64
  4. [root@localhost Packages]# rpm -evh yp-tools ypbind
  5. Preparing... ################################# [100%]
  6. Cleaning up / removing...
  7. 1:yp-tools-4.2.3-1.el8 ################################# [ 50%]
  8. 2:ypbind-3:2.5-2.el8 ################################# [100%]
  9. [root@localhost Packages]# rpm -evh nss_nis
  10. Preparing... ################################# [100%]
  11. Cleaning up / removing...
  12. 1:nss_nis-3.0-8.el8 ################################# [100%]
  13. [root@localhost Packages]# rpm -evh yp-tools ypbind nss_nis
  14. Preparing... ################################# [100%]
  15. Cleaning up / removing...
  16. 1:yp-tools-4.2.3-1.el8 ################################# [ 33%]
  17. 2:ypbind-3:2.5-2.el8 ################################# [ 67%]
  18. 3:nss_nis-3.0-8.el8 ################################# [100%]

练习:

在linux主机中安装zsh-html-5.5.1-6.el8_1.2.noarch.rpm软件包    (安装软件包只需要挂载一次  , 重启后需要再次挂载)

#mount    /dev/sr0   /mnt

#rpm  -ivh    /mnt/AppStream/Packages/zsh-html-5.5.1-6.el8_1.2.noarch.rpm

查看tree工具文件列表;

#rpm     -ql  tree

卸载tar工具;

#rpm     -evh      tar

[root@localhost ~]# rpm  -evh  tar         有错误      程序间(软件包)有依赖关系,指定多个有依赖关系
error: Failed dependencies:                                                 的程序同时卸载
    tar is needed by (installed) open-vm-tools-11.2.5-2.el8.x86_64
    tar is needed by (installed) insights-client-0:3.1.5-1.el8.noarch
    /usr/bin/tar is needed by (installed) file-roller-3.28.1-4.el8.x86_64

[root@www ~]# tar -evh tree 
tar: invalid option -- 'e'
Try 'tar --help' or 'tar --usage' for more information.
[root@www ~]# rpm  -evh tree 
Preparing...                          ################################# [100%]
Cleaning up / removing...
   1:tree-1.7.0-15.el8                ################################# [100%]

查看ssh工具的别名  (查询ssh文件时由哪一个包提供)

[root@localhost ~]# which   ssh
/usr/bin/ssh
[root@localhost ~]# rpm  -qf  /usr/bin/ssh
openssh-clients-8.0p1-10.el8.x86_64
 


2.另一种安装方法:    (与rmp相比可以解决繁琐的依赖关系)

注: yum/dnf安装时还会安装有依赖关系的软件包  ,卸载时也会卸载有依赖关系的软件包

dnf就是yum的扩展工具,两者都是一样的,没有任何区别

dnf/yum  (仓库管理)   仓库源--Base0S、AppStream     可以   (linux8)/(linux7)                                              解决依赖关系

安装的软件包的路径:

[root@localhost Packages]# pwd      pwd  --查看当前所在的具体路径
/mnt/AppStream/Packages       

[root@localhost Packages]# pwd
/mnt/BaseOS/Packages

注:优点:软件包管理时基于仓库形式管理-----安装的软件包的路径:AppStream .BaseOS ,将这两个路径统一放到仓库之中,就不用纠结软件包在AppStream ,还是在BaseOS之中。直接在仓库查找


第一步:创建仓库

提:默认的路径之下有一个仓库文件  

redhat.repo   默认就有 的红帽仓库文件  但是这个仓库文 件没有任何内容 仓库源

注:一般情况创建仓库文件不建议写到redhat.repo 里面

因为我们现在用到的软件包不是通过红帽官方获取的,  如果是通过官方获取的,就可以写到 /etc/yum.repos.d/redhat.repo  里面

但是我们现在所定义的仓库不是通过红帽官方所获取的,把仓库源写到这个文件也可以,但是要注意一个版本的问题linux8  可以  ,但如果是linux7就有问题

所以后期要注如果通过其他路径(非红帽官方的路径)所获取的软件包,最好不要将仓库文件写到redhat.repo 里面

  1. [root@localhost ~]# cd /etc/yum.repos.d
  2. [root@localhost yum.repos.d]# ll
  3. total 8
  4. -rw-r--r--. 1 root root 127 Dec 17 18:40 base.repo 后来自己创建的 base 自己定义的
  5. -rw-r--r--. 1 root root 358 Nov 20 03:01 redhat.repo 默认就有 的红帽仓库文件 但是这个仓库文
  6. 件没有任何内容 仓库源
  7. [root@localhost yum.repos.d]# cat redhat.repo
  8. [root@localhost ~]# cat /etc/yum.repos.d/redhat.repo
  9. #
  10. # Certificate-Based Repositories
  11. # Managed by (rhsm) subscription-manager
  12. #
  13. # *** This file is auto-generated. Changes made here will be over-written. ***
  14. # *** Use "subscription-manager repo-override --help" if you wish to make changes. ***
  15. #
  16. # If this file is empty and this system is subscribed consider
  17. # a "yum repolist" to refresh available repos
  18. #
  19. 都是#开头的信息,都是注释信息, 没有参数的

仓库:yum 配置文件(仓库文件)   设计初心:以仓库形式管理

/etc/yum.repos.d/*.repo       (*.repo    软件获取得源位置)        

               仓库单词的缩写

(* :任意长度的任意字符)该文件的初始化文件后缀必须是.repo   习惯会用 base.repo                                                                                                                  (源仓库的标识信息)

         

vim  /etc/yum.repos.d/base.repo                    仓库一般有四条配置
[源标识名称]                                                    仓库的名称
name=描述信息
baseurl=file:///mnt/AppStream     //源的资源链接  (url  ----统一资源定位符)(file协议:本gpgcheck=0   0关闭  1开启                                 地协议)(Packages不用写,会自动加载)
[2源标识名称]
name=描述信息
baseurl=file:///mnt/BaseOS
gpgcheck=0   0关闭  1开启                        公司验证,密钥

##################################


补: 公司验证,密钥

公钥  私钥

公钥:公共用户所拥有的一把密钥

私钥:服务端所拥有的一把密钥

自己的公钥要和服务端的私钥匹配成功

例:在Windows系统中下载软件时软件服务端发来的是公钥  要和服务端的私钥相匹配,才能成功下载


注:要获取所有的软件包,所以要建两个路径    ,   几个路径几个源

(linux8)/(linux7)      : 两个源建两个路径   /     一个源建一个路径

eg: 

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

[AppStream]                                     [源标识名称]      根据软件包所处的路径选择

name=RHEL-AppStream                 描述信息 获取的是红帽企业linux AppStream下的软件包

baseurl=file:/ / /mnt/AppStream

gpgcheck=0                                     1开启      0关闭 

[BaseOS]                                          [2源标识名称]

name= RHEL-BaseOS                     描述信息

baseurl=file:/ / /mnt/BaseOS

gpgcheck=0                                     1开启      0关闭 

第二步:安装对应的软件包

众多指令记住前面7条指令 ,重点在安装和卸载软件包(可以解决软件包之间的依赖关系)

yum/dnf    install  [-y]     包名/软件名   安装指定的软件包,-y则在工作过程中需要使用者响应, 这个选个参数可以直接回答yes  (可以通过软件名找到包名) yes  确定执行  如果不想手动输入y确定  那就在输入的命令后面加-y

     (install(安装)---命令的参数)

yum remove [-y] 包名 卸载已经安装在系统中的指定的软件包

yum provides 文件名 查找指定的文件属于哪个包; rpm -qf     绝对路径下的文件名

yum info   软件名 查看对应的指定软件包的详细信息  rpm  -qpi     包名  

yum repolist [all] 查看系统中yum资源库配置信息(检查仓库配置)(仓库要建好才可以查看出来

作用:列出仓库源(可以在建好仓库之后,做出一个检查验证)

#yum    list          查看有哪些安装包

=

yum list all 列出仓库里所有可安装的软件包  (rpm中没有

yum list installed [包名] 列出己经安装的所有的或指定的rpm包(包名中可使用匹配符) rpm -qa

yum upgrade [-y] 包名 升级指定的软件包或主机中所有已安装的软件包

yum search 模糊包名 查看模糊包名的软件包

包组:

yum grouplist 查看仓库里而所有包组

yum groupinfo 包组名 查看指定包组里而的详细信息

yum groupinstall 包组名 安装指定包组里面的所有包  (组安装,安装的软件包之间没有依赖关系)

yum groupremove  包组名 卸载指定包组里面的所有包

yum list all   =   yum  list  列出仓库里所有可安装的软件包

yum list installed [包名] 列出己经安装的所有的或指定的rpm包(包名中可使用匹配符) rpm -qa

yum clean all 清除下载到本机的指定的软件包或所有软件包的yum源缓存

补:

yum/dnf  alias     装包的时候可以匹配别名(对应的包名)

yum/dnf  autoremove  自动卸载移除软件包

yum/dnf   downgrade   对软件包降级

yum/dnf    mark         查看做过标记的软件包

yum/dnf     history      查看历史上安装的软件包

yum/dnf 的特点:

安装软件包直接指定软件名可以自动加载对应的软件包;

安装软件包不需要指定软件路径;(参考①,可用软件名代替软件包名,软件的路径在当前路径下就有)

自动识别依赖软件程序,一次性安装不需要繁琐一次次指定。

eg: 

命令演示

①  yum info   软件名 查看指定软件包的详细信息  rpm  -qpi     包名 

  1. 软件包:
  2. -r--r--r--. 1996 redhat redhat 532104 Mar 3 2020 zsh-html-5.5.1-6.el8_1.2.noarch.rpm
  3. [root@localhost ~]# rpm -qpi zsh-html-5.5.1-6.el8_1.2.noarch.rpm
  4. error: open of zsh-html-5.5.1-6.el8_1.2.noarch.rpm failed: No such file or directory
  5. 此目录下没有该文件,该文件不在此目录下,因此需要换一条目录,换一条路径
  6. 同理,在查看软件包时 或切换软件包下路径时,需要先将设备与挂载点目录下的一个挂载点先挂载
  7. [root@localhost ~]# cd /mnt/AppStream/Packages
  8. [root@localhost Packages]# rpm -qpi zsh-html-5.5.1-6.el8_1.2.noarch.rpm
  9. warning: zsh-html-5.5.1-6.el8_1.2.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
  10. Name : zsh-html
  11. Version : 5.5.1
  12. Release : 6.el8_1.2
  13. Architecture: noarch
  14. Install Date: (not installed)
  15. Group : Unspecified
  16. Size : 3343388
  17. License : MIT
  18. Signature : RSA/SHA256, Tue 03 Mar 2020 09:26:42 PM CST, Key ID 199e2f91fd431d51
  19. Source RPM : zsh-5.5.1-6.el8_1.2.src.rpm
  20. Build Date : Tue 03 Mar 2020 09:07:42 PM CST
  21. Build Host : arm64-038.build.eng.bos.redhat.com
  22. Relocations : (not relocatable)
  23. Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
  24. Vendor : Red Hat, Inc.
  25. URL : http://zsh.sourceforge.net/
  26. Summary : Zsh shell manual in html format
  27. Description :
  28. The zsh shell is a command interpreter usable as an interactive login
  29. shell and as a shell script command processor. Zsh resembles the ksh
  30. shell (the Korn shell), but includes many enhancements. Zsh supports
  31. command line editing, built-in spelling correction, programmable
  32. command completion, shell functions (with autoloading), a history
  33. mechanism, and more.
  34. This package contains the Zsh manual in html format.
  35. [root@localhost Packages]# rpm -qpi zsh-html
  36. error: open of zsh-html failed: No such file or directory
  37. [root@localhost Packages]# yum info zsh-html-5.5.1-6.el8_1.2.noarch.rpm
  38. Updating Subscription Management repositories.
  39. Unable to read consumer identity
  40. This system is not registered with an entitlement server. You can use subscription-manager to register.
  41. Last metadata expiration check: 0:41:35 ago on Wed 14 Dec 2022 01:16:06 AM CST.
  42. Error: No matching Packages to list
  43. [root@localhost Packages]# yum info zsh-html
  44. Updating Subscription Management repositories.
  45. Unable to read consumer identity
  46. This system is not registered with an entitlement server. You can use subscription-manager to register.
  47. Last metadata expiration check: 0:43:23 ago on Wed 14 Dec 2022 01:16:06 AM CST.
  48. Available Packages
  49. Name : zsh-html
  50. Version : 5.5.1
  51. Release : 6.el8_1.2
  52. Architecture : noarch
  53. Size : 520 k
  54. Source : zsh-5.5.1-6.el8_1.2.src.rpm
  55. Repository : AppStream
  56. Summary : Zsh shell manual in html format
  57. URL : http://zsh.sourceforge.net/
  58. License : MIT
  59. Description : The zsh shell is a command interpreter usable as
  60. : an interactive login shell and as a shell script
  61. : command processor. Zsh resembles the ksh shell
  62. : (the Korn shell), but includes many
  63. : enhancements. Zsh supports command line
  64. : editing, built-in spelling correction,
  65. : programmable command completion, shell functions
  66. : (with autoloading), a history mechanism, and
  67. : more.
  68. :
  69. : This package contains the Zsh manual in html
  70. : format.
  71. zsh-html 是个软件名就在家目录下,与zsh-5.5.1-6.el8_1.2.src.rpm软件包名不同,他只能在对应的挂载点目录下的软件包路径下查看
  72. [root@localhost ~]# yum info zsh-html
  73. Updating Subscription Management repositories.
  74. Unable to read consumer identity
  75. This system is not registered with an entitlement server. You can use subscription-manager to register.
  76. Last metadata expiration check: 1:08:09 ago on Wed 14 Dec 2022 01:16:06 AM CST.
  77. Available Packages
  78. Name : zsh-html
  79. Version : 5.5.1
  80. Release : 6.el8_1.2
  81. Architecture : noarch
  82. Size : 520 k
  83. Source : zsh-5.5.1-6.el8_1.2.src.rpm
  84. Repository : AppStream
  85. Summary : Zsh shell manual in html format
  86. URL : http://zsh.sourceforge.net/
  87. License : MIT
  88. Description : The zsh shell is a command interpreter usable as
  89. : an interactive login shell and as a shell script
  90. : command processor. Zsh resembles the ksh shell
  91. : (the Korn shell), but includes many
  92. : enhancements. Zsh supports command line
  93. : editing, built-in spelling correction,
  94. : programmable command completion, shell functions
  95. : (with autoloading), a history mechanism, and
  96. : more.
  97. :
  98. : This package contains the Zsh manual in html
  99. : format.

yum provides    (直接用)文件名 查找指定的文件属于哪个包( 更方便 ); rpm -qf        (必须用)绝对路径下的文件名

  1. [root@localhost ~]# rpm -qf /usr/bin/tar
  2. tar-1.30-5.el8.x86_64

  1. [root@localhost ~]# yum  provides   tar
  2. Updating Subscription Management repositories.
  3. Unable to read consumer identity
  4. This system is not registered with an entitlement server. You can use subscription-manager to register.
  5. Last metadata expiration check: 1:34:51 ago on Wed 14 Dec 2022 01:16:06 AM CST.
  6. tar-2:1.30-5.el8.x86_64 : A GNU file archiving program
  7. Repo        : @System
  8. Matched from:
  9. Provide    : tar = 2:1.30-5.el8
  10. tar-2:1.30-5.el8.x86_64 : A GNU file archiving program
  11. Repo        : BaseOS
  12. Matched from:
  13. Provide    : tar = 2:1.30-5.el8
  1. [root@localhost ~]# rpm -qf tar
  2. error: file /root/tar: No such file or directory
  3. [root@localhost ~]# which tar
  4. /usr/bin/tar
  5. [root@localhost ~]# rpm -qf /usr/bin/tar
  6. tar-1.30-5.el8.x86_64
  7. [root@localhost ~]# yum provides tar
  8. Updating Subscription Management repositories.
  9. Unable to read consumer identity
  10. This system is not registered with an entitlement server. You can use subscription-manager to register.
  11. Last metadata expiration check: 1:34:51 ago on Wed 14 Dec 2022 01:16:06 AM CST.
  12. tar-2:1.30-5.el8.x86_64 : A GNU file archiving program
  13. Repo : @System
  14. Matched from:
  15. Provide : tar = 2:1.30-5.el8
  16. tar-2:1.30-5.el8.x86_64 : A GNU file archiving program
  17. Repo : BaseOS
  18. Matched from:
  19. Provide : tar = 2:1.30-5.el8
  20. [root@localhost ~]# yum provides /usr/bin/tar
  21. Updating Subscription Management repositories.
  22. Unable to read consumer identity
  23. This system is not registered with an entitlement server. You can use subscription-manager to register.
  24. Last metadata expiration check: 1:35:38 ago on Wed 14 Dec 2022 01:16:06 AM CST.
  25. tar-2:1.30-5.el8.x86_64 : A GNU file archiving program
  26. Repo : @System
  27. Matched from:
  28. Filename : /usr/bin/tar
  29. tar-2:1.30-5.el8.x86_64 : A GNU file archiving program
  30. Repo : BaseOS
  31. Matched from:
  32. Filename : /usr/bin/tar
  33. 提醒:yum不用绝对路径,直接用文件名
  34. [root@localhost ~]# yum provides zsh-html
  35. Updating Subscription Management repositories.
  36. Unable to read consumer identity
  37. This system is not registered with an entitlement server. You can use subscription-manager to register.
  38. Last metadata expiration check: 1:40:17 ago on Wed 14 Dec 2022 01:16:06 AM CST.
  39. zsh-html-5.5.1-6.el8_1.2.noarch : Zsh shell manual in html
  40. : format
  41. Repo : AppStream
  42. Matched from:
  43. Provide : zsh-html = 5.5.1-6.el8_1.2
  44. [root@localhost ~]# which zsh-html
  45. /usr/bin/which: no zsh-html in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
  46. [root@localhost ~]# rpm -qf zsh-html 不在环境变量路径之下,无法查找绝对路径
  47. error: file /root/zsh-html: No such file or directory

③yum repolist [all] 查看系统中yum资源库配置信息(检查仓库配置)(仓库要建好才可以查看出来

  1. [root@localhost ~]# yum repolist
  2. Updating Subscription Management repositories.
  3. Unable to read consumer identity
  4. This system is not registered with an entitlement server. You can use subscription-manager to register.
  5. repo id repo name
  6. AppStream AppStream
  7. BaseOS BaseOS

④查看系统已经安装的软件中,有没有刚刚需要安装的软件

eg: 查询软件httpd 是否安装 

  1. [root@localhost ~]# yum list installed | grep httpd
  2. 第一次查询没有信息显示, 说明该软件包没有安装
  3. 第二步:安装软件包
  4. [root@localhost ~]# mount /dev/sr0 /mnt
  5. mount: /mnt: WARNING: device write-protected, mounted read-only.
  6. [root@localhost ~]# dnf repolist
  7. Updating Subscription Management repositories.
  8. Unable to read consumer identity
  9. This system is not registered with an entitlement server. You can use subscription-manager to register.
  10. repo id repo name
  11. AppStream AppStream
  12. BaseOS BaseOS
  13. [root@localhost ~]# yum install httpd -y
  14. Updating Subscription Management repositories.
  15. Unable to read consumer identity
  16. This system is not registered with an entitlement server. You can use subscription-manager to register.
  17. BaseOS 2.7 MB/s | 2.8 kB 00:00
  18. AppStream 3.1 MB/s | 3.2 kB 00:00
  19. Dependencies resolved.
  20. ===============================================================
  21. Package Arch Version Repo Size
  22. ===============================================================
  23. Installing:
  24. httpd x86_64 2.4.37-41.module+el8.5.0+11772+c8e0c271
  25. AppStream 1.4 M
  26. Installing dependencies:
  27. apr x86_64 1.6.3-12.el8 AppStream 130 k
  28. apr-util x86_64 1.6.1-6.el8 AppStream 105 k
  29. httpd-filesystem noarch 2.4.37-41.module+el8.5.0+11772+c8e0c271
  30. AppStream 39 k
  31. httpd-tools x86_64 2.4.37-41.module+el8.5.0+11772+c8e0c271
  32. AppStream 106 k
  33. mod_http2 x86_64 1.15.7-3.module+el8.4.0+8625+d397f3da
  34. AppStream 154 k
  35. redhat-logos-httpd noarch 84.5-1.el8 BaseOS 29 k
  36. Installing weak dependencies:
  37. apr-util-bdb x86_64 1.6.1-6.el8 AppStream 25 k
  38. apr-util-openssl x86_64 1.6.1-6.el8 AppStream 27 k
  39. Enabling module streams:
  40. httpd 2.4
  41. Transaction Summary
  42. ===============================================================
  43. Install 9 Packages
  44. Total size: 2.0 M
  45. Installed size: 5.4 M
  46. Downloading Packages:
  47. Running transaction check
  48. Transaction check succeeded.
  49. Running transaction test
  50. Transaction test succeeded.
  51. Running transaction
  52. Preparing : 1/1
  53. Installing : apr-1.6.3-12.el8.x86_64 1/9
  54. Running scriptlet: apr-1.6.3-12.el8.x86_64 1/9
  55. Installing : apr-util-bdb-1.6.1-6.el8.x86_64 2/9
  56. Installing : apr-util-openssl-1.6.1-6.el8.x86_64 3/9
  57. Installing : apr-util-1.6.1-6.el8.x86_64 4/9
  58. Running scriptlet: apr-util-1.6.1-6.el8.x86_64 4/9
  59. Installing : httpd-tools-2.4.37-41.module+el8.5. 5/9
  60. Running scriptlet: httpd-filesystem-2.4.37-41.module+e 6/9
  61. Installing : httpd-filesystem-2.4.37-41.module+e 6/9
  62. Installing : redhat-logos-httpd-84.5-1.el8.noarc 7/9
  63. Installing : mod_http2-1.15.7-3.module+el8.4.0+8 8/9
  64. Installing : httpd-2.4.37-41.module+el8.5.0+1177 9/9
  65. Running scriptlet: httpd-2.4.37-41.module+el8.5.0+1177 9/9
  66. Verifying : redhat-logos-httpd-84.5-1.el8.noarc 1/9
  67. Verifying : apr-1.6.3-12.el8.x86_64 2/9
  68. Verifying : apr-util-1.6.1-6.el8.x86_64 3/9
  69. Verifying : apr-util-bdb-1.6.1-6.el8.x86_64 4/9
  70. Verifying : apr-util-openssl-1.6.1-6.el8.x86_64 5/9
  71. Verifying : httpd-2.4.37-41.module+el8.5.0+1177 6/9
  72. Verifying : httpd-filesystem-2.4.37-41.module+e 7/9
  73. Verifying : httpd-tools-2.4.37-41.module+el8.5. 8/9
  74. Verifying : mod_http2-1.15.7-3.module+el8.4.0+8 9/9
  75. Installed products updated.
  76. Installed:
  77. apr-1.6.3-12.el8.x86_64
  78. apr-util-1.6.1-6.el8.x86_64
  79. apr-util-bdb-1.6.1-6.el8.x86_64
  80. apr-util-openssl-1.6.1-6.el8.x86_64
  81. httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64
  82. httpd-filesystem-2.4.37-41.module+el8.5.0+11772+c8e0c271.noarch
  83. httpd-tools-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64
  84. mod_http2-1.15.7-3.module+el8.4.0+8625+d397f3da.x86_64
  85. redhat-logos-httpd-84.5-1.el8.noarch
  86. Complete!
  87. 软件包安装成功
  88. [root@localhost ~]# yum list installed | grep httpd 第一次查询什么都没有
  89. httpd.x86_64 2.4.37- 除了第一个是所需要安装的软件包
  90. 41.module+el8.5.0+11772+c8e0c271 @AppStream 其他几个软件包可以查询到是因为
  91. httpd-filesystem.noarch 2.4.37- 他们与所要安装的软件包是依赖关
  92. 41.module+el8.5.0+11772+c8e0c271 @AppStream 系 ,所以一并下载下来了
  93. httpd-tools.x86_64 2.4.37-41.module+el8.5.0+11772+c8e0c271 @AppStream
  94. redhat-logos-httpd.noarch 84.5-1.el8 @BaseOS
  95. 成功查询该软件包,说明该软件包安装成功

⑤查看目前为止仓库一共有多少个软件包可以安装

  1. [root@localhost ~]# yum list
  2. ...
  3. yp-tools.x86_64 4.2.3-1.el8 AppStream
  4. ypbind.x86_64 3:2.5-2.el8 AppStream
  5. ypserv.x86_64 4.0-6.20170331git5bfba76.el8
  6. ...
  7. [root@localhost ~]# yum list all | wc
  8. 6991 20991 845247
  9. [root@localhost ~]# yum list all | wc -l
  10. 6991
  11. [root@localhost ~]# yum list | wc -l 查看多少行
  12. 6991
  13. 6991-1=6990

⑥卸载软件包(yum/dnf卸载时也会将有依赖关系的文件一并卸载

yp-tools.x86_64                    4.2.3-1.el8       AppStream 

yum remove [-y] 包名/软件名 卸载已经安装在系统中的指定的软件包

  1. 第一步
  2. [root@localhost ~]# yum list | grep yp-tools
  3. yp-tools.x86_64 4.2.3-1.el8 AppStream 查看的是可以安装的软件包中是否有这个软件
  4. [root@localhost ~]# yum list installed | grep yp-tools
  5. 查看的是已经安装的软件包中是否有这个软件包
  6. 什么都没有显示代表没有
  7. 需安装
  1. [root@localhost ~]# yum install yp-tools -y
  2. Updating Subscription Management repositories.
  3. Unable to read consumer identity
  4. This system is not registered with an entitlement server. You can use subscription-manager to register.
  5. Last metadata expiration check: 1:25:56 ago on Sun 18 Dec 2022 07:56:50 PM CST.
  6. Package yp-tools-4.2.3-1.el8.x86_64 is already installed.
  7. Dependencies resolved.
  8. Nothing to do.
  9. Complete!
  10. 软件包已经安装成功
  11. [root@localhost ~]# yum list installed | grep yp-tools
  12. yp-tools.x86_64 4.2.3-1.el8 @AppStream
  13. 成功查询到已经安装的软件包有该软件
  1. 第二步:
  2. 继续卸载软件包
  3. [root@localhost ~]# dnf remove yp-tools
  4. Updating Subscription Management repositories.
  5. Unable to read consumer identity
  6. This system is not registered with an entitlement server. You can use subscription-manager to register.
  7. Dependencies resolved.
  8. ===============================================================
  9. Package Arch Version Repository Size
  10. ===============================================================
  11. Removing:
  12. yp-tools x86_64 4.2.3-1.el8 @AppStream 236 k
  13. Removing unused dependencies: 一并卸载有依赖关系的软件包
  14. nss_nis x86_64 3.0-8.el8 @BaseOS 88 k
  15. ypbind x86_64 3:2.5-2.el8 @AppStream 100 k
  16. Transaction Summary
  17. ===============================================================
  18. Remove 3 Packages
  19. Freed space: 424 k
  20. Is this ok [y/N]: y yes 确定执行 如果不想手动输入y确定 那就在输入的命令后面加-y
  21. Running transaction check
  22. Transaction check succeeded.
  23. Running transaction test
  24. Transaction test succeeded.
  25. Running transaction
  26. Preparing : 1/1
  27. Running scriptlet: yp-tools-4.2.3-1.el8.x86_64 1/1
  28. Erasing : yp-tools-4.2.3-1.el8.x86_64 1/3
  29. Running scriptlet: ypbind-3:2.5-2.el8.x86_64 2/3
  30. Erasing : ypbind-3:2.5-2.el8.x86_64 2/3
  31. Running scriptlet: ypbind-3:2.5-2.el8.x86_64 2/3
  32. Erasing : nss_nis-3.0-8.el8.x86_64 3/3
  33. Running scriptlet: nss_nis-3.0-8.el8.x86_64 3/3
  34. Verifying : nss_nis-3.0-8.el8.x86_64 1/3
  35. Verifying : yp-tools-4.2.3-1.el8.x86_64 2/3
  36. Verifying : ypbind-3:2.5-2.el8.x86_64 3/3
  37. Installed products updated.
  38. Removed:
  39. nss_nis-3.0-8.el8.x86_64 yp-tools-4.2.3-1.el8.x86_64
  40. ypbind-3:2.5-2.el8.x86_64
  41. Complete!



总结:安装软件包的步骤:

①将设备(文件系统)与挂载点目录挂载(不一定用系统上的挂载点目录media( 永久连接的挂载点目录)   /dev/sr0 on /run/media/redhat/RHEL-8-5-0-BaseOS-x86_64 ,可以用临时连接的挂载点目录mnt        /mnt          
②安装软件包

第一种:rpm    软件管理工具(命令)

rpm    -ivh     软件包名               安装软件包   [i--安装   v--详细信息   h hash--缓存(可以看见软件包的安装进程)]     

注:要处理依赖关系,几个有依赖关系的文件一起安装或卸载

第二种:dnf/yum  (仓库管理)(与rmp相比可以解决繁琐的依赖关系)

首先通过yum  和  dnf  的配置文件 /etc/yum.repos.d/*.repo       (*.repo    软件获取得源置)   (* :任意长度的任意字符)该文件的初始化文件后缀必须是.repo   习惯会用 base.repo           建立仓库,linux8 有两条路径,所以要建立两个仓库源

然后可以先通过命令  vim   repolist  验证查看仓库(仓库源)是否建好

  1. repo id repo name
  2. AppStream AppStream
  3. BaseOS BaseOS

最后执行命令:

yum install [-y] 包名/软件名  安装指定的软件包,-y则在工作过程中需要使用者响应, 这个选个参数可以直接回答yes   (写软件名也可以直接匹配对应的软件包)

     (install(安装)---yum命令的参数)

个人感悟:rpm可以安装软件包也可以卸载软件(不可以安装软件 和不可以卸载软件包),不仅可以对软件包操作也可以对软件操作

                  dnf/yum只可以安装软件包和卸载软件包      (不可以安装软件和卸载软件)不能对软件进行操作   

                 无论是rpm 还是dnf/yum,安装软件包都要在对应的路径之下, 卸载也是一样,但是卸载软件不需要

           



习题
(1)通过yum/dnf安装软件httpd程序;

  1. [root@localhost ~]# mount /dev/sr0 /mnt
  2. mount: /mnt: WARNING: device write-protected, mounted read-only.
  3. [root@localhost ~]# vim /etc/yum.repos.d/base.repo
  4. [root@localhost Packages]# vim /etc/yum.repos.d/base.repo
  5. [BaseOS]
  6. name=BaseOS
  7. baseurl=file:///mnt/BaseOS
  8. gpgcheck=0
  9. [AppStream]
  10. name=AppStream
  11. baseurl=file:///mnt/AppStream
  12. gpgcheck=0
  13. ~
  14. ~
  15. ~
  16. ~
  17. ~
  18. ~
  19. ~
  20. ~
  21. ~
  22. ~
  23. ~
  24. ~
  25. ~
  26. ~
  27. ~
  28. ~
  29. ~
  30. ~
  31. ~
  32. ~
  33. ~
  34. ~
  35. ~
  36. <m.repos.d/base.repo" 8L, 127C 8,10 All
  37. [root@localhost Packages]# dnf repolist
  38. Updating Subscription Management repositories.
  39. Unable to read consumer identity
  40. This system is not registered with an entitlement server. You can use subscription-manager to register.
  41. repo id repo name
  42. AppStream AppStream
  43. BaseOS BaseOS
  44. 验证仓库是否建好
  45. [root@localhost Packages]# dnf install httpd -y
  46. Updating Subscription Management repositories.
  47. Unable to read consumer identity
  48. This system is not registered with an entitlement server. You can use subscription-manager to register.
  49. BaseOS 2.7 MB/s | 2.8 kB 00:00
  50. AppStream 3.1 MB/s | 3.2 kB 00:00
  51. Dependencies resolved.
  52. ===========================================================
  53. Package Arch Version Repo Size
  54. ===========================================================
  55. Installing:
  56. httpd x86_64 2.4.37-41.module+el8.5.0+11772+c8e0c271
  57. AppStream 1.4 M
  58. Installing dependencies:
  59. apr x86_64 1.6.3-12.el8 AppStream 130 k
  60. apr-util x86_64 1.6.1-6.el8 AppStream 105 k
  61. httpd-filesystem noarch 2.4.37-41.module+el8.5.0+11772+c8e0c271
  62. AppStream 39 k
  63. httpd-tools x86_64 2.4.37-41.module+el8.5.0+11772+c8e0c271
  64. AppStream 106 k
  65. mod_http2 x86_64 1.15.7-3.module+el8.4.0+8625+d397f3da 有八个包和他有依赖关系
  66. AppStream 154 k
  67. redhat-logos-httpd noarch 84.5-1.el8 BaseOS 29 k
  68. Installing weak dependencies:
  69. apr-util-bdb x86_64 1.6.1-6.el8 AppStream 25 k
  70. apr-util-openssl x86_64 1.6.1-6.el8 AppStream 27 k
  71. Enabling module streams:
  72. httpd 2.4
  73. Transaction Summary
  74. ===========================================================
  75. Install 9 Packages
  76. 要安装这个软件包一共需要安装九个软件包
  77. 用yum/dnf直接解决八个包的依赖关系
  78. Total size: 2.0 M
  79. Installed size: 5.4 M
  80. Downloading Packages:
  81. Running transaction check
  82. Transaction check succeeded.
  83. Running transaction test
  84. Transaction test succeeded.
  85. Running transaction
  86. Preparing : 1/1
  87. Installing : apr-1.6.3-12.el8.x86_64 1/9
  88. Running scriptlet: apr-1.6.3-12.el8.x86_64 1/9
  89. Installing : apr-util-bdb-1.6.1-6.el8.x86_64 2/9
  90. Installing : apr-util-openssl-1.6.1-6.el8.x8 3/9
  91. Installing : apr-util-1.6.1-6.el8.x86_64 4/9
  92. Running scriptlet: apr-util-1.6.1-6.el8.x86_64 4/9
  93. Installing : httpd-tools-2.4.37-41.module+el 5/9
  94. Running scriptlet: httpd-filesystem-2.4.37-41.modu 6/9
  95. Installing : httpd-filesystem-2.4.37-41.modu 6/9
  96. Installing : redhat-logos-httpd-84.5-1.el8.n 7/9
  97. Installing : mod_http2-1.15.7-3.module+el8.4 8/9
  98. Installing : httpd-2.4.37-41.module+el8.5.0+ 9/9
  99. Running scriptlet: httpd-2.4.37-41.module+el8.5.0+ 9/9
  100. Verifying : redhat-logos-httpd-84.5-1.el8.n 1/9
  101. Verifying : apr-1.6.3-12.el8.x86_64 2/9
  102. Verifying : apr-util-1.6.1-6.el8.x86_64 3/9
  103. Verifying : apr-util-bdb-1.6.1-6.el8.x86_64 4/9
  104. Verifying : apr-util-openssl-1.6.1-6.el8.x8 5/9
  105. Verifying : httpd-2.4.37-41.module+el8.5.0+ 6/9
  106. Verifying : httpd-filesystem-2.4.37-41.modu 7/9
  107. Verifying : httpd-tools-2.4.37-41.module+el 8/9
  108. Verifying : mod_http2-1.15.7-3.module+el8.4 9/9
  109. Installed products updated.
  110. Installed:
  111. apr-1.6.3-12.el8.x86_64
  112. apr-util-1.6.1-6.el8.x86_64
  113. apr-util-bdb-1.6.1-6.el8.x86_64
  114. apr-util-openssl-1.6.1-6.el8.x86_64
  115. httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64
  116. httpd-filesystem-2.4.37-41.module+el8.5.0+11772+c8e0c271.noarch
  117. httpd-tools-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64
  118. mod_http2-1.15.7-3.module+el8.4.0+8625+d397f3da.x86_64
  119. redhat-logos-httpd-84.5-1.el8.noarch
  120. Complete!


在/var/www/html创建一个文件为index.html,内容为helloworld;

  1. [root@localhost Packages]# echo helloword >/var/www/html/index.html
  2. [root@localhost Packages]# systemctl start httpd


执行systemctl start httpd命令后通过linux浏览器访问该文件内

容http://localhost

(2)卸载httpd软件包;


补:

软件和软件包

软件的定义:

软件是能够完成预定功能,达到预期性能的,可以执行的计算机指令;
软件是能够让程序处理适当信息的数据结构;
软件是描述程序操作和使用的文档;
软件是一种逻辑实体,具备知识性的产品集合,是对物理世界的一种抽象,同时又是一种人脑智力的成果

总结:软件 = 程序 + 数据 + 文档 + (服务)


软件包由一个基本配置和若干可选部件构成,既可以是源代码形式,也可以是目标码形式。用户手册和指南等文档是软件包的重要组成部分。此外,软件包的维护及技术支持也是非常必要的。
软件包 在系统管理中,软件包的管理是最重要的,是系统管理的基础的基础;只有我们学会软件包的管理才能谈得上其它的应用;本文以目录式的文档格式,列出新手弟兄所面对的软件包的安装、更新、查询相对的文档,以及几个常用的软件包管理工具,比如system-cofig-packages 、yum 、ppapt

软件包管理工具
1、system-config-packages
2、yum 在线更新软件包,也能管理本地已经安装的软件包工具

 

分类
对于Linux、BSD系统
在Linux、BSD系统中,软件包主要以两种形式出现
:二进制包以及源代码包。 主要的二进制包格式有:
rpm
deb
Autopackage

源代码包则主要适用于自由软件的安装,用户需要自己编译它们。


新手小白,

请多多指教~~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/225065
推荐阅读
相关标签
  

闽ICP备14008679号