2013年3月15日星期五

关于linux yum安装目录笔记



用yum安装apache软件:
yum -y install httpd
安装完成后,来查看理解yum安装软件的过程和安装路径。

首先理解YUM:基于RPM包管理,能够从指定的服务器下载RPM包并自动进行安装;并自动处理依赖关系,并一次性安装所有依赖的包
避免了手动安装的麻烦(寻找资源、下载;放到指定目录安装;处理依赖关系并下载依赖关系的包进行安装)
所以用yum安装,实质上是用RPM安装,所以RPM查询信息的指令都可用。

1.安装完apache后用RPM来查询所有安装有关的路径和文件:
[root@localhost www]# rpm -ql httpd --------------->查询所有安装httpd的目录和文件,列出很多文件目录,把所有目录分开进行讲解
(1). 配置文件放在 /etc下面 /etc/httpd ----------->配置文件根目录
/etc/httpd/conf
/etc/httpd/conf.d /etc/httpd/conf.d/README /etc/httpd/conf.d/proxy_ajp.conf
/etc/httpd/conf.d/welcome.conf /etc/httpd/conf/httpd.conf
/etc/httpd/conf/magic /etc/httpd/logs /etc/httpd/modules/etc/httpd/run
/etc/logrotate.d/httpd
/etc/rc.d/init.d/httpd
/etc/sysconfig/httpd------------->把httpd 基本的配置信息(默认都是注释掉的)
(2). httpd所有的安装程序都安装在/usr目录中;根据不同的部分安装在不同的目录中。
(一). httpd 用的基本用户指令都放在/usr/bin中
/usr/bin/ab /usr/bin/htdbm /usr/bin/htdigest /usr/bin/htpasswd /usr/bin/logresolve
(二).httpd程序需要调用的模块、集成的函数库都放在 /usr/lib目录下
/usr/lib/httpd------------>httpd调用函数库、集成模块的根目录
/usr/lib/httpd/modules
/usr/lib/httpd/modules/mod_actions.so
/usr/lib/httpd/modules/mod_alias.so
...............................
/usr/lib/httpd/modules/mod_vhost_alias.so
(三). httpd所需要的系统命令都放在/usr/sbin/目录下面
/usr/sbin/apachectl /usr/sbin/htcacheclean /usr/sbin/httpd /usr/sbin/httpd.event
/usr/sbin/httpd.worker /usr/sbin/httxt2dbm /usr/sbin/rotatelogs /usr/sbin/suexec
(四). httpd所需要的一些共享文件都安装在/usr/share目录下面
/usr/share/doc/httpd-2.2.3 /usr/share/doc/httpd-2.2.3/ABOUT_APACHE
....................
/usr/share/man/man8/suexec.8.gz
(五). 程序在运行时要改变的数据都安装在/var目录下面,根据内容不同在安装在不同的目录下面
/var/cache/mod_proxy ------------>缓存
/var/lib/dav
/var/log/httpd ------------>日志
(六). apache作为web服务器需要一个发布网页的目录,/var/www就是一个放网页的目录。
--->httpd.conf中默认的目录 DocumentRoot=/var/www/html
/var/www ----------------->web服务器根目录
/var/www/cgi-bin
/var/www/error----------->web服务器的错误相关处理的文件
.............................
/var/www/error/noindex.html
/var/www/html --------------->web服务器静态网络的根目录
/var/www/icons --------------->web服务器调用默认(apache、tomcat)网页需要的图片
/var/www/icons/README
......................................
/var/www/icons/world2.png

2. 用 rpm -qa httpd 查询安装包中所有包含字符串httpdd 的安装包,然后利用此包可以卸载、更新、删除
[root@localhost www]# rpm -qa httpd
httpd-2.2.3-45.el5.centos.1
3. 用 rpm -q httpd 查询系统安装httpd程序的安装包的全名:
[root@localhost www]# rpm -q httpd
httpd-2.2.3-45.el5.centos.1
4. 在用find / -name httpd-2.2.3-45.el5.centos.1 找到安装包在根目录中的路径。

使用YUM安装MySQL 5.5(适用于CentOS6.2/5.8及Fedora 17/16平台)

目前CentOS/Red Hat (RHEL) 6.2官方自带的mysql版本为5.1,mysql5.5已经出来了。本文将指导你如何在CentOS/Red Hat (RHEL) 6.2下安装最新版本的社区版本mysql。如果您要升级mysql,请先备份好你的数据及配置文件再行升级。
让我们开始动手吧。
step1. 切换到root用户
su -

step2. 安装remi软件源---CentOS及Red Hat (RHEL)平台
## Remi Dependency on CentOS 6 and Red Hat (RHEL) 6 ##
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
## CentOS 6 and Red Hat (RHEL) 6 ##
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

step3. 查看MySQL版本号
CentOS 6.2/6.1/6/5.8 and Red Hat (RHEL) 6.2/6.1/6/5.8
yum --enablerepo=remi,remi-test list mysql mysql-server

step4. 安装或升级到MySQL5.5.25
yum --enablerepo=remi,remi-test install mysql mysql-server
step5. 开启mysql服务并配置自启动
/etc/init.d/mysqld start
## OR ##
service mysqld start
chkconfig --levels 235 mysqld on

step6. MySQL 安全设置包括以下几个方面:
设置(修改)root密码
删除匿名用户
禁用root远程登录
删除测试数据库test
重载权限表


要启用MySQL 安全设置请输入以下命令
/usr/bin/mysql_secure_installation

【注】:如果您不想启动MySQL 安全设置命令,但至少也得修改一下root用户密码
mysqladmin -u root password [your_password_here]

