网站移动站,项目网络由箭线和节点构成,网上接单干活的平台,免费文档模板网站Linux系统软件包的管理一、 rpm工具rpm Redhat Package Manager#xff0c; 设计理念是开放的#xff0c;不仅仅是在RedHat平台上#xff0c;在SUSE上也是可以使用的。rpm包名字构成由-和.分成了若干部分#xff0c;如abrt-cli-2.0.8-15.el6.centos.i686.rpm#xff0c;ab… Linux系统软件包的管理一、 rpm工具rpm Redhat Package Manager 设计理念是开放的不仅仅是在RedHat平台上在SUSE上也是可以使用的。rpm包名字构成由-和.分成了若干部分如abrt-cli-2.0.8-15.el6.centos.i686.rpmabrt-cli是包名2.0.8-15是版本号el6指的是redhat企业版6centos指的是这是在centos上用的i686指的是平台类型有些rpm包并没有写具体的平台而是noarch这代表这个rpm包没有硬件平台限制。 挂载光驱[rootweb ~]# mount /dev/cdrom /mnt/
mount: block device /dev/sr0 is write-protected, mounting read-onlywrite-protected写保护1、安装一个包[rootweb mnt]# rpm -ivh /mnt/Packages/libjpeg-turbo-devel-1.2.1-1.el6.i686.rpm-i 表示安装-v 可视化-h显示安装进度 --force : 强制安装即使覆盖属于其他包的文件也要安装 --nodeps : 当要安装的rpm包依赖其他包时即使其他包没有安装也要安装这个包 [rootweb mnt]# rpm -ivh --nodeps /mnt/Packages/libjpeg-turbo-devel-1.2.1-1.el6.i686.rpm
Preparing... ########################################### [100%]1:libjpeg-turbo-devel ########################################### [100%]升级rpm -Uvh filename.rpm-U 就是升级的意思 [rootweb mnt]# echo $?
0检查上一步安装是否正确如果正确显示数字0如果不正确显示其他的数字2、rpm的卸载rpm -e filename #这里的filename是通过rpm的查询功能所查询到的 查询包名[rootweb mnt]# rpm -qa |grep libj
libjpeg-turbo-1.2.1-3.el6_5.x86_64
libjpeg-turbo-devel-1.2.1-1.el6.i686这里libj并不是包名的全称只是大概记得类似于模糊搜索的功能这样已查询就可以把所有以libj开头的包全部显示出来然后找到自己需要的那一个来卸载卸载包[rootweb mnt]# rpm -e libjpeg-turbo-devel查询一个包是否安装 rpm -q 包名 (不带有平台信息以及后缀名 )[rootweb mnt]# rpm -q libjpeg-turbo-devel
package libjpeg-turbo-devel is not installed查询当前系统所有安装过的rpm包rpm -qa [rootweb mnt]# rpm -qa
wdaemon-0.17-5.el6.x86_64
gnome-python2-bonobo-2.28.0-3.el6.x86_64
.........省略掉太多了查询rpm包的相关信息 : rpm -qi 包名[rootweb mnt]# rpm -qi libjpeg-turbo-devel
Name : libjpeg-turbo-devel Relocations: (not relocatable)
Version : 1.2.1 Vendor: CentOS
Release : 1.el6 Build Date: 2013年02月22日 星期五 06时49分08秒
Install Date: 2015年03月29日 星期日 21时23分29秒 Build Host: c6b9.bsys.dev.centos.org
Group : Development/Libraries Source RPM: libjpeg-turbo-1.2.1-1.el6.src.rpm
Size : 321085 License: wxWidgets
Signature : RSA/SHA1, 2013年02月24日 星期日 01时53分55秒, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem http://bugs.centos.org
URL : http://sourceforge.net/projects/libjpeg-turbo
Summary : Headers for the libjpeg-turbo library
Description :
This package contains header files necessary for developing programs which
will manipulate JPEG files using the libjpeg-turbo library.列出一个rpm所安装的文件: rpm -ql 包名好像不写版本号也是可以的[rootweb mnt]# rpm -ql libjpeg-turbo-devel
/usr/include/jconfig.h
/usr/include/jerror.h
/usr/include/jmorecfg.h
/usr/include/jpeglib.h
/usr/lib/libjpeg.so
/usr/share/doc/libjpeg-turbo-devel-1.2.1
/usr/share/doc/libjpeg-turbo-devel-1.2.1/coderules.txt
/usr/share/doc/libjpeg-turbo-devel-1.2.1/example.c
/usr/share/doc/libjpeg-turbo-devel-1.2.1/jconfig.txt
/usr/share/doc/libjpeg-turbo-devel-1.2.1/libjpeg.txt
/usr/share/doc/libjpeg-turbo-devel-1.2.1/structure.txt查询某个文件属于哪个rpm包安装的 rpm -qf filename #这里可以结合反引号一起使用比如 rpm -qf which yumfilename这里有两种写法 第一种使用which yum得出yum的绝对路径[rootweb mnt]# which yum
/usr/bin/yum
[rootweb mnt]# rpm -qf /usr/bin/yum
yum-3.2.29-60.el6.centos.noarch第二种直接使用反引号一步得出接过来[rootweb mnt]# rpm -qf which yum
yum-3.2.29-60.el6.centos.noarch反引号的作用表示就是把引号中命令的结果放在那个位置 二、 yum工具列出所有可用rpm包资源yum list [rootweb ~]# yum list搜索某个包yum search [关键词][rootweb ~]# yum search vim使用grep来过滤某个包yum list |grep 关键词[rootweb ~]# yum list |grep vim
vim-common.x86_64 2:7.2.411-1.8.el6 base
vim-enhanced.x86_64 2:7.2.411-1.8.el6 base
vim-minimal.x86_64 2:7.2.411-1.8.el6 anaconda-CentOS-201311272149.x86_64/6.5
vim-X11.x86_64 2:7.2.411-1.8.el6 base 表示的是已经安装过的包yum 安装包yum install -y filename(包名)[rootweb ~]# yum -y install vim-y省略掉和用户的交换也就是问你是否要安装或者卸载yum 卸载包:yum remove -y filename (包名)[rootweb ~]# yum remove -y vim卸载包的时候一定要注意最好不要使用-y以防把其他有用的包卸载了还不知道yum升级包:yum update -y filename(包名)[rootweb ~]# yum update -y vimyum查找某个命令是由那个包安装的yum provides */vim [rootweb ~]# yum provides */vim列出所有的套件yum grouplist [rootweb ~]# yum grouplist安装套件yum groupinstall 卸载套件 yum groupremove 三、创建本地的yum源yum配置文件目录/etc/yum.reos.d1、挂载光盘[rootweb ~]# mount /dev/cdrom /mnt2、修在yum配置文件但是在修在之前先备份一下/etc/yum.repos.d这个目录[rootweb ~]# cp -r /etc/yum.repos.d/ /etc/yum.repos.d_back-r备份目录的参数 3、删除/etc/yum.repos.d目录下的所有文件[rootweb yum.repos.d]# rm -rf *4、使用vim编辑一个dvd.reo文件需要注意的是.repo是固定的格式不能更改。[rootweb yum.repos.d]# vim dvd.repo #加入如下内容:
[dvd] #yum源的名字可以随意起
nameinstall dvd #yum源的描述信息
baseurlfile:///mnt#光盘所在的挂载目录也就是光盘的路径
enabled1 #这里指的是yum源的开始或者关闭1表示开始0表示关闭
gpgcheck0 #不进行gpg检测退出保存看是否有dvd的标志出现yum list[rootweb yum.repos.d]# yum list |tail
yum-presto.noarch 0.6.2-1.el6 dvd
yum-updateonboot.noarch 1.1.30-14.el6 dvd
yum-utils.noarch 1.1.30-14.el6 dvd
zip.x86_64 3.0-1.el6 dvd
zlib.i686 1.2.3-29.el6 dvd
zlib-devel.i686 1.2.3-29.el6 dvd
zlib-devel.x86_64 1.2.3-29.el6 dvd
zlib-static.x86_64 1.2.3-29.el6 dvd
zsh.x86_64 4.3.10-7.el6 dvd
zsh-html.x86_64 4.3.10-7.el6 dvd安装yum扩展源[rootweb yum.repos.d]# rpm -ivf http://www.lishiming.net/data/p_w_upload/forum/epel-release-6-8_32.noarch.rpm其他地址http://www.aminglinux.com/bbs/thread-6721-1-1.html)四、利用yum下载一个rpm包1、安装一个插件来支持只下载不安装搜索插件[rootweb ~]# yum list |grep downloadonly安装插件[rootweb ~]# yum install -y yum-plugin-downloadonly.noarch 1.1.30-14.el6下载一个rpm包而不安装yum install 包名 -y --downloadonly #这样就已经下载默认在 /var/cache/yum/base/packages/指定一个下载目录yum install 包名 -y --downloadonly --downloaddir/usr/local/src #指定一个下载目录只下载而不安装不能用echo $?命令去检查因为我们只下载下来不安装就退出了所以用echo $?检查是会报错的如果是已经安装过的rpm包这样不成功需要使用reinstall yum reinstall 包名 -y --downloadonly --downloaddir/usr/local/src五、 源码包安装源码包是开源的可自行更改的程序包大多用C语音开发不能直接使用需要编译成二进制的可执行文件编译源码包的必须有gcc支持如果没有需要安装 yum install -y gcc通常情况编译三步曲: ./configure 配置各种编译参数; make 根据指定的编译参数进行编译make install 安装到指定目录实例1、下载源码包到指定的目录 cd /usr/local/src/ 2、安装wget如果已经安装了可以略过这一步[rootweb src]# yum instrall -y wget3、下载apache这个包[rootweb src]# wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.27.tar.bz24、解压[rootweb src]# tar -jxvf httpd-2.2.27.tar.bz25、安装gcc编译器[rootweb httpd-2.2.27]# yum install -y gcc指定编译参数 ./configure --help 6、配置相关选项并生成Makefile[rootweb httpd-2.2.27]# ./configure --prefix/usr/local/apache2--prefix后面是指定软件包的安装位置验证是否成功[rootweb httpd-2.2.27]# echo $?
07、编译[rootweb httpd-2.2.27]# make验证是否成功[rootweb httpd-2.2.27]# echo $?
08、安装[rootweb httpd-2.2.27]# make install9、检查是否安装成功[rootweb httpd-2.2.27]# ls /usr/local/apache2/
bin cgi-bin error icons lib man modules
build conf htdocs include logs manual 小白学习笔记不足之处还请大神指正 博客地址:http://www.aminglinux.com/bbs/thread-7688-1-1.html 转载于:https://blog.51cto.com/sxct168/1626618