4.Linux 应用程序的安装和管理

Linux : 应用程序的安装和管理

一、Linux应用程序组成

1. Linux命令 与应用程序的对比
特性 Linux命令 应用程序
存放路径 /bin, /sbin /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin
安装方式 随操作系统安装 额外独立安装
执行格式 `命令 + 选项 + 参数 格式由开发者定义
界面 仅字符界面 可能支持图形界面
2. 应用程序
组件类型 存放路径 权限/说明
普通可执行程序 /usr/bin/ 普通用户可执行
服务器/管理程序 /usr/sbin/ 仅管理员可执行
配置文件 /etc//etc/应用名/ 多配置时创建同名子目录
日志文件 /var/log/ 记录运行信息
参考文档 /usr/share/doc/ 说明文档、示例等
Man手册 /usr/share/man/ 执行文件及配置的帮助手册
3. 软件包封装类型
类型 扩展名 适用系统 特点
RPM包 .rpm RHEL, Fedora, SUSE等 依赖性强
DEB包 .deb Debian, Ubuntu等 Debian系专用
源代码包 .tar.gz, .tar.bz2 全平台支持 需编译安装

二、RPM包管理

1. RPM包命名格式
复制代码
coreutils-8.30-4.el7.x86_64.rpm
  • coreutils: 软件名
  • 8.30-4: 版本号
  • el7: 发行版号(RHEL7)
  • x86_64 : 处理器架构(noarch表示通用)
2. 查询命令
复制代码
# 查询已安装包
rpm -qa                          # 列出所有已安装RPM包
rpm -q vsftpd                    # 检查特定包是否安装
rpm -qi vsftpd                   # 查看包详细信息
rpm -ql vsftpd                   # 列出包安装的所有文件
rpm -qf /path/to/file            # 查看文件所属的包

# 查询未安装包
rpm -qpi /path/to/package.rpm    # 查看未安装包的详细信息
rpm -qpl /path/to/package.rpm    # 查看未安装包将释放的文件列表
3. 安装与卸载
复制代码
# 安装
rpm -ivh package.rpm            # 基础安装(显示进度)
rpm -ivh --nodeps package.rpm   # 忽略依赖强制安装

# 卸载
rpm -e vsftpd                   # 卸载指定包

# 更新
rpm -Uvh new_package.rpm        # 升级或安装
rpm -Fvh new_package.rpm        # 仅升级已安装的包

三、YUM/DNF仓库管理

1. 配置YUM仓库

创建配置文件 /etc/yum.repos.d/server.repo

复制代码
[base]                          # 仓库ID
name=Base Repository            # 仓库描述
baseurl=file:///mnt/            # 本地路径(支持http/ftp)
enabled=1                       # 启用仓库(1启用,0禁用)
gpgcheck=0                      # 关闭GPG验证
2. YUM常用命令
复制代码
yum install -y httpd            # 安装软件包(-y自动确认)
yum remove -y httpd             # 卸载软件包
yum update -y httpd             # 更新指定包
yum list                        # 列出所有可用/已安装包
yum groupinstall "Development Tools" # 安装软件包组
yum groupremove "Development Tools"  # 卸载软件包组
3. DNF命令
复制代码
dnf install -y httpd            # 安装
dnf remove -y httpd             # 卸载
dnf update -y httpd             # 更新

四、实践运用

1. rpm的使用

列出所有已安装RPM包

查看包是否安装

查看包的详细信息

列出包的所有文件

查看文件所属的包

查看未安装的包的的信息时,指定包的路径要明确

查看未安装的包的文件列表

安装

卸载

2. yum使用

首先要建立一个yum库

复制代码
[root@xieyuhui yum.repos.d]# vim server.repo

安装

卸载

复制代码
[root@xieyuhui /]# yum remove httpd -y

列出所有已安装包

安装软件包组

卸载软件包组

3. dnf的使用

dnf使用方法与yum相同,需要在网上寻找网络源(curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo)

复制代码
[root@xieyuhui yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
相关推荐
BAOYUCompany2 小时前
暴雨服务器更懂人工智能+
运维·服务器·人工智能
一只小bit2 小时前
Linux网络:阿里云轻量级应用服务器配置防火墙模板开放端口
linux·网络·阿里云
嘉琪0012 小时前
实现视频实时马赛克
linux·前端·javascript
帽儿山的枪手3 小时前
HVV期间,如何使用SSH隧道绕过内外网隔离限制?
linux·网络协议·安全
BachelorSC4 小时前
【网络工程师软考版】网络安全
网络·安全·web安全
邹诗钰-电子信息工程4 小时前
嵌入式基础知识复习(C语言)
linux·c语言·vim
瀚高PG实验室4 小时前
CentOS 8 安装HGDB V4.5 psql命令执行报错
linux·运维·centos·瀚高数据库
小醉你真好4 小时前
6、CentOS 9 安装 Docker
linux·docker·centos
蝶恋舞者4 小时前
怎样让阿里云服务器(centos)有界面
服务器·阿里云·centos
(Charon)5 小时前
【C语言网络编程】HTTP 客户端请求(基于 Socket 的完整实现)
网络·网络协议·http