step7. 使用密码连接本地数据库
mysql -u root -p

step8. 为指定数据库,指定用户配置指定客户端(IP)远程访问
本示例的配置参数如下:
DB_NAME = webdb
USER_NAME = webdb_user
REMOTE_IP = 10.0.15.25
PASSWORD = password123
PERMISSIONS = ALL


1. 创建数据库 webdb
mysql> CREATE DATABASE webdb;

2. 创建用户webdb_user
mysql> CREATE USER 'webdb_user'@'10.0.15.25' IDENTIFIED BY 'password123';

3.  授权
mysql> GRANT ALL ON webdb.* TO webdb_user@'10.0.15.25';

4.  重载权限表
mysql> FLUSH PRIVILEGES;
step9. 配置防火墙开启3306端口
1. 修改/etc/sysconfig/iptables 文件:
vi /etc/sysconfig/iptables
2. 在COMMIT之前加入以下内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
3. 重启Iptables:
service iptables restart
## OR ##
/etc/init.d/iptables restart
4. 在客户机上测试远程访问数据库:
mysql -h dbserver_name_or_ip_address -u webdb_user -p webdb
********************************************
* 作者:叶文涛
* 链接:在CentOS/Red Hat (RHEL) 6.2/5.8及Fedora 17/16下的安装MySQL 5.5
* 源文:Install MySQL 5.5.25 on Fedora 17/16, CentOS/Red Hat (RHEL) 6.2/5.8
******************转载请注明来源 ***************

RHEL/CentOS/Fedora各种源(EPEL、Remi、RPMForge、RPMFusion)配置


CentOS默认自带CentOS-Base.repo源,但官方源中去除了很多有版权争议的软件,而且安装的软件也不是最新的稳定版。Fedora自带的源中也找不到很多多媒体软件,如果需要安装,必需先添加其他源,如RPMFusion和RPMForge等第三方软件库。

下面GoFace来一一介绍各种第三方软件库,以下软件库适用于与RHEL完全兼容的linux发行版,如CentOS,Fedora,Scientific Linux。Scientific Linux大家可能有点陌生,它与CentOS类似,是RedHat Linux的克隆版,GoFace之前有过介绍:http://blog.51osos.com/linux/scientific-linux/ 。

EPEL源

EPEL,即Extra Packages for Enterprise Linux,是由 Fedora 社区创建维护,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。EPEL中含有大量的软件,对官方标准源是一个很好的补充。
“EPEL (Extra Packages for Enterprise Linux  ) is a Fedora Special Interest Group that creates, maintains, and manages a high quality set of additional packages for Enterprise Linux, including, but not limited to, Red Hat Enterprise Linux (RHEL), CentOS and Scientific Linux (SL).”
请针对不同的版本下载相应的包。

Remi源

Remi源大家或许很少听说,不过Remi源GoFace强烈推荐,尤其对于不想编译最新版的linux使用者,因为Remi源中的软件几乎都是最新稳定版。或许您会怀疑稳定不?放心吧,这些都是Linux骨灰级的玩家编译好放进源里的,他们对于系统环境和软件编译参数的熟悉程度毋庸置疑。
Remi下载地址:http://rpms.famillecollet.com/
您也需要针对不同的版本号下载。

RPMForge源

RPMForgeCentOS系统下的软件仓库,拥有4000多种的软件包,被CentOS社区认为是最安全也是最稳定的一个软件仓库。
RPMForge官方网站:http://repoforge.org/
RPMForge下载地址:

RPMFusion源

如果您现在正在使用Fedora 15,对RPMFusion一定不陌生吧,各种音频软件如MPlayer在标准源中是没有的,一般先安装RPMFusion源,之后就可以放便地yum install各种需要的软件啦。
CentOS官方说RPMFusion软件库里面的软件稳定性不如rpmforge。
RPMFusion官网:http://rpmfusion.org/
Fedora 13, 14 and 15:
su -c ’yum localinstall –nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.
noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm’
RHEL 6/CentOS 6 :
su -c ’rpm -Uvh http://download1.rpmfusion.org/free/el/updates/testing/6/i386/rpmfusion-free-release-6-0.1.noarch.rpm http://download1.rpmfusion.org/nonfree/el/updates/testing/6/i386/rpmfusion-nonfree-release-6-0.1.noarch.rpm’
其他版本请详见:http://rpmfusion.org/Configuration

如何使用各种源

以上源对CentOS等系统完全兼容,但各软件库之间并不能保证完全兼容没有冲突。如果您需要使用以上源,您需要安装yum-priorities插件。安装yum-priorities插件后,您可以给各个源设置优先级priority。一般设置官方标准源优先级为1,最高,第三方推荐>10
priority=N (N为1到99的正整数,数值越小越优先)
[base], [addons], [updates], [extras] … priority=1
[CentOSplus],[contrib] … priority=2
其他第三的软件源为:priority=N (推荐N>10)
#vi 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
priority=1
#released updates
……
#wget http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
#wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
[root@GoGo yum.repos.d]# ls
CentOS-Base.repo       CentOS-Media.repo  epel-testing.repo
CentOS-Debuginfo.repo  epel.repo          remi.repo
vi remi.repo 将[remi] 中的 enabled=0 改成 enabled=1 来启用 remi 源
[root@GoGo yum.repos.d]# rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
[root@GoGo yum.repos.d]# rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-remi
在remi.repo中和epel.repo中添加priority设置即可使用。
本文结束,明天GoFace将给大家介绍使用第三方源配置服务器软件。