了解应用程序(软件),rpm管理命令,源码安装

1.了解应用程序

应用程序(app):安装在os上完成特定功能的软件。

应用程序的类型:*.rpm(redhat分支默认软件格式),*.deb(debian分支默认软件格式),源代码(通用的软件格式,也是生成rpm和deb的基础),其他自带安装程序及免安装的软件。

用户程序常用的目录:/etc,/var/log(日志文件),/usr/share/doc/(说明文档),/usr/bin(存放可运行的命令)


2.rpm管理命令:

1)了解rpm

a.rpm是redhat推出的包管理机制,作用是用数据记录软件的增删改查等信息方便维护,能自动分析软件间依赖关系,方便安装软件。

b.rpm软件的格式:

软件的名称-版本-发布次数-os的平台-硬件平台(32、64).rpm

i386/i586/i686=32位

x86_64=64位


2)rpm查询功能:

语法:rpm  -q[子选项]  [软件包]

案例:

rpm -qa |grep man  ##查看man软件是否安装,-a列出所有安装软件

rpm -qi tar  ##查看软件信息

rpm -ql tar  ##列出tar软件安装的所有的文件及目录-l列出软件的文件目录

rpm -qc vsftpd  ##只列出vsftpd软件的配置文件

rpm -qd vsftpd  ##只列出vsftpd软件的document(文档)

which useradd  ##查找命令的位置

rpm -qf $(which useradd)  ##查看命令由那个软件包安装,命令可替换为任意外部命令,然结合rpm -ql,和man扩展学习


3)rpm安装升级卸载:

语法:rpm  [选项]  软件包

案例:

mount  /dev/cdrom /mnt  ##先放系统ISO,链接后在执行挂载系统光盘

ls /mnt  ##验证,Packages软件包存放位置,repodata软件仓库文件,image等引导文件

rpm -ivh  /mnt/Packages/vsftpd-tab补齐  ##安装vsftpd软件,-i表示安装,vh显示详细信息

rpm -e  vsftpd  ##卸载vsftpd软件,-e表示卸载

rpm -F  /mnt/Packages/vsftpd-tab补齐  ##更新软件,没安装放弃

rpm -qa vsftpd  ##验证

rpm -U  /mnt/Packages/vsftpd-tab补齐   ##升级软件,没安装则安装

rpm -qa vsftpd ##验证


4)rpm的特殊用法

--force:强制安装,当软件已经安装但文件丢失重装时,旧覆盖新版本时使用。

--nodeps:忽略依赖关系,卸载时使用。

--import:导入系统iso公钥的。

--initdb/--rebuilddb:重建rpm数据库,当系统中病毒破坏了rpm数据时使用。

案例:

rpm -ivh /mnt/Packages/vsftpd-tab补齐

rm  -rf /etc/vsftpd  ##模拟文件丢失

rpm -ivh /mnt/Packages/vsftpd-tab补齐  --force   ##强制安装恢复文件

rpm -e  vim-common  --nodeps  ##忽略依赖关系卸载

rpm --import  /etc/pki/rpm-gpg/*   ##导入系统公钥,保证安装软件的安全

rpm  --initdb  ##重建rpm数据库

3.部署本地yum源:

举例,部署ntop的本地yum源

注意主机需能上网,从网络获取yum的源配置文件

1.配置yum源并安装ntop:

sed -i '/^keepcache/s/0/1/g' /etc/yum.conf   ##将安装的软件保留

rm -rf /etc/yum.repos.d/*   ##删除原有yum配置文件

wget http://mirrors.aliyun.com/repo/Centos-6.repo -P /etc/yum.repos.d/  ##下载阿里yum的源配置文件

yum -y install epel-release

yum -y install ntop  ##yum安装ntop

rsync -av /var/cache/yum/x86_64/6/epel/packages/ root@ip地址:/var/ftp/ntop  ##将软件上传到ftp上用于本地yum源

mount /dev/cdrom /mnt 挂载光盘

cd /var/ftp/ntop/

yum -y install createrepo

createrepo -g /mnt/repodata/repmod.xml ./  ##生存repomod文件,本地yum源配置完成


客户端repo文件配置:

[root@localhost packages]# cat /etc/yum.repos.d/centos.repo 

[ntop]

name=ntop

baseurl=ftp://IP地址/ntop  

enabled=1

gpgcheck=no

这样就可以在客户端本地yum安装ntop了!!!