This page was saved using WebZIP 7.0.3.1030 offline browser on 12/02/19 14:55:01.
Address: http://www.zhufengpeixun.cn/ahead/html/61.6.devops-install.html
Title: 珠峰架构师成长计划  •  Size: 54582  •  Last Modified: Sun, 01 Dec 2019 11:37:07 GMT

1.软件包管理 #

1.1 软件包的分类 #

1.2 RPM命令管理 #

mkdir /mnt/cdrom
mount /dev/sr0 /mnt/cdrom
cd /mnt/cdrom/Packages

1.3 RPM包命名原则 #

1.4 RPM包依赖性 #

rpm -ivh mysql-connector-odbc-5.1.5r1144-7.el6.i686.rpm 
rpm -ivh unixODBC-2.2.14-11.el6.i686.rpm 
rpm -ivh mysql-connector-odbc-5.1.5r1144-7.el6.i686.rpm 

1.5 包全名 #

1.6 RPM安装 #

1.7 RPM安装 #

rpm -ivh httpd-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh httpd-devel-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh httpd-manual-2.2.15-15.el6.centos.1.noarch.rpm 
rpm -ivh httpd-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh apr-util-ldap-1.3.9-3.el6_0.1.i686.rpm 
rpm -ivh apr-util-1.3.9-3.el6_0.1.i686.rpm 

rpm -ivh apr-1.3.9-3.el6_1.2.i686.rpm 
rpm -ivh apr-util-1.3.9-3.el6_0.1.i686.rpm 
rpm -ivh apr-util-ldap-1.3.9-3.el6_0.1.i686.rpm 
rpm -ivh httpd-2.2.15-15.el6.centos.1.i686.rpm 

rpm -ivh httpd-tools-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh httpd-2.2.15-15.el6.centos.1.i686.rpm 

rpm -ivh httpd-devel-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh httpd-manual-2.2.15-15.el6.centos.1.noarch.rpm 
rpm -ivh httpd-devel-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh apr-devel-1.3.9-3.el6_1.2.i686.rpm 
rpm -ivh apr-util-devel-1.3.9-3.el6_0.1.i686.rpm 
rpm -ivh expat-devel-2.0.1-11.el6_2.i686.rpm 
rpm -ivh openldap-devel-2.4.23-26.el6.i686.rpm 
rpm -ivh cyrus-sasl-devel-2.1.23-13.el6.i686.rpm 
rpm -ivh httpd-devel-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh apr-util-devel-1.3.9-3.el6_0.1.i686.rpm 
rpm -ivh openldap-devel-2.4.23-26.el6.i686.rpm 
rpm -ivh httpd-devel-2.2.15-15.el6.centos.1.i686.rpm 
rpm -ivh apr-util-devel-1.3.9-3.el6_0.1.i686.rpm 
rpm -ivh httpd-devel-2.2.15-15.el6.centos.1.i686.rpm 

1.8 RPM包升级 #

rpm -ivh httpd-devel-2.2.15-15.el6.centos.1.i686.rpm

1.9 卸载 #

rpm -e httpd

1.10 查询 #

命令 参数 含义
rpm -q 包名 -q(query) 查询 查询包是否安装
rpm -qa 包名 -a(all) 查询 查询所有已经安装的RPM包
rpm -qi 包名 -i(information) 查询软件信息
rpm -qip 包名 -p(package) 查询未安装包的信息
rpm -ql 包名 -l(list) -p(package) 查询安装包都安装了哪些文件
rpm -qf 文件名 -f(file) 查询某个文件属于哪个包
rpm -qR 包名 -R(requires) -p(package) 查询软件名的依赖性

默认安装位置

命令 参数
/etc/ 配置文件的安装目录
/usr/bin 可执行的命令安装目录
/usr/lib 程序所使用的函数库保存位置
/usr/share/doc 基本的软件使用手册保存位置
/usr/share/man 帮助文件保存位置

1.11 校验 #

命令 参数
rpm -V 包名

/etc/httpd/conf/httpd.conf

验证信息内容

参数 含义
S(Size) 文件大小是否改变
M(Mode) 文件的类型或者文件的权限(rwx)是否被改变
5(Md5) 文件MD5校验和是否改变(文件内容是否改变)
D(Device) 设备的主从代码是否改变
L(Location) 文件路径是否改变
U(User) 文件的属主(所有者)是否改变
G(Group) 文件的属组是否改变
T(Time) 文件的修改时间是否改变

