CentOS7中实用的命令总结

一:软件安装配置方面

这里总结一下对个人很实用的功能

1.查询rpm包的依赖哪些文件:rpm -qpR xx.rpm,然后rpm会分析此包的文件依赖性

2.查询系统中安装了哪些rpm包:rpm -qa,然后通过管道符和grep定制化输出。

3.安装rpm包:rpm -ivh xx.rpm;这个前提是本地有这个包,而yum是可以从仓库里获取(可以配置多个仓库源,否则默认的仓库有些rpm包找不到)

4.查询从yum仓库里安装的包有哪些:yum list intalled,其实可以用rpm -qa代替;

5.查询rpm包的安装路径,先通过rpm -qa|grep keyword找到该包的全称,然后rpm -ql 全称即可搜索到。

6.查询缺少的依赖项的所属包:repoquery --nvr --whatprovides libXss.so.1;这个命令就是搜索libXss.so.1这个被其它包/程序依赖的文件所属于哪个包,如VSCode就依赖此文件,通过这个命令搜索出它来自libXScrnSaver

7.查询yum仓库有哪些包:yum search keyword,通过grep来定制化输出;若没有联网则查本地缓存。

二:系统服务相关

1.查询所有启动的服务:systemctl list-units --type=service;注意这个是查询注册为服务的程序而不包括普通后台程序;这里顺便理一下 --type=service就类似-C 目录,后者是短格式且用空格分隔value,而前者是长格式用=号分隔value

2.查询老版本的服务:chkconfig --list(在init.d里配置的)

三:防火墙相关

这里分为--permanent和--zone=xxx两个参数,permanent表示永久的关机重启后仍有效,而--zone=public表示这条配置只对public的网络生效(连接网络时可以为网络配置firewall zone为public/home/work之类的,zone可以理解为外部网络的分组)

1.firewall-cmd --list-ports查看所有开放的端口(还可以通过firewall-cmd --query-port=80/tcp查看特定协议的端口是否开放)

2.firewall-cmd --add-service=mysql # 开放mysql端口

3.firewall-cmd --list-services # 查看开放的服务(还可以firewall-cmd --query-service=mysql查看特定service是否开启允许外部访问

4.firewall-cmd --remove-service=http # 阻止http端口

5.firewall-cmd --add-port=3306/tcp # 开放通过tcp访问3306

6.firewall-cmd --remove-port=80tcp # 阻止通过tcp访问3306

7.firewall-cmd --add-port=233/udp # 开放通过udp访问233

8.firewall-cmd --reload # 每次修改firewall配置后如果要立刻生效需要用此命令

9.firewall-cmd --query-masquerade # 检查是否允许伪装IP,端口转发会用到

10.firewall-cmd --add-masquerade # 允许伪装IP

11.firewall-cmd --remove-masquerade # 禁止防火墙伪装IP

12.firewall-cmd --add-forward-port port=80:proto=tcp:toport=8080 # 将协议为tcp端口为80的流量转发到8080

13.firewall-cmd --remove-forward-port port=80:proto=tcp:toport=8080 # 取消将80/tcp的流量转发到8080

14.firewall-cmd --query-forward-port port=80:proto=tcp:toport=8080 # 查询tcp协议80端口到8080端口的转发时候开启,是则输出yes,这里proto是协议的意思,toport则是to port

15.firewall-cmd --list-forward-ports # 查询所有forward条目

16.firewall-cmd --add-forward-port port=80:proto=tcp:toport=8080:toaddr=192.168.0.14 # 转发本机80/tcp的流量到 192.168.0.14:8080/tcp 里;

17.firewall-cmd --add-forward-port port=8000:proto=tcp:toaddr=192.168.0.14 # 将本机8000/tcp的流量转发到 192.168.0.14:8000/tcp 里;

注:如果第一次忘了加--permanent是可以重复的,如第一次:firewall-cmd --add-port=80/tcp;发现少了--permanent可以再次执行firewall-cmd --permanent --add-port=80/tcp(对于移除和查询也一样)

四:编译安装

这个有些特殊,因为存在很多种编译安装的方式,如cmake/make等等;要看tar.gz的具体内容是什么,有些还可以直接解压使用;

对于只需make的:

先cd到解压目录;

然后:./configure --prefix=/usr/local/soft(指定安装目录)

接着:make,然后make install

安装完:用make clean清除缓存;

卸载的话可以进入安装好的app目录,执行./make uninstall或手动删除目录

原文地址:https://www.cnblogs.com/silentdoer/p/8674641.html