CentOS7服务器软件组成部分以及目录结构

前言:

服务器软件下载的管理真的我是很迷,搞了好久才算知道点基础。
通过rpm或者yum下载的软件包安装后,分散在系统的各个位置。


/usr/local/bin目录是给用户放置自己的可执行程序的地方,
很多应用都安装在/usr/local

/usr/bin:几乎所有的系统可执行文件都会安装在这里

/usr/local/bin:则是可以存放一些系统用户自己特定的可执行文件,不用担心会被系统升级之类的行为覆盖,破坏,这个目录不是必须的

软件包的组成部分

二进制程序:

 /bin, /sbin, /usr/bin, /usr/sbin,   
 /usr/local/bin, /usr/local/sbin 等目录中。

库文件:

 /lib, /usr/lib, /usr/local/lib 等目录中。

配置文件:

/etc是配置文件的目录   

其他:

/var是储存各种变化的文件,比如log等等  
/var/lib : 存放系统正常运行时要改变的文件。 

举例:自定义存放位置

tomcat存放在/usr/local中
jdk存放在 自定义/usr/java/下

如mysql :

/etc/my.cnf                 //配置信息
/var/lib/mysql/             //存放数据

./是当前目录


查看软件包信息:

查看系统中安装了哪些包

rpm -qa

查看软件包的版本等信息

rpm -qi mysql-community-libs

查看软件包全名

rpm -q mysql-community-libs

查看一个包安装了哪些文件及位置:完全匹配

rpm -ql mysql-community-libs-8.0.12-1.el7.x86_64

列出包含mysql字段的软件的信息:不完全匹配

 rpm -qal |grep mysql 

查看一个文件是由哪个包安装的

rpm -qf 文件名 

查找可执行文件:which
如果只是想知道可执行程序放到那里去了,也可以用which

which mysql  
但是which mariadb是没有用的 
which mysql就是 mariadb的可执行文件

* 查找指定目录下包含关键字的文件地址:find*

 find / -name "*mysql*"

库中搜索包含关键字的文件地址:locate
locate命令不是实时查找,所以查找的结果不精确,但查找速度很快。因为它查找的不是目录,而是一个数据库 Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

updatedb
查找所有包含mysql的文件
locate mysql

注意:
如果卸载软件包,有时候配置文件不会删除 需要自己手动去删除
如:mysql需要手动删除配置文件:

ls /etc/my.cnf          //查看是否存在my.cnf
ll /var/lib/mysql/     //查看是否存在mysql  
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql/

根据查询结果 强制卸载指定软件包:

rpm -e --nodeps mariadb-libs-5.5.41-2.el7_0.x86_64

卸载mysql配置文件

[root@node1 ~]# rm -rf /etc/my.cnf
[root@node1 ~]# rm -rf /var/lib/mysql/

参考:
http://www.bubuko.com/infodetail-1874982.html
Linux软件安装中RPM与YUM 区别和联系

关于Linux各个文件夹的作用可以看这篇:
目录结构

猜你喜欢

转载自blog.csdn.net/qq_38409944/article/details/81709144