前言:
服务器软件下载的管理真的我是很迷,搞了好久才算知道点基础。
通过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各个文件夹的作用可以看这篇:
目录结构