centos 使用 package,centos和ubuntu哪个好
大家好,centos 使用 package相信很多的网友都不是很明白,包括centos和ubuntu哪个好也是一样,不过没有关系,接下来就来为大家分享关于centos 使用 package和centos和ubuntu哪个好的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
CentOS系统安装内核时提示/boot分区空间不足问题的解决方法
今天登录服务器,准备使用 yum安装一个软件,习惯性的先 yum update一下,结果最后出现如下错误:
代码如下:
...
Transaction check error:
installing package kernel-3.10.0-327.4.5.el7.x86_64 needs 20MB on the/boot filesystem
Error Summary
-------------
Disk Requirements:
At least 20MB more space needed on the/boot filesystem.
看提示是要安装新的 Linux内核包,但/boot文件系统空间不足 20MB。所以更新失败了。
好吧,那就看看/boot下面到底还有多少空间。
代码如下:
df-H/boot
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 247M 237M 10M 96%/boot
嗯,只有 10M了,电脑是不会撒谎的。怎么办呢,/boot文件系统是很重要的,弄不好系统就挂了,我可不想出现这样的结局,明天可是周六。
网上搜索了一番,原来可以尝试删除旧的内核包来达到清理空间的目的。(文章地址)
先看看有没有旧的内核包:
代码如下:
rpm-qa|grep kernel
kernel-3.10.0-229.14.1.el7.x86_64
kernel-3.10.0-229.11.1.el7.x86_64
kernel-devel-3.10.0-229.11.1.el7.x86_64
kernel-3.10.0-327.4.4.el7.x86_64
kernel-devel-3.10.0-327.4.4.el7.x86_64
kernel-devel-3.10.0-229.14.1.el7.x86_64
kernel-headers-3.10.0-327.4.4.el7.x86_64
kernel-3.10.0-229.el7.x86_64
kernel-tools-libs-3.10.0-327.4.4.el7.x86_64
kernel-tools-3.10.0-327.4.4.el7.x86_64
嗯,有的,那就好。不过开始之前,我还要确认一下当前系统用的是哪个,删错了可不好。
代码如下:
uname-a
Linux... 3.10.0-229.14.1.el7.x86_64#1... GNU/Linux
看样子我只要不动 3.10.0-229.14.1就个版本可以了。我决定删 3.10.0-229.11.1这个版本。
代码如下:
sudo rpm-e kernel-3.10.0-229.11.1.el7.x86_64 kernel-devel-3.10.0-229.11.1.el7.x86_64
然后再看看/boot文件系统的可用大小。
代码如下:
df-H/boot
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 247M 190M 57M 78%/boot
有 57M了,足够了。再次执行 sudo yum update,更新新的内核包成功。
centos 下pkg文件怎么安装
安装pkg包方法:
1.软件安装包的格式转换(1)把标准的文件系统格式的软件安装包转换成数据流格式。把Solaris安装介质放入光驱中。然后按以下示例操作,生成一个包含SUNWadmap、SUNWadmc、SUNWadmr这三个软件包的数据流格式的大包:# cd/cdrom/cdrom0/Solaris*# pkgtrans./Product/tmp/3.pkg SUNWadmap SUNWadmc SUNWadmr# file/tmp/3.pkg/tmp/3.pkg:软件包数据流# head/tmp/3.pkg# PaCkAgE DaTaStReAm
SUNWadmap 1 618
SUNWadmc 1 928
SUNWadmr 1 68# end of header
BASEDIR=/
CATEGORY=system
DESC=Software used to perform system administration tasks
EMAIL=
HOTLINE=Please contact your local service provider(2)把数据流格式的软件安装包转换成标准的文件系统格式。仅提取SUNWadmap软件包,并保存在/var/spool/pkg目录# pkgtrans/tmp/3.pkg/var/spool/pkg SUNWadmap提取所有的软件包,并保存在/tmp目录# pkgtrans/tmp/3.pkg/tmp all如果pkgtrans命令的最后不指定具体的软件包的话,则命令运行后会显示所有可转换的包的列表并提示进行选择。
2.查看软件包的描述信息
pkginfo命令可以显示所有安装在本地系统磁盘的的软件包信息。在/var/sadm/pkg/目录中保留了一个所有已安装包的记录,可用以下两条命令查看安装的包总数。# ls/var/sadm/pkg wc-l.# pkginfo wc–l仅查看完整安装的软件包数量,等同于pkginfo–i wc–l其他常见用法:# pkginfo more查看系统安装了哪些包# pkginfo–l more# pkginfo–l SUNWxxx特定包的具体信息,SUNW代表SUN系统的软件# pkginfo–d./top-3.6-sol10-x86-local查看安装包中包含的软件包信息
application SMCtop top#软件包为SMCtop,SMC说明是第三方软件# pkginfo–d./top-3.6-sol10-x86-local–l SMCtop查看SMCtop的信息
3.添加软件包(1)在默认情况下,pkgadd命令会查看/var/spool/pkg目录中是否有标准格式的软件包并列出所有可安装的软件包,是否安装进行安装(关于/var/spool/pkg目录的使用详见下文“使用spool目录”):# pkgadd
pkgadd: ERROR:在</var/spool/pkg>中没有发现包(2)如果标准软件包在其他目录(非/var/spool/pkg)中,可用-d选项,示例如下。# pkgadd-d/tmp/soft---------自动寻找/tmp/soft目录中可安装的软件包# pkgadd-d. SMCtop---------仅安装SMCtop软件包(3)如果要直接安装数据流格式的软件包,可用以下命令:# pkginfo-d$HOME/top-3.6-sol10-x86-local-------查看包含哪些软件包
application SMCtop top# pkgadd-d./top-3.6-sol10-x86-local [all]-------“[ ]”中为可选项(4)可以把数据流格式的软件包都导到/var/spool/pkg目录并以标准格式存放:# pkgadd-d$HOME/top-3.6-sol10-x86-local-s/var/spool/pkg SMCtop
Transferring<SMCtop> package instance或者使用pkgtrans命令把软件包从数据流格式转换成标准文件系统格式:# pkgtrans$HOME/top-3.6-sol10-x86-local/var/spool/pkg [SMCtop]
Transferring<SMCtop> package instance然后用pkgadd命令进行安装。
4.检查已安装的软件包(1)检查自系统安装以来,所有有变动的文件:# pkgchk
ERROR:/etc/default/login
modtime<01/22/05 07:28:36 AM> expected<04/16/07 02:26:23 PM> actual
file size<2258> expected<2259> actual
file cksum<57347> expected<57382> actual<……>(2)检查特定软件包的变动情况:# pkgchk SUNWbash(3)查看软件包中包括哪些文件:# pkgchk-v SUNWcarx(4)检查特定文件自安装以来的变化修改时间、文件大小、checksum等:# pkgchk-p/etc/shadow(5)查看特定文件的信息,特别是属于哪个软件包,必须全路径:# pkgchk-l-p/usr/bin/showrev
pkgchk的其他参数选项说明:-a:只审核文件属性。l-c:只审核文件内容,默认是都审核。l-f:尝试进行纠正。
如何在linux(centos)服务器上安装软件
Linux软件的二进制分发是指事先已经编译好二进制形式的软件包的发布形式,其优点是安装使用容易,缺点则是缺乏灵活性,如果该软件包是为特定的硬件平台编译的,那它就不能在另外的平台或环境下正确执行。
1、*.rpm形式的二进制软件包
安装:rpm-ivh*.rpm
卸载:rpm-e packgename
说明:RPM(RedHat Packge
Manager)是RedHat公司出的软件包管理器,使用它可以很容易地对rpm形式的软件包进行安装、升级、卸载、验证、查询等操作,安装简单,而卸
载时也可以将软件安装在多处目录中的文件删除干净,因此推荐初学者尽可能使用rpm形式的软件包。rpm的参数中-i是安装,-v是校验,-h是用散列符
显示安装进度,*.rpm是软件包的文件名(这里的*.rpm特指*.src.rpm以外的以rpm为后缀的文件);参数-e是删除软件
包,packgename是软件包名,与软件包的文件名有所区别,它往往是文件名中位于版本号前面的字符串,例如apache-3.1.12-
i386.rpm和apache-devel-3.1.12-i386.rpm是软件包文件名,它们的软件包名称分别是apache和apache-
devel.更多的rpm参数请自行参看手册页:man rpm.
如果你不喜欢在字符界面下安装或卸载这些软件包,完全可以在X-Window下使用图形界面的软件包管理程序。现在这些做的非常好了。
2、*.tar.gz/*.tgz、*.bz2形式的二进制软件包
安装:tar zxvf*.tar.gz或 tar yxvf*.bz2
卸载:手动删除
说明:*.tar.gz/*.bz2形式的二进制软件包是用tar工具来打包、用gzip/bzip2压缩的,安装时直接解包即可。对于解压后
只有单一目录的软件,卸载时用命令"rm-rf
软件目录名";如果解压后文件分散在多处目录中,则必须一一手动删除(稍麻烦),想知道解压时向系统中安装了哪些文件,可以用命令"tar ztvf
*.tar.gz"/"tar ytvf
*.bz2"获取清单。tar的参数z是调用gzip解压,x是解包,v是校验,f是显示结果,y是调用bzip2解压,t是列出包的文件清单。更多的参
数请参看手册页:man tar.
如果你更喜欢图形界面的操作,可以到Ubuntu上看看他的包管理,超级方便。
3、提供安装程序的软件包
这类软件包已经提供了安装脚本或二进制的安装向导程序(setup、install、install.sh等),只需运行它就可以完成软件的安
装;而卸载时也相应地提供了反安装的脚本或程序。例如SUN公司的StarOffice办公软件套件就使用名为setup的安装程序,而且在软件安装后提
供反安装的功能,目前这种类型的软件包还比较少,因其安装与卸载的方式与Windows软件一样,所以就无需多讲了。
二、源代码分发软件包的安装与卸载
Linux软件的源代码分发是指提供了该软件所有程序源代码的发布形式,需要用户自己编译成可执行的二进制代码并进行安装,其优点是配置灵活,可以随意去掉或保留某些功能/模块,适应多种硬件/操作系统平台及编译环境,缺点是难度较大,一般不适合初学者使用。
1、*.src.rpm形式的源代码软件包
安装:rpm-rebuild*.src.rpm
cd/usr/src/dist/RPMS
rpm-ivh*.rpm
卸载:rpm-e packgename
说明:rpm--rebuild*.src.rpm命令将源代码编译并在/usr/src/dist/RPMS下生成二进制的rpm包,然后再安装该二进制包即可。packgename如前所述。
2、*.tar.gz/*.tgz、*.bz2形式的源代码软件包
安装:tar zxvf*.tar.gz或 tar yxvf*.bz2先解压
然后进入解压后的目录:
./configure配置
make编译
make install安装
卸载:make uninstall或手动删除
说明:建议解压后先阅读说明文件,可以了解安装有哪些需求,有必要时还需改动编译配置。有些软件包的源代码在编译安装后可以用make
install命令来进行卸载,如果不提供此功能,则软件的卸载必须手动删除。由于软件可能将文件分散地安装在系统的多个目录中,往往很难把它删除干净,
那你应该在编译前进行配置,指定软件将要安装到目标路径:./configure--prefix=目录名,这样可以使用"rm-rf
软件目录名"命令来进行干净彻底的卸载。与其它安装方式相比,需要用户自己编译安装是最麻烦的,其实我个人认为,以后会越来越少人用这种方法。因为现在的
硬件发展到没有必要多这少量的性能,来浪费这么多时间。
三。使用yum和apt-get.软件管理方法的升级。
看过上面的介绍。大家一定会感觉,太麻烦了,下面这个是先进的linux才有的功能,这个实在太方便了,比windows还人方便,要是你用过Ubuntu的apt-get你会感觉爽极了的。那个方便。
1.我们来先讲Redhat的yum这种高级的包管理。
用YUM安装删除软件
装了系统添加删除软件是常事,yum同样可以胜任这一任务,只要软件是rpm安装的。
安装的命令是,yum install xxx,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断。
删除的命令是,yum remove xxx,同安装一样,yum也会查询数据库,给出解决依赖关系的提示。
用YUM安装软件包
命令:yum install
用YUM删除软件包
命令:yum remove
2.用YUM查询软件信息
我
们常会碰到这样的情况,想要安装一个软件,只知道它和某方面有关,但又不能确切知道它的名字。这时yum的查询功能就起作用了。你可以用 yum
search keyword这样的命令来进行搜索,比如我们要则安装一个Instant Messenger,但又不知到底有哪些,这时不妨用
yum search
messenger这样的指令进行搜索,yum会搜索所有可用rpm的描述,列出所有描述中和messeger有关的rpm包,于是我们可能得到
gaim,kopete等等,并从中选择。
有时我们还会碰到安装了一个包,但又不知道其用途,我们可以用yum info packagename这个指令来获取信息。
使用YUM查找软件包
命令:yum search
列出所有可安装的软件包
命令:yum list
列出所有可更新的软件包
命令:yum list updates
列出所有已安装的软件包
命令:yum list installed
列出所有已安装但不在 Yum Repository内的软件包
命令:yum list extras
列出所指定的软件包
命令:yum list
2.讲讲Ubuntu中的高级包管理方法apt-get
除了apt的便捷以外,apt-get的一大好处是极大地减小了所谓依赖关系恶梦的发生
几率(dependency hell),即使是陷入了dependency hell,apt-get也提供了很好的
援助手段,帮你逃出魔窟。
通常 apt-get都和网上的压缩包一起出没,从互联网上下载或是安装。全世界有超
过200个 debian官方镜像,还有繁多的非官方软件包提供网站。你所使用的基于D
ebian的发布版不同,你所使用的软件仓库可能需要手工选择或是可以自动设置。你
能从Debian官方网站得到完整的镜像列表。而很多非官方网站提供各种特殊用途的
非官方软件包,当然,使用非官方软件包会有更多风险了。
软件包都是为某一个基本的Debian发布版所准备的(从unstable到stable),并且划
分到不同类别中(如 main contrib nonfree),这个是依据 debian自由软件纲领而
划分的(也就是常说的dfsg),因为美国限制加密软件出口,还有一个non-us类别。
常用的APT命令参数
apt-cache search package搜索包
apt-cache show package获取包的相关信息,如说明、大小、版本等
sudo apt-get install package安装包
sudo apt-get install package-- reinstall重新安装包
sudo apt-get-f install修复安装"-f=--fix-missing"
sudo apt-get remove package删除包
sudo apt-get remove package-- purge删除包,包括删除配置文件等
sudo apt-get update更新源
sudo apt-get upgrade更新已安装的包
sudo apt-get dist-upgrade升级系统
sudo apt-get dselect-upgrade使用 dselect升级
apt-cache depends package了解使用依赖
apt-cache rdepends package是查看该包被哪些包依赖
sudo apt-get build-dep package安装相关的编译环境
apt-get source package下载该包的源代码
sudo apt-get clean&& sudo apt-get autoclean清理无用的包
sudo apt-get check检查是否有损坏的依赖