RPM 和Yum软件仓库
Redhat Linux采用RPM(Redhat Package Manager)对软件进行管理。常用的 RPM 软件包命令如下:
RPM命令 | 作用 |
---|---|
rpm -ivh filename.rpm | 安装软件的命令格式 |
rpm -Uvh filename.rpm | 升级软件的命令格式 |
rpm -e filename.rpm | 卸载软件的命令格式 |
rpm -qpi filename.rpm | 查询软件描述信息的命令格式 |
rpm -qpl filename.rpm | 列出软件文件信息的命令格式 |
rpm -qf filename | 查询文件属于哪个RPM 的命令格式 |
RPM常用参数释义:
RPM命令参数 | 对应参数词汇 | 参数释义 |
---|---|---|
-i | --install | install package(s) |
-v | --verbose | provide more detailed output |
-h | --hash | print hash marks as package installs (good with -v) |
-e | --erase | erase (uninstall) package |
-U | --upgrade=<packagefile> | upgrade package(s) |
-a | --all | query/verify all packages |
-p | --package | query/verify a package file |
-l | --list | list files in package |
-d | --docfiles | list all documentation files |
-f | --file | query/verify package(s) owning file |
Yum 软件仓库可以根据用户的要求分析出所需软件包及其相关的依赖关系,然后自动从服务器下载软件包并安装到系统。常用Yum命令如下:
Yum命令 | 作用 |
---|---|
yum repolist all | 列出所有仓库 |
yum list all | 列出仓库中所有软件包 |
yum info 软件包名称 | 查看软件包信息 |
yum install 软件包名称 | 安装软件包 |
yum reinstall 软件包名称 | 重新安装软件包 |
yum update 软件包名称 | 升级软件包 |
yum remove 软件包名称 | 移除软件包 |
yum clean all | 清除所有仓库缓存 |
yum check-update | 检查可更新的软件包 |
yum grouplist | 查看系统中已经安装的软件包组 |
yum groupinstall 软件包组 | 安装指定的软件包组 |
yum groupremove 软件包组 | 移除指定的软件包组 |
yum groupinfo 软件包组 | 查询指定的软件包组信息 |
RPM是为了简化安装的复杂度,而 Yum软件仓库是为了解决软件包之间的依赖关系。
systemd 初始化进程
Linux 操作系统的开机过程是这样的,即从 BIOS 开始,然后进入 Boot Loader,再加载系统内核,然后内核进行初始化,最后启动初始化进程。初始化进程作为 Linux 系统的第一个进程,它需要完成 Linux 系统中相关的初始化工作,为用户提供合适的工作环境。
RHEL 7采用全新的systemd 初始化进程服务而不再使用System V init。它采用了并发启动机制,使得开机速度提升不少;并且用目标(target)代替了 System V init 中运行级别的概念。下面是systemd 与 System V init 的区别以及作用
System V init运行级别 | systemd目标名称 | 作用 |
---|---|---|
0 | runlevel0.target, poweroff.target | 关机 |
1 | runlevel1.target, rescue.target | 单用户模式 |
2 | runlevel2.target, multi-user.target | 等同于级别 3 |
3 | runlevel3.target, multi-user.target | 多用户的文本界面 |
4 | runlevel4.target, multi-user.target | 等同于级别 3 |
5 | runlevel5.target, graphical.target | 多用户的图形界面 |
6 | runlevel6.target, reboot.target | 重启 |
emergency | emergency.target | 紧急 Shell |
下面是systemctl的常用命令,后面会学到,先在这里记录一下:
systemctl命令 | 作用 |
---|---|
systemctl start 服务名.service | 启动服务 |
systemctl restart 服务名.service | 重启服务 |
systemctl stop 服务名.service | 停止服务 |
systemctl reload 服务名.service | 重新加载配置文件(不终止服务) |
systemctl status 服务名.service | 查看服务状态 |
systemctl enable 服务名.service | 开机自动启动 |
systemctl disable 服务名.service | 开机不自动启动 |
systemctl is-enabled 服务名.service | 查看特定服务是否为开机自动启动 |
systemctl list-unit-files --type=service | 查看各个级别下服务的启动与禁用情况 |
其中服务名后的.service 可以省略。