各系统包管理工具及常用系统命令

常见包管理工具总结

macOS 之 Homebrew

命令 含义
brew search <package-name> 搜索软件
brew install <package-name> 安装软件
brew uninstall <package-name> 卸载软件
brew list 列出已安装软件
brew info <package-name> 显示软件信息,包括版本信息、依赖信息、启动命令等
brew outdated 检查可更新软件
brew update 更新待更新的软件
brew cleanup 清理软件安装包
brew services list 查看brew安装软件的开机启动项
brew services cleanup 清除无效的开机启动项
brew switch <package-name> <version> 切换同一软件的不同版本
brew doctor 查看是否有软件配置异常

macOS 之 Homebrew Cask

Homebrew Cask 是一个类似于 App Store 的终端软件安装工具,命令与 brew 相似,其常用命令如下:

命令 含义
brew cask search <app-name> 搜索软件
brew cask install <app1> <app2> ... 安装软件
brew cask uninstall <app1> <app2> ... 卸载软件
brew cask info <app-name> 查看软件信息
brwe cask list 列出已安装软件

CentOS 之 yum

命令 含义
yum search <package-name> 搜索软件包
yum install <package-name> 安装软件
yum remove <package-name> 卸载软件
yum update <package-name> 更新软件
yum check-update 检查可更新软件
yum provides <command> 查看支持某个命令的包

Ubuntu/Debian 之 apt

命令 含义
apt search <package-name> 搜索软件包
apt install <package-name> 安装软件
apt remove <package-name> 卸载软件
apt info <package-name> 查看软件信息
apt update 更新软件
apt list --upgradeable 检查可更新软件
apt list --installed 列出已安装软件
apt upgrade 升级软件
apt autoclean 删除所有软件缓存
apt autoremove 删除系统不再使用的孤立软件

CentOS 之 systemctl

命令 含义
systemctl list-unit-files 列出所有可用服务
systemctl list-units 列出所有运行中的服务
systemctl --failed 列出所有失败的服务
systemctl list-unit-files &#124; grep enable 查看自启动的软件
systemctl is-enabled <service-name> 查看某个服务是否开机启动
systemctl status <service-name> 查看服务状态
systemctl start <service-name> 启动某个服务
systemctl restart <service-name> 重启某个服务
systemctl stop <service-name> 停止某个服务
systemctl daemon-reload 重载服务配置文件
systemctl reload <service-name> 重载服务
systemctl enable <service-name> 设置开机自启动
systemctl disable <service-name> 关闭开机自启动
systemctl kill <service-name> 杀死服务

Systemd 设置示例

1
2
3
4
5
6
7
8
9
10
11
[Unit]
Description=Laravel queue worker

[Service]
User=www-data
Group=www-data
Restart=on-failure
ExecStart=/usr/bin/php/path/to/laravel/artisan queue:work --sleep=3 --tries=3

[Install]
WantedBy=multi-user.target

Ubuntu/Debian 之 supervisorctl

命令 含义
supervisorctl start <service-name> 启动服务
supervisorctl stop <service-name> 停止服务
supervisorctl restart <service-name> 重启服务
supervisorctl status <service-name> 查看服务状态
supervisorctl update 更新服务

Supervisord 设置示例

1
2
3
4
5
6
7
8
9
[program:laravel-worker]
process_ name=%(program_name)s_%(processnum)02d
command=/usr/bin/php/path/to/laravel/artisan --sleep=3 --tries=3
autostart=true
autorestart=true
user=www
numprocs=8
redirect_ stderr=true
stdout_logfile=/var/www/html/storage/logs/worker.log
因为热爱,所以执着。