linux软件安装——rpm、yum、源码包安装
一、软件包分类
源码包(原始的c语言文件,开源)
二进制包(系统默认包,将源码编译为机器语言,省略了编译过程,安装较快,但是用户看不到源码,安装有依赖性,centos中都是rpm包)
二、rpm命令管理
2.1、rpm下载地址
rpm包和源码包可以直接在linux中下载,wget+被下载文件属性里面的地址,例如:
wget http://www.rpmfind.net/linux/fedora-secondary/development/rawhide/Everything/s390x/os/Packages/c/crontabs-1.11-17.20150630git.fc29.noarch.rpm
2.2、rpm包命名
2.3、rpm包依赖性
注意:当安装某个rpm包,报依赖错,XXX.so.2 is needed ...............
需要查询这个软件属于哪个包,之后先安装这个包,才能继续操作
2.4、rpm命令安装
2.5、rpm命令升级
2.6、rpm命令卸载
2.7、rpm命令查询
查询包相关信息
rpm -qip 包名/a(所有包)
-q查询 -i显示包信息 -p显示未安装包,用的不多
查询包安装位置
rpm -ql 包名
-l 列表
查询系统文件属于哪个包
rpm -qf 文件名
-f file意思
查询包依赖性
rpm -qR 包名
-p 一般查询未安装包依赖性
rpm校验
rpm -V 文件路径
如果包内有改动,可显示出来
2.8、rpm文件提取
适用于误删或者其他原因,丢失文件或者命令,需要从其他地方提取文件,以避免影响使用
rpm2cpio ls所在的包名 | \
>cpio -idv ./bin/ls
2相当于to,将rpm转换为cpio以便提取,|指的是连接符,\>换行符可不用, cpio为提取指令, .代表当前目录,/bin/ls
指的是需要提取的文件绝对路径,目前只是提取到当前目录,还要把提取的文件cp到原来的目录下
三、yum在线管理
3.1、yum 命令
图形化网络配置nmtui
查询所有包
yum list
安装升级卸载
yum -y install 包名
yum -y update 包名
yum -y remove 包名(yum会卸载相依赖的所有包,有可能影响其他使用,慎用)
3.2、光盘yum源搭建
1.将本地镜像挂载到系统
mount /dev/cdrom /mnt/cdrom
2.进入yum系统文件目录,将网络源文件改名
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS-Debuginfo.repo
CentOS-Debuginfo.repo.bak
mv CentOS-Vault.repo CentOS-Vault.repo.bak
3.修改yum源配置文件
vim CentOS-Media.repo
注意#前面不能有空格
![linux软件安装——rpm、yum、源码包安装 linux软件安装——rpm、yum、源码包安装](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzQ4Mi81YTY4MjZiYzU1MTJkMTZmYTU5M2IyNTk5YjQ5MjNjYS5wbmc=)
4.检测配置
yum list
后面容器名字由base变为c7-media即可
注意:
centos7开启服务/bin/systemctl start httpd.service
如果输入浏览器ip无法跳出apache欢迎界面,关闭防火墙试试
systemctl stop firewalld.service
因为安装路径不同,源码包只能用绝对路径启动。
四、源码包安装
1、准备工作:
1.以安装nmap为例,下载源码包并解压
# wget https://nmap.org/dist/nmap-6.46.tar.bz2
# tar -jxvf nmap-6.46.tar.bz2
2.进入软件包目录,查看安装说明
# cd nmap-6.46
# vim INSTALL
Ideally, you should be able to just type:
./configure
make
make install
2、开始安装三部曲:检测编译安装
1、检查软件包所需环境是否具备
# ./configure –help
# ./configure --prefix=/usr/local/nmap
如果报“configure: error: no acceptable C compiler found in $PATH”错误,请安装gcc软件,命令为“yum install gcc”。
2、make编译
使用make编译报错,
# make
`make[1]: g++:命令未找到
make[1]: *** [linear.o] 错误 127
make[1]: Leaving directory `/data/nmap/nmap-6.46/liblinear'
make: *** [liblinear_build] 错误 2
原因是没有安装g++ ,yum安装yum install gcc-c++
3、执行make install安装nmap,
命令为“make install”。
执行“nmap -v”命令
查看自己安装的软件是否成功。