一、RPM包
手工命令安装
- 安装: rpm -ivh 包全名
- 升级: rpm -Uvh 包全名
- 卸载: rpm -e 包名
- 查询:
-
查询是否安装: rpm -q 包全名
rpm -qa |grep 包名
-
查询包信息:(不常用) rpm -qi 包名
查询未安装包信息: rpm -qip 包全名
-
查询安装位置:(常用) rpm -ql 包名
查询未安装的: rpm-qlp 包全名
-
查询系统文件属于哪个包: rpm -qf 系统文件名
-
查询依赖性:(不常用) rpm -qR 包名
- 验证: rpm -V 包名
- 导入数字证书: rpm --import 数字证书
- 提取RPM包中文件: rpm2cpio /mnt/cdrom/Packages/coreutils-8.4 -19.el6.i686.rpm | cpio -idv ./bin/ls
yum在线安装
yum -y install 包名 安装
yum -y update 包名 升级
yum list 查询
yum -y remove 包名 卸载
yum grouplist 查询组
yum groupsearch 关键字 搜索
yum -y groupinstall 包组名 安装
yum -y groupremove 包组名 卸载
如果是本地光盘yum源,那么:
-
先挂载光盘
-
修改其他几个yum源文件的扩展名,让他们失效,因为只有扩展名是"
*.repo
"的文件才能作为yum源配置文件,命令如下:
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak
[root@localhost yum.repos.d]# mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak
[root@localhost yum.repos.d]# mv CentOS-Vault.repo CentOS-Vault.repo.bak
- 修改光盘yum源配置文件CentOS-Media.repo
把两个没用的地址注了,然后将路径设置为自己光盘挂载的那个目录,enabled改成1让它生效:
[root@localhost yum.repos.d]# vim CentOS-Media.repo
[c6-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom
# file:///media/cdrom/
# file:///media/cdrecorder/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
- 进行安装
卸载
建议通过rpm依赖卸载,因为yum很容易误删重要的系统配置文件
二、源码包
安装:
-
下载软件包
-
解压缩
-
进入压缩目录
-
./configure 编译前准备
这一步的作用:
- 安装前检查系统环境,是否符合安装要求
- 定义需要的功能选项."./configure"支持功能很多,一般会通过"
./configure --prefix=安装路径
"来指定安装路径 - 把系统环境的检测结果和定义好的功能选项写入Makefile文件,后续的编译和安装需
要依赖Makefile这个文件的内容
注意:configure不是系统命令,而是源码包自带的一个脚本程序,所以必须采用"./configure"的方式执行.
-
make 编译
-
make clean: 清空编译内容(非必需步骤)
如果编译中报错,那么在重新执行命令时一定要执行make clean命令,它会清空Makefile文件或编译产生的“.o”头文
-
make install: 编译安装
真正的安装过程,一般会写清楚程序的安装位置。如果忘记指定安装目录,则可以把这个命令的执行过程保存下来,以备将来删除使用
删除:
直接删除安装目录
三、打入补丁:
1.补丁的生成
[root@localhost ~]# diff 选项 old new
#比较old和new文件的不同
选项:
-a 将任何文档当做文本文档处理
-b 忽略空格造成的不同
-B 忽略空白行造成的不同
-I 忽略大小写造成的不同
-N 当比较两个目录时,如果某个文件只在一个目录中,则在另一个目录中视作空文件
-r 当比较目录时,递归比较子目录
-u 使用同一的输出格式
一般情况,选项使用 -Naur
2. 打入补丁
[root@localhost test]# patch –pn < 补丁文件
#按照补丁文件进行更新
选项:
-pn n为数字。代表按照补丁文件中的路径,指定更新文件的位置。
补丁文件是要打入旧文件的,但是你当前所在的目录和补丁文件中的记录的目录是不一定匹配的,所以就需要“-pn”来同步两个目录。一般n这个数字会在补丁文件中指出。
注意事项:
-
rpm包:不需要指定安装位置,它有标准的卸载命令.
配置文件: /etc/httpd/conf/httpd.conf
网页位置: /var/www/html/
日志位置: /var/log/httpd/
启动方法: 1) service httpd restart
2) /etc/rc.d/init.d/httpd restart
-
源码包:必须指定安装位置(源码包没有安装数据库,没有删除指令)
配置文件: /usr/local/apache2/conf/httpd.conf
网页文件: /usr/local/apache2/htdocs/
日志位置: /usr/local/apache2/logs/
启动方法: /usr/local/apache2/bin/apachectl start
在系统中可以是安装两个apache的,rpm包和源码包,但是无意义,因为80端口只有一个,多装一个只会占用更多资源,一般都安装源码包
服务是否可以修改端口:
- 如果服务是给大量客户端访问的,不建议更换端口,因为用户找不到了
- 如果服务是给内部人员使用,建议改端口,因为更加安全(SSH 22)
四、脚本安装程序
以webmin举例:
- 下载
这里下载的是webmin-1.610.tar.gz
- 解压
[root@localhost ~]# tar -zxvf webmin-1.610.tar.gz
- 进入解压目录执行安装程序setup.sh,按照提示安装
root@localhost webmin-1.610]# ./setup.sh