每个设备号又分为主设备号和次设备号。主设备号用来区分不同种类的设备,而次设备号用来区分同一类型的多个设备

# ll /dev | grep sda
brw-rw----. 1 root disk      8,   0 4月   6 17:50 sda
brw-rw----. 1 root disk      8,   1 4月   6 17:50 sda1
brw-rw----. 1 root disk      8,   2 4月   6 17:50 sda2
参数 含义
c(config file) 配置文件
d(documentation) 普通文档
g(ghost file) 文件根本不应该属于这个软件包
L(license file) 授权文件
r(readme) 描述文件

1.12 文件提取 #

rpm2cpio httpd-2.2.15-15.el6.centos.1.i686.rpm | cpio -idv /etc/httpd/conf/httpd.conf
rpm2cpio /mnt/cdrom/Packages/httpd-2.2.15-15.el6.centos.1.i686.rpm | cpio -idv ./etc/httpd/conf/httpd.conf
cp ./etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf

3. YUM在线管理 #

3.1 CentOS-Base.repo #

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
字段 含义
base 容器名称,一定要放在[]中
name 容器说明,可以自己随便写
mirrorlist 镜像站点,可以注释掉
baseurl YUM源服务器的地址,默认是CentOS官方的YUM源
enable 此容器是否生效 不写或者写成enable=1表示生效,写成enable=0表示不生效
gpgcheck 如果是1就是指 RPM的数字证书生效,如果是0则表示不生效
gpgkey 数字证书的公钥文件保存位置,不用改

4. 光盘搭建YUM源 #

4.1 挂载光盘 #

mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom

4.2 失效在线yum源 #

cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak

查看YUM源里有哪些安装包

yum list

CentOS-Media.repo

[c6-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

5. YUM命令 #

命令 含义
yum list 查询所有可用软件包列表
yum search 关键字 搜索服务器上所有和关键字相关的包
yum -y install 包名 -y 自动回答yes install安装
yum -y update 包名 -y 自动回答yes update升级
yum -y remove 包名 -y 自动回答yes remove 卸载,卸载有依赖性,所以尽量不要卸载
yum grouplist 列出所有可用的软件组列表
yum groupinstall 软件组名 安装指定的组,组名可以用grouplist查询
yum groupremove 软件组名 卸载指定软件组
yum -y install gcc  安装C语言安装包
yum install update httpd 升级httpd
LANG=en_US
yum grouplist
yum groupinstall "Chinese Support"
LANG=zh_CN.UTF-8

4. 源码包管理 #

4.1 安装方式不同 #

service httpd start
/etc/init.d/httpd start

4.2 安装源码包 #

4.2.1 安装准备 #

4.2.2 安装注意事项 #

4.2.3 安装过程 #

4.2.3.1 下载 #

下载 镜像下载

wget http://archive.apache.org/dist/httpd/httpd-2.2.11.tar.gz
4.2.3.2 解压 #
tar -xzvf httpd-2.2.11.tar.gz
4.2.3.3 进入解压目录 #
cd httpd-2.2.11.tar.gz
4.2.3.4 configure #

软件配置与检查

./configure --prefix=/usr/local/httpd
4.2.3.5 编译和安装 #
make
make install 

安装帮助文件位置

cat /usr/local/src/httpd-2.2.11/INSTALL 这里可以查看安装说明
cat /var/www/html/index.html 这是用YUM或者说rpm安装的httpd
cat /usr/local/httpd/htdocs/index.html  这是用源码安装的httpd
4.2.3.6 源码包的卸载 #

5. 脚本安装包 #

5.1 nginx #

功能 Apache/httpd Nginx
Proxy代理 非常好 非常好
Rewriter 好 非常好
Fcgi 不好 好
热部署 不支持 支持
系统压力比较 很大 很小
稳定性 好 非常好
安全性 好 一般
技术支持 非常好 很少
静态文件处理 一般 非常好
Vhosts虚拟主机 支持 不支持
反向代理 一般 非常好
Session sticky 支持 不支持

5.2 安装lnmp #

下载安装脚本

wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lnmp