一、rpm命令
1、查询已安装的RPM软件包信息
格式:rpm -q+子选项+软件名
用法:-qa:查看已安装的所有的RPM软件包装
-qi:查看指定软件包的详细信息
-ql:查询软件包安装的额目录、文件列表
-qf+文件或者目录名:查询文件或者目录属于哪个RPM包
-qp+子选项+RPM包文件:查询未安装的软件包文件
示例:
(1)查询是否安装bash软件包
rpm -q bash
(2)查询postfix软件包安装的文件目录
rpm -ql postfix
(3)查询vim是由哪个软件包安装的
rpm -qf /usr/bin/vim
(4)查询未安装的软件包文件
rpm -qpi ethtool-3.5-1.el6.x86_64.rpm
2、安装、升级RPM软件
格式:rpm+选项+RPM包文件
用法:-i 安装一个新的rpm软件包文件
-U 升级 若未安装 则会进行安装
-h 以“#”号显示安装进度
-v 显示安装过程中的详细信息
-F 更新某个rpm软件 若未安装 则放弃安装
--force 强制安装某个软件包 (一般不用)
3、卸载RPM软件
格式:rpm -e +软件名
4、重建RPM数据库
rpm --rebuilddb
rpm --initdb
二、构建YUM仓库
1、挂载光盘
卸载光盘:umount /dev/sr0
挂载光盘:mount /dev/sr0 /media/
查看:ls /media/
2、修改本YUM仓库客户端配置文件
构建本地YUM仓库文档:cd /etc/yum.r*
mkdir a/
mv C* a/
创建本地YUM仓库文档:vi ./local.repo
[cdrom] //仓库名称
name=cdrom
baseurl=file:///media //指定rpm包的位置
enabled=1 //启用本地YUM仓库
gpgcheck=0 //禁用gpg校验
3、清除、重建YUM缓存:yum -y clean all
yum makecache
4、查询、安装、卸载、查询vdftpd:rpm -q vsftpd
yum -y install vsftpd
rpm -q vsftpd
yum -y remove vsftpd
rpm -q vsftpd
说明:-y:不进行交互
三、源代码编译安装
1、编译安装流程
下载源代码安装包文件后——>tar解包(解压并释放源代码到指定的目录)——>./configure配置(设置安装目录、安装模块等选项)——>make编译(生成可执行的二进制文件)——>make install 安装(复制二进制文件到系统,配置应用环境)——>测试及应用、维护软件
2、代码演绎操作
(1)通过xftp等工具将httpd-2.2.17.tar传到linux虚拟机中
[root@localhost ~]# ls
anaconda-ks.cfg httpd-2.2.17.tar.gz 公共 模板 视频 图片 文档 下载 音乐 桌面
(2)完整性校验 计算 MD5校验和,不一致不要用
[root@localhost ~]# md5sum httpd-2.2.17.tar.gz
66d8e107f85acc039fd5e624e85728a9 httpd-2.2.17.tar.gz
(3)挂载镜像
[root@localhost ~]# umount /dev/sr0
[root@localhost ~]# mount /dev/sr0 /media/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# ls /media
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL
(4)构建YUM仓库
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir a/
[root@localhost yum.repos.d]# mv C* a/
[root@localhost yum.repos.d]# vi local.repo
[cdrom]
name=cdrom
baseurl=file:///media
enable=1
gpgcheck=0
[root@localhost yum.repos.d]# yum -y clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: cdrom
Cleaning up everything
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]# yum makecache
已加载插件:fastestmirror, langpacks
cdrom | 3.6 kB 00:00:00
(1/4): cdrom/group_gz | 154 kB 00:00:00
(2/4): cdrom/filelists_db | 2.7 MB 00:00:00
(3/4): cdrom/primary_db | 2.7 MB 00:00:00
(4/4): cdrom/other_db | 1.1 MB 00:00:00
Determining fastest mirrors
元数据缓存已建立
(5)确认源代码编译环境,未安装则进行安装
[root@localhost ~]# rpm -q gcc gcc-c++ make
未安装软件包 gcc
未安装软件包 gcc-c++
make-3.82-21.el7.x86_64
[root@localhost ~]# yum -y install gcc gcc-c++
[root@localhost ~]# rpm -q gcc gcc-c++ make
gcc-4.8.5-36.el7_6.2.x86_64
gcc-c++-4.8.5-36.el7_6.2.x86_64
make-3.82-21.el7.x86_64
(6)正式进入源代码编译安装流程
[root@localhost ~]# tar xf httpd-2.2.17.tar.gz -C /usr/src/ //解包
[root@localhost ~]# cd /usr/src/httpd-2.2.17/ //到http-2.2.17.tar.gz-C下查看有没有东西
[root@localhost httpd-2.2.17]# ls //查看内容
ABOUT_APACHE config.layout INSTALL NOTICE srclib
acinclude.m4 configure InstallBin.dsp NWGNUmakefile support
Apache.dsw configure.in LAYOUT os test
build docs libhttpd.dsp README VERSIONING
BuildAll.dsp emacs-style LICENSE README.platforms
BuildBin.dsp httpd.dsp Makefile.in README-win32.txt
buildconf httpd.spec Makefile.win ROADMAP
CHANGES include modules server
[root@localhost httpd-2.2.17]# ./configure --prefix=/usr/local/apache //设置"--prefix="软件安装目录
[root@localhost httpd-2.2.17]# make //编译
[root@localhost httpd-2.2.17]# make install //安装
[root@localhost httpd-2.2.17]# cd /usr/local/apache/conf/ //备份,防止出错
[root@localhost conf]# cp httpd.conf{,.bak}
[root@localhost conf]# vi /usr/local/apache/conf/httpd.conf //进入编辑器
# ServerName www.example.com:80 //将第九十七行前面的“#”号删除,wq:保存退出
[root@localhost ~]# systemctl stop firewalld //复制一个新的通道,关闭防火墙(临时)
[root@localhost ~]# systemctl disable firewalld //永久
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'
[root@localhost ~]# setenforce 0 //关闭安全机制(临时)
[root@localhost ~]# sed -i '7 s/enforcing/disabled/' /etc/selinux/config //关闭安全机制(永久)
[root@localhost ~]# sed -n '7p' /etc/selinux/config //查看有没有变成disabled
SELINUX=disabled
[root@localhost conf]# /usr/local/apache/bin/apachectl start //运行
[root@localhost conf]# rpm -q lynx //检测之前检查有没有lynx软件包
未安装软件包 lynx
[root@localhost conf]# yum -y install lynx //没有则用yum进行安装
[root@localhost conf]# rpm -q lynx //查看lynx软件包是否安装成功
lynx-2.8.8-0.3.dev15.el7.x86_64
[root@localhost conf]# lynx http://127.0.0.1 // 检测