0%

Debian和redhat体系的软件安装

Drbian和redhat体系的软件安装

1. Debian体系的软件安装

在前文中,我们了解到linux系统的发行版主要分为debian和redhat两个体系。

两个体系最直观的不同是软件安装命令的不同。我们来学习debian体系的软件安装。

前文我们使用的Kali系统,就以本节所介绍的命令来管理软件的安装与卸载。

1.1 dpkg 命令

dpkg 是为”Debian”操作系统专门开发的套件管理系统,用于软件的安装,更新和移除。能被dpkg命令安装的软件包一般以.deb为文件后缀。

dpkg 是为”Debian”操作系统专门开发的套件管理系统,用于软件的安装,更新和移除。能被dpkg命令安装的软件包一般以.deb为文件后缀。

1
2
3
4
5
6
7
8
`dpkg -i     # 安装软件包
dpkg -r # 移除软件(保留配置)
dpkg -P # 移除软件(不保留配置)
dpkg -c # 列出deb包的内容
dpkg -l # 配合|grep,查找主机包
dpkg -s # 查找包的详细信息
dpkg -L # 查看已安装的软件包,都存在系统哪有文件
dpkg -S # 显示指定包的状态信息`

1.2.1. apt 命令


apt是一个在Debian中的Shell前端软件包管理器。

apt命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

apt命令执行需要超级管理员权限(root)

1.2.2. 源的配置

apt命令更新和安装软件包是从软件安装源中请求的。

kali系统的源文件在/etc/apt/sources.list

常见kali源:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
官方源
deb http://http.kali.org/kali kali-rolling main non-free contrib
deb-src http://http.kali.org/kali kali-rolling main non-free contrib
中科大源
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
阿里云源
deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
清华大学源
deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
浙大源
deb http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
deb-src http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
东软大学源
deb http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib
deb-src http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib
新加坡kali源
deb http://mirror.nus.edu.sg/kali/kali/ kali main non-free contrib
deb-src http://mirror.nus.edu.sg/kali/kali/ kali main non-free contrib
163 Kali源
deb http://mirrors.163.com/debian wheezy main non-free contrib
deb-src http://mirrors.163.com/debian wheezy main non-free contrib

可以编辑/etc/apt/sources.list文件,将源切换成需要的源。

修改之后,需要通过apt update命令来更新源。

1.3. apt 命令

1
2
3
4
5
6
7
8
9
10
apt-get install      #安装软件包                
apt-get remove #仅卸载软件,但是并不卸载配置文件
apt-get purge #卸载指令,同时卸载相应的配置文件
apt-get update #将所有包的来源更新(更新源)
apt-get upgrade #将系统中旧版本的包升级成最新的
apt-cache search #用关键字搜索包
apt-cache show #显示特定包的基本信息
apt-cache depends #列出包的依赖
apt-get clean #清理本地包占用的磁盘空间(/var/cache/apt/archives)
apt-get autoremove #卸载软件的时候同时卸载那些当初作为依赖但是现在并不需要的包

2. redhat体系的软件安装

在前文中,我们了解到linux系统的发行版主要分为debian和redhat两个体系。两个体系最直观的不同是软件安装命令的不同。

这一节,我们要来学习rehad体系的软件安装。前文我们使用的Centos实验环境,就以本节所介绍的命令来管理软件的安装与卸载。

1. rpm 命令

rpm命令用于管理软件。rpm原本是 Red Hat Linux 发行版专门用来管理 Linux 各项套件的程序,由于它遵循 GPL 规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM 套件管理方式的出现,让 Linux 易于安装,升级,间接提升了 Linux 的适用度。能被rpm命令安装的软件包一般以.rpm为文件后缀。

2.1 常见命令

1
2
3
4
5
6
7
8
rpm -ivh [package_name]         #安装软件包
rpm -evh [package_name] #卸载软件
rpm -qlp *.rpm #列出rpm包的内容
rpm -qa |grep [字符串] #在已安装的所有软件中查询包含某字符串的软件版本
rpm -ql [软件名] #列出该软件所有文件与目录所在的完整文件名
rpm -qc [软件名] #列出软件的所有设置文件
rpm -qR [软件名] #查询某软件依赖的其他软件
rpm -qf [文件名] #查询文件属于哪个软件包

