Linux系统中的软件管理:工具、仓库与安装方式

Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 1352 kB Provides: httpd, httpd-cgi, nginx-abi-1.24.0-1 Depends: libc6 (>= 2.34), libcrypt1 (>= 1:4.1.0), libpcre2-8-0 (>= 10.22), libssl3t64 (>= 3.0.0), zlib1g (>= 1:1.1.4), iproute2, nginx-common (= 1.24.0-2ubuntu7.3) Breaks: nginx-core (<< 1.22.1-6), nginx-extras (<< 1.22.1-6), nginx-light (<< 1.22.1-6) Replaces: nginx-core (<< 1.22.1-6), nginx-extras (<< 1.22.1-6), nginx-light (<< 1.22.1-6) Homepage: https://nginx.org Download-Size: 520 kB APT-Sources: http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages Description: small, powerful, scalable web/proxy server Nginx (“engine X”) is a high-performance web and reverse proxy server created by Igor Sysoev. It can be used both as a standalone web server and as a proxy to reduce the load on back-end HTTP or mail servers.

### apt之安装软件
使用`apt install`可以安装软件,有`-y`选项,作用是自动回答所有询问为 “是(yes)”,避免在执行操作过程中出现交互式确认提示。
用法示例:
```csharp
# 安装nginx
apt install -y nginx
# 批量安装
apt install -y nginx git jdk

清理缓存并重新安装 有时,损坏的软件包可能是由于缓存文件损坏导致的。你可以清理 apt 的缓存,然后重新安装有问题的软件包。

# 清理缓存
apt clean
# 重新安装
apt install --reinstall [package_name]

apt之更新软件

更新软件包列表,确保获取到最新的软件包信息。这有助于解决因软件包信息过时导致的问题。

# 更新所有软件包列表
apt update -y

升级软件包

# 升级所有的已安装的软件包
apt upgrade -y
# 升级指定的软件包
apt upgrade [pakage_name]
# 系统全面升级,不仅会更新已安装的软件包,还会处理因依赖关系变化而需要升级的软件包。
apt full-upgrade

apt之卸载软件

卸载软件包:卸载软件包但会保留配置文件。

apt remove package_name

彻底卸载软件包:既卸载软件包,也会删除其配置文件。

apt purge package_name

apt之清理软件

清理缓存:删除 /var/cache/apt/archives 目录下所有已下载的软件包文件,以释放磁盘空间。

apt clean

自动清理:仅删除那些无法再被下载的软件包文件。

apt autoclean

自动移除:移除那些因其他软件包的卸载而不再需要的依赖软件包。

sudo apt autoremove

dpkg

dpkg 是 Debian 及其衍生系统(如 Ubuntu)使用的底层软件包管理工具,主要用于管理 .deb 格式的软件包

dpkg之安装软件包

使用 -i 选项可以安装指定的 .deb软件包。

# 需要将 package.deb 替换为实际的软件包文件名。不过,dpkg 安装时不会自动处理软件包的依赖关系,如果软件包有未满足的依赖,安装可能会失败。
dpkg -i package.deb

dpkg之卸载软件包

移除软件包:使用 -r 选项可以移除指定的软件包,但会保留其配置文件。

dpkg -r package_name

使用 -P选项可以彻底移除软件包及其配置文件。

dpkg -P package_name

dpkg查询软件包

列出已安装的软件包 使用 -l 选项可以列出系统中所有已安装的软件包,也可以通过指定软件包名称或通配符来列出特定的软件包。

# 列出所有的已安装的软件包
dpkg -l
# 查询指定的软件包
dpkg -l nginx

查看软件包详细信息:使用 -s 选项可以查看指定软件包的详细信息,包括版本、状态、依赖关系等。

dpkg -s package_name

查找文件所属的软件包:使用 -S 选项可以查找指定文件是由哪个软件包安装的。

dpkg -S /path/to/file

yum和rpm后续有时间再写入