菜鸟科技网

Linux命令行安装软件有哪些常用命令?

在Linux命令行环境中安装软件是系统管理员的必备技能,不同发行版采用的包管理工具不同,但核心逻辑一致,以下将详细讲解主流Linux发行版的软件安装方法,包括基础命令、依赖处理、源码编译及第三方仓库管理等内容。

Linux命令行安装软件有哪些常用命令?-图1
(图片来源网络,侵删)

基于Debian/Ubuntu系统的APT包管理

Debian及其衍生版(如Ubuntu)使用apt(Advanced Packaging Tool)作为包管理器,安装软件前需更新软件源列表:sudo apt update,安装单个软件包使用sudo apt install <软件名>,例如安装vim编辑器:sudo apt install vim,若需卸载软件,可执行sudo apt remove <软件名>,完全清除配置文件则用purge替代removeapt会自动处理依赖关系,但有时需手动解决冲突,此时可使用sudo apt -f install修复依赖问题。

软件源配置文件位于/etc/apt/sources.list,默认使用官方源,国内用户可替换为阿里云、清华大学等镜像源以加速下载,将deb http://archive.ubuntu.com/ubuntu/ focal main替换为deb https://mirrors.aliyun.com/ubuntu/ focal main,修改后需再次执行apt update使配置生效。

基于RedHat/CentOS系统的YUM/DNF包管理

RedHat系列(如CentOS、Fedora)早期使用yum(Yellowdog Updater Modified),新版Fedora及RHEL 8+则采用dnf(Dandified Yum),两者命令语法基本一致,均通过sudo执行权限操作,安装软件使用sudo yum install <软件名>sudo dnf install <软件名>,例如安装httpd(Apache服务器):sudo dnf install httpd,卸载软件时,yumremovednferase,效果相同。

软件源配置文件位于/etc/yum.repos.d/目录下的.repo文件,以CentOS为例,默认使用CentOS-Base.repo,若需添加第三方仓库(如EPEL),可安装epel-release包:sudo dnf install epel-release,对于需要编译安装的软件,需先安装开发工具集:sudo dnf groupinstall "Development Tools"

Linux命令行安装软件有哪些常用命令?-图2
(图片来源网络,侵删)

基于Arch Linux的Pacman包管理

Arch Linux采用pacman包管理器,以滚动更新和简洁著称,安装软件使用sudo pacman -S <软件名>,例如安装neovimsudo pacman -S neovimpacman支持同步操作,如sudo pacman -Syu可同时更新软件源和系统,卸载软件时,-R选项会保留依赖包,-Rs会自动清理不再需要的依赖,-Rns则同时删除配置文件。

若需安装AUR(Arch User Repository)中的软件,需借助trizenyay等助手工具,例如安装trizen后,可通过trizen -S <aur包名>安装AUR软件,AUR软件由社区维护,需注意安全性。

源码编译安装

部分软件未提供预编译包,需通过源码安装,典型步骤如下:

  1. 下载源码包:wget https://example.com/software.tar.gz
  2. 解压:tar -xvf software.tar.gz && cd software
  3. 配置:./configure --prefix=/usr/local--prefix指定安装路径)
  4. 编译:make -j$(nproc)-j参数使用多核加速)
  5. 安装:sudo make install

编译安装需依赖开发工具(如gccmake)及库文件(如libssl-dev),可通过包管理器安装,源码安装的优势是可定制功能,但需手动解决依赖问题。

Linux命令行安装软件有哪些常用命令?-图3
(图片来源网络,侵删)

Snap与Flatpak跨发行版包管理

Snap(Canonical开发)和Flatpak(社区主导)是跨发行版的打包技术,解决依赖冲突问题。

  • Snap:安装sudo snap install <软件名>,例如sudo snap install spotify
  • Flatpak:需先安装flatpak并添加远程仓库:flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo,再安装flatpak install flathub <软件名>

两者均采用沙盒机制,安全性高,但可能存在资源占用较大的问题。

软件安装常见问题处理

  1. 依赖冲突:使用apt时可通过sudo aptitude install <软件名>解决复杂依赖;dnf支持sudo dnf autoremove清理无用依赖。
  2. 软件源失效:检查sources.list.repo文件中的URL是否正确,或更换镜像源。
  3. 权限问题:确保使用sudo执行安装命令,或通过chown调整文件所有权。

以下为不同包管理器的核心命令对比:

功能 APT (Debian/Ubuntu) YUM/DNF (RedHat/CentOS) Pacman (Arch) Snap Flatpak
安装软件 apt install yum/dnf install pacman -S snap install flatpak install
卸载软件 apt remove yum/dnf remove pacman -R snap remove flatpak uninstall
更新系统 apt upgrade yum/dnf update pacman -Syu snap refresh flatpak update
搜索软件 apt search yum/dnf search pacman -Ss snap find flatpak search
清理缓存 apt clean yum clean all pacman -Sc snap garbage collect flatpak uninstall --unused

相关问答FAQs

Q1: 如何查看已安装软件的版本信息?
A: 不同包管理器命令不同:

  • APT: apt list --installed | grep <软件名>
  • YUM/DNF: rpm -qa | grep <软件名>dnf list installed <软件名>
  • Pacman: pacman -Q <软件名>
  • Snap: snap info <软件名>
  • Flatpak: flatpak list --app | grep <软件名>

Q2: 安装软件时提示“依赖未满足”,如何解决?
A: 可尝试以下方法:

  1. 更新软件源:sudo apt update(APT)或 sudo dnf update(DNF)。
  2. 安装依赖工具:APT下使用sudo apt install -f修复依赖;DNF下使用sudo dnf repoquery -requires <软件名>查看依赖并手动安装。
  3. 对于源码编译,使用sudo apt-get build-dep <软件名>(APT)或sudo dnf builddep <软件名>(DNF)安装编译依赖。
  4. 若依赖冲突严重,可考虑使用虚拟机或容器环境隔离安装。
分享:
扫描分享到社交APP
上一篇
下一篇