2.2. yum 命令


yum命令是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。

基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令。

2.3 yum 源配置

同apt命令一样,yum依然从源获取软件。在centos中yum源文件存储在/etc/yum.repos.d目录中。


repo文件的示例:

1
2
3
4
5
6
7
[baseos]
name=Rocky Linux $releasever - BaseOS
mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=BaseOS-$releasever
#baseurl=http://dl.rockylinux.org/$contentdir/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial

epel源是redhat系比较常用的源。

EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux.

安装epel源只需要安装一个叫”epel-release”的软件包,这个软件包会自动配置yum的软件仓库。

命令为:dnf install -y epel-release

2.2 yum 命令

1
2
3
4
5
6
7
8
9
10
11
yum makecache                         #更新源(安装新源后执行)
yum clean all #清除缓存目录(/var/cache/yum)下的软件包及旧的headers
yum list |grep #显示所有已经安装和可以安装的程序包
yum info [package-name] #显示安装包信息
yum -y install [package-name] #安装软件,默认选yes
yum remove [package-name] #卸载
yum deplist rpm #查看程序rpm依赖情况
yum update #更新全部软件包
yum group list #列出组
yum group install "Security Tools" #安装‘Security Tools’软件组
yum search #检索安装包

2.3 dnf 命令

DNF是新一代的rpm软件包管理器。它正在逐步取代yum命令。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
dnf repolist                                           #该命令用于显示系统中可用的 DNF 软件库
dnf repolist all #该命令用于显示系统中可用和不可用的所有的 DNF 软件库
dnf list #用户系统上的所有来自软件库的可用软件包和所有已经安装在系统上的软件包
dnf list installed #该命令用于列出所有安装了的 RPM 包
dnf list available #用于列出来自所有可用软件库的可供安装的软件包
dnf search [pakage] #用该命令来搜索软件包
dnf provides /bin/bash #查找某一文件的提供者
dnf info nano #查看软件包详情
dnf install [pakage] #安装软件包
dnf update systemd #该命令用于升级指定软件包
dnf check-update #该命令用于检查系统中所有软件包的更新
dnf update #该命令用于升级系统中所有有可用升级的软件包
dnf remove [pakage] #删除系统中指定的软件包
dnf autoremove #删除无用孤立的软件包
dnf clean all #删除缓存的无用软件包
dnf history #查看您系统上 DNF 命令的执行历史
dnf grouplist #该命令用于列出所有的软件包组
dnf groupinstall ‘Educational Software’ #该命令用于安装一个软件包组
dnf groupupdate ‘Educational Software’ #升级一个软件包组中的软件包
dnf groupremove ‘Educational Software’ #该命令用于删除一个软件包组
dnf reinstall [pakage] #该命令用于重新安装特定软件包

3. Debian 与 redhat 命令的异同



</tr>


</tr>


</tr>


功能 debian redhat
单机 dpkg rmp
安装 dpkg -i rpm -ivh [package_name]
卸载 dpkg -r (保留配置) rpm -evh [package_name]
dpkg -P (不保留配置)
查看对应包文件 dpkg -s rpm -qf [文件名]
显示指定包的状态信息 dekp -L rpm -ql [软件名]
     
网络同步 apt-get dnf yum
更新源 apt-get update dnf list yum makecache
安装软件包 apt-get install dnf install [pakage] yum -y install [package-name]
卸载 apt-get remove
仅卸载软件,但是并不卸载配置文件
dnf remove [pakage]
#删除系统中指定的软件包
yum remove [package-name]
#删除无用孤立的软件包
apt-get purge
卸载指令,同时卸载相应的配置文件
dnf autoremove
#删除缓存的无用软件包
dnf clean all
配置文件 dnf info nano yum info [package-name]