Linux软件安装和管理
一、常见的软件包封装类型
文件类型 | 扩展名 |
源代码软件包 | 一般为“.tar.gz”、“.tar.bz2”等格式的压缩包 包含程序的原始代码,需要编译成二进制安装 |
RPM软件包 | 扩展名为“.rpm” ,适用于RHEL、CentOS等系统 |
二、源代码编译安装
2.1 源码包安装软件的好处及不足
好处
- 开源,如果你有足够的能力,可以修改源代码
- 可以自由选择所需的功能
- 编译安装更加适合自己的系统,更加稳定,效率更高
不足
- 安装过程步骤较多,尤其是在安装较大的软件集合时(如 LAMP 环境搭建),容易出现拼写错误
- 编译时间较长,所以安装时间要比二进制安装长
- 编译安装过程中一旦报错,新手很难解决
2.2 编译安装的基本过程
(1)tar解包
tar -zxvf/-jxvf 文件名.tar.gz/文件名.tar.bz2 -C 目标路径
(2)配置
./configure --prefix=目标路径(软件安装位置)
(3)编译
make
(4)安装
make install
三、RPM安装
3.1 RPM简介
RPM软件包管理器Red-Hat package Manager
- 由Red Hat公司提出, 被众多Linux发行版所采用
- 建立统一的文件数据库
- 详细记录软件包安装、卸载、升级等变化信息
- 自动分析软件包依赖关系
RPM软件包获取途径:
- RPM软件包软件素材参考:www.rpm.org
- RPM软件包一般命名格式:bash-4.1.2.-28.el6.x86_64.rpm
3.2 RPM命令
rpm [选项] RPM包软件名
选项 | 含义 |
-q | 查询是否安装软件 |
-qa | 显示当前系统中以rpm方式安装的所有软件 |
-qc | 列出已安装的指定软件的配置文件 |
-i | 安装软件 |
-v | 显示详细信息 |
-h | 以#号显示安装进度 |
-e | 卸载软件 |
四、yum安装
4.1 命令
安装: yum install 软件名 -y -y 表示自动回答yes,即在安装软件包时自动回答yes,无需手动确认安装 卸载: yum remove 软件名
4.2 设置本地yum源
(1) 挂载ISO映像
挂载命令: mount 硬件设备文件夹 挂载点(已存在且文件夹为空)
解挂载:umount 挂载的文件夹
挂载规则
一个挂载点同一时间只能挂载一个设备
若一个挂载点同时挂载了多个设备,只能看到最后一个挂载设备的数据,其他设备上的数据将被隐藏
一个设备可以同时挂载到多个挂载点
通常挂载点是一个已存在的空的目录
[root@localhost /]# mount /dev/cdrom /mnt/ mount: /dev/sr0 写保护,将以只读方式挂载 [root@localhost /]# df 文件系统 1K-块 已用 可用 已用% 挂载点 /dev/mapper/centos-root 48804576 5146664 43657912 11% / devtmpfs 991336 0 991336 0% /dev tmpfs 1007252 0 1007252 0% /dev/shm tmpfs 1007252 9276 997976 1% /run tmpfs 1007252 0 1007252 0% /sys/fs/cgroup /dev/sda1 972452 182372 790080 19% /boot tmpfs 201452 4 201448 1% /run/user/42 tmpfs 201452 48 201404 1% /run/user/0 /dev/sr0 4414592 4414592 0 100% /mnt
(2)移动yum自带的仓库文件
[root@localhost /]# cd /etc/yum.repos.d/ //进入yum源配置文件目录 [root@localhost yum.repos.d]# mkdir backup //创建backup的新目录 [root@localhost yum.repos.d]# mv *.repo backup //将yum仓库中以.repo结尾的文件移动到backup中
(3)新建yum仓库文件
[root@localhost yum.repos.d]# vim local.repo //新建yum仓库文件 [local] #文件名 name=local #描述 baseurl=file:///mnt #指定光盘挂载的目录,file://是固定格式,挂载在/mnt enabled=1 #开启此yum源(默认开启,可不写) gpgcheck=0 #不检查软件的序列号 :wq #保存退出
(4)清理缓存并重新加载元数据
[root@localhost yum.repos.d]# yum clean all && yum makecache //清理yum缓存并重新建立元数据 已加载插件:fastestmirror, langpacks 正在清理软件源: local Cleaning up everything Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos Cleaning up list of fastest mirrors 已加载插件:fastestmirror, langpacks local | 3.6 kB 00:00:00 (1/4): local/group_gz | 156 kB 00:00:00 (2/4): local/filelists_db | 3.1 MB 00:00:00 (3/4): local/primary_db | 3.1 MB 00:00:00 (4/4): local/other_db | 1.2 MB 00:00:00 Determining fastest mirrors 元数据缓存已建立
(5)安装软件
[root@localhost yum.repos.d]# yum install httpd -y