Linux 应用程序的安装和管理
在linux
中,有三种安装软件的方式,分别是rpm
包安装、yum
源安装、源代码编译安装。
常见应用程序目录结构
类型 | 路径 |
---|---|
普通用户可执行文件 | /usr/bin |
管理员可执行文件 | /usr/sbin |
配置文件 | /etc |
日志文件 | /var/log |
应用程序参考文档 | /usr/share/doc |
执行文件、配置文件的man 手册 |
/usr/share/man |
常见软件包封装类型
-
rpm
包
扩展名.rpm
,只能在使用rpm
机制的linux
中安装,如rhel
、centos
。
-
deb
包
扩展名.deb
,只能在使用dpkg
机制的linux
中安装,如debian
、ubuntu
。
- 源代码软件包
包含原始代码的.tar.gz
、.tar.bz2
的压缩包tarball
,安装需要相应的编译工具,c
、c++
。
- 附带安装程序的软件包
软件包中提供install.sh
、setup
等,运行以根据向导程序的提示完成安装操作。
rpm包
查询 rpm 包信息
已安装
- rpm -q[子选项] [准确的软件名]
-qa
:显示所有以rpm
方式安装的软件-qi
:查看指定软件包的名称、版本等详细信息(--info)-ql
:显示指定软件包安装的所有目录、文件列表(--list)-qf
:查看指定的文件或目录是由哪个软件包所安装的(--file)
[root@localhost ~]# rpm -qa linux-firmware-20170606-56.gitc990aae.el7.noarch centos-release-7-4.1708.el7.centos.x86_64 kbd-1.15.5-13.el7.x86_64 setup-2.8.71-7.el7.noarch …… //省略 [root@localhost ~]# rpm -qa | wc -l 343
[root@localhost ~]# rpm -q vim-common vim-common-7.4.160-6.el7_6.x86_64 [root@localhost ~]# rpm -qa | grep vim vim-filesystem-7.4.160-6.el7_6.x86_64 vim-enhanced-7.4.160-6.el7_6.x86_64 vim-common-7.4.160-6.el7_6.x86_64 vim-minimal-7.4.160-2.el7.x86_64
[root@localhost ~]# rpm -qi vim-common name : vim-common epoch : 2 version : 7.4.160 release : 6.el7_6 architecture: x86_64 install date: tue 20 aug 2019 03:18:40 pm cst group : applications/editors size : 22146036 license : vim signature : rsa/sha256, mon 01 jul 2019 09:34:28 pm cst, key id 24c6a8a7f4a80eb5 source rpm : vim-7.4.160-6.el7_6.src.rpm build date : fri 28 jun 2019 09:59:48 pm cst build host : x86-02.bsys.centos.org relocations : (not relocatable) packager : centos buildsystem <http://bugs.centos.org> vendor : centos url : http://www.vim.org/ summary : the common files needed by any version of the vim editor description : vim (visual editor improved) is an updated and improved version of the vi editor. vi was the first real screen-based editor for unix, and is still very popular. vim improves on vi by adding new features: multiple windows, multi-level undo, block highlighting and more. the vim-common package contains files which every vim binary will need in order to run. if you are installing vim-enhanced or vim-x11, you'll also need to install the vim-common package.
[root@localhost ~]# rpm -ql vim-common /etc/vimrc /usr/bin/xxd /usr/share/doc/vim-common-7.4.160 /usr/share/doc/vim-common-7.4.160/changelog.rpm /usr/share/doc/vim-common-7.4.160/license …… //省略
[root@localhost ~]# which vim /usr/bin/vim [root@localhost ~]# rpm -qf /usr/bin/vim vim-enhanced-7.4.160-6.el7_6.x86_64
未安装
- rpm -qp[子选项] 软件路径
-qpi
:查看指定软件包的名称、版本等详细信息-qpl
:显示指定软件包准备安装的所有目标目录、文件列表
[root@localhost ~]# cd /mnt/cdrom/packages/ [root@localhost packages]# rpm -qpi vim-common-7.4.160-2.el7.x86_64.rpm name : vim-common epoch : 2 version : 7.4.160 release : 2.el7 architecture: x86_64 install date: (not installed) group : applications/editors size : 22146173 license : vim signature : rsa/sha256, fri 11 aug 2017 04:15:28 am cst, key id 24c6a8a7f4a80eb5 source rpm : vim-7.4.160-2.el7.src.rpm build date : wed 02 aug 2017 08:46:12 am cst build host : c1bm.rdu2.centos.org relocations : (not relocatable) packager : centos buildsystem <http://bugs.centos.org> vendor : centos url : http://www.vim.org/ summary : the common files needed by any version of the vim editor description : vim (visual editor improved) is an updated and improved version of the vi editor. vi was the first real screen-based editor for unix, and is still very popular. vim improves on vi by adding new features: multiple windows, multi-level undo, block highlighting and more. the vim-common package contains files which every vim binary will need in order to run. if you are installing vim-enhanced or vim-x11, you'll also need to install the vim-common package.
[root@localhost packages]# rpm -qpl vim-common-7.4.160-2.el7.x86_64.rpm /etc/vimrc /usr/bin/xxd /usr/share/doc/vim-common-7.4.160 /usr/share/doc/vim-common-7.4.160/changelog.rpm /usr/share/doc/vim-common-7.4.160/license …… //省略
安装、升级、卸载
-i
:安装-e
:卸载-u
:检查升级,未安装则安装-f
:检查升级,未安装则不安装--force
:强制安装--nodeps
:安装、卸载、升级时,不检查与其他软件包的依赖问题。-h
:安装、升级时,以#
显示进度。-v
:显示安装过程详细信息。
-
rpm -ivh
:安装
[root@localhost packages]# rpm -ivh wget-1.14-15.el7.x86_64.rpm preparing... ################################# [100%] updating / installing... 1:wget-1.14-15.el7 ################################# [100%]
-
rpm -evh
:卸载
[root@localhost packages]# rpm -evh wget preparing... ################################# [100%] cleaning up / removing... 1:wget-1.14-18.el7_6.1 ################################# [100%]
-
rpm --rebuilddb
或rpm --initdb
:当rpm
数据库损坏时,重建。
[root@localhost packages]# rpm --rebuilddb [root@localhost packages]# rpm --initdb
yum源
- 安装、卸载
yum install 软件名 yum remove 软件名 / yum erase 软件名
- 搭建本地
yum
源
1.挂载光盘
[root@localhost ~]# mkdir /mnt/cdrom [root@localhost ~]# mount /dev/cdrom /mnt/cdrom/ mount: /dev/sr0 is write-protected, mounting read-only [root@localhost ~]# df -ht filesystem type size used avail use% mounted on /dev/mapper/centos-root xfs 17g 1015m 16g 6% / devtmpfs devtmpfs 901m 0 901m 0% /dev tmpfs tmpfs 912m 0 912m 0% /dev/shm tmpfs tmpfs 912m 8.7m 904m 1% /run tmpfs tmpfs 912m 0 912m 0% /sys/fs/cgroup /dev/sda1 xfs 1014m 143m 872m 15% /boot tmpfs tmpfs 183m 0 183m 0% /run/user/0 /dev/sr0 iso9660 4.3g 4.3g 0 100% /mnt/cdrom
2.备份已有的yum
源
[root@localhost ~]# cd /etc/yum.repos.d/ [root@localhost yum.repos.d]# mkdir bak [root@localhost yum.repos.d]# mv centos-* bak/
3.新建本地yum
源
vi /etc/yum.repo.d/local.repo
[local] name = centos7.4 baseurl = file:///mnt/cdrom gpgcheck = 0 enabled = 1
4.缓存重建
yum clean all yum list
源代码
概述
- 需要使用源代码安装的情况:
1.安装较新版本的应用程序时
2.当前安装的程序无法满足应用需求
3.为应用程序添加新的功能
特点:源代码编译安装为使用者提供了更加灵活的程序功能定制途径,还能获得最新版本,及时修复bug
。
- 完整性校验(考虑安全因素)
md5sum 压缩包名
- 开发环境(编译需要)
gcc
和make
时由gun
项目所贡献的功能强大的c/c++
语言编译器。
gcc --version
make --version
编译安装过程
下载源代码安装包文件
解包、配置、编译、安装
序号 | 操作 | 用途 |
---|---|---|
1 | tar 解包 | 解压并释放源代码包到指定目录 |
2 | ./configure 配置 | 设置安装目录、安装模块等选项 |
3 | make 编译 | 生成可执行的二进制文件 |
4 | make install 安装 | 复制二进制文件到系统,配置应用环境 |
- 测试及应用、维护软件
以后会有关于源代码安装的例子,这里不做过多介绍。
上一篇: ASP版实现cookies注入加速工具
下一篇: IOS学习:在工程中添加百度地图SDK