- 爱易网页
-
Linux
- Linux学习札记之软件包的管理
日期:2014-05-16 浏览次数:20748 次
Linux学习笔记之软件包的管理
1、RPM(RPM Package Manager)
格式:例如cvs.1.11.2-10.i386.rpm
cvs:软件的名称 1.11.2:软件包的版本号其中包括主版本号和次版本号 i386:软件所运行的硬件平台 rpm:文件扩展名
卸载:rmp -e cvs [--nodeps]如果其它软件包括有依赖关系,卸载时会产生提示信息,可使用--nodeps强行卸载
查询:rmp -qa 软件包名称
[root@CentOS-Test Packages]# rpm -aq sudo 查询此软件包所依赖的其它包
[root@CentOS-Test /]# rpm -qf /etc/services 查询文件所属的文件包
setup-2.8.14-16.el6.noarch
[root@CentOS-Test Packages]# rpm -qip sudo-1.7.4p5-11.el6.i686.rpm 查询未安装的软件包是做什么用的
[root@CentOS-Test /]# rpm -qc sudo 查看已安装rpm的配置文件
/etc/pam.d/sudo
/etc/pam.d/sudo-i
/etc/sudo-ldap.conf
/etc/sudoers
[root@CentOS-Test /]# rpm -ql sudo sudo软件包安装路径以及都安装了哪些文件,一般/etc下面的都是配置文件 /usr/bin下面的都是命令
sudo-1.7.4p5-11.el6.i686
安装:rmp -ivh 软件包名
rpm -ivh --excludedocs 软件包名 安装时安装文档
rpm -ivh --prefix path 软件包名 安装时指定安装路径
rpm -ivh --test 软件包名 只对安装进行测试并不实际安装
光盘的挂载:
mkdir /mnt/cdrom 如果没有可以先行创建此文件夹
mount /dev/cdrom /mnt/cdrom 将光盘文件挂载到刚才创建的文件夹中
[root@CentOS-Test ~]# mount /dev/cdrom /mnt/cdrom
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@CentOS-Test Packages]# ls | grep sudo
sudo-1.7.4p5-11.el6.i686.rpm
升级安装:rpm -Uvh 软件包名称
覆盖安装:rpm -ivh --replacepkgs 软件包名称
文件冲突时安装 rpm -ivh --replacefiles 软件包名称
未解决的依赖关系 rpm -ivh --nodeps 软件名称 强制安装,解决安装时的依赖关系,但是十有八九不能用
2、yum
优点:自动解决软件包依赖关系 方便的软件包升级 前提条件是必须接入互联网
安装:yum install 软件包名称
检查更新: yum check-update 软件包名称
更新: yum update
软件包查询: yum list |grep sudo yum list |grep samba 查找到的是yum源上的软件包
软件包信息:yum info sudo 用于查看软件包的信息
卸载:yum remove 软件包名称
帮助:yum --help
3、校验
md5sum 文件名 只校验文件的内容
[root@CentOS-Test data]# md5sum lhc_xx.txt
490b812cb03bacbf5fc5fadc4029efa2 lhc_xx.txt
[root@CentOS-Test data]# echo "#this is a test file" >>lhc_xx.txt
[root@CentOS-Test data]# md5sum lhc_xx.txt
10be8cdfcd22f7cbd1494141a03e67f8 lhc_xx.txt
rpm -V 软件名称 参数如下:
5:文件的md5校验值 S:文件的大小 L:链接文件 T:文件的创建时间 D:设备文件 U:文件的用户 G:文件的用户组 M:文件的权限
4、RPM包的管理
软件包文件提取
例如:
不小心删除了/etc/inittab文件 或从光盘进入修复模式
[root@CentOS-Test bak]# rm -f /etc/inittab
查找inittab文件所属的rpm包
[root@CentOS-Test bak]# rpm -qf /etc/inittab
initscripts-9.03.31-2.el6.centos.i686
挂载光盘到mnt/cdrom
[root@CentOS-Test bak]# mount /dev/cdrom /mnt/cdrom
从光盘中的rpm包中恢复inittab文件到当前的目录下
[root@CentOS-Test bak]# rpm2cpio /mnt/cdrom/Packages/initscripts-9.03.31-2.el6.centos.i686.rpm |cpio -idv ./etc/inittab
./etc/inittab
11182 块
复制./etc/inittab文件到/etc/inittab
[root@CentOS-Test bak]# cp etc/inittab /etc/inittab
5、源代码包安装
源代码包比较灵活可以再安装时指定路径或其它选项,安装之前必须有编译器 gcc或其它编译器。安装步骤一般为
安装gcc编译器(可以使用yum安装) 解压缩 执行./confgure make make install
以安装proftpd为例
解压缩
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。