Red Hat Linux基本知识
一、
安装
Rad Hat Linux
1.1
准备工作
1.1
准备工作
Rad Hat Linux
一共有四张安装光盘
1.2
安装
插入第一张光盘,启动电脑,自动运行安装,如果不行可以从
BIOS
下改为从光盘启动即可。在安装的过程中需要对磁盘进行分区,一般环境下,划分三个分区:交换分区
(swap)
用做系统的虚拟内存,一般是物理内存的两倍;引导分区
(/boot)
存放
Linux
内核文件,最小
128M
;根分区
(/)
存放其它文件。
第一张光盘安装完毕会提示插入第二张光盘,依次类推,直到安装完毕。在安装的过程中会提示输入用户名、密码、配置网络(也可以装完后再配置)、选择需要安装的程序和服务等等,根据提示操作即可。
二、网络配置
2.1
配置IP地址
在RedHat中,系统网络设备的配置文件保存在“/etc/sysconfig/network-scripts”目录下,ifcfg-eth0包含第一块网卡的配置信息,ifcfg-eth1包含第二块网卡的配置信息。
输入命令:vi /etc/sysconfig/network-scripts/ifcfg-etho
下面是“/etc/sysconfig/network-scripts/ifcfg-eth0”文件的示例:
DEVICE=eth0
IPADDR=61.138.209.249
NETMASK=255.255.255.0
GATEWAY=61.138.209.1
BROADCAST=61.138.209.255
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
若希望手工修改网络地址或在新的接口上增加新的网络界面,可以通过修改对应的文件(ifcfg-ethN)或创建新的文件来实现。
DEVICE=name
name表示物理设备的名字
IPADDR=addr addr表示赋给该卡的IP地址
NETMASK=mask mask表示网络掩码
GATEWAYK=addr addr表示网管
BROADCAST=addr addr表示广播地址
ONBOOT=yes/no
启动时是否激活该卡
BOOTPROTO=none
none:无须启动协议
bootp:使用bootp协议
dhcp:使用dhcp协议
USERCTL=yes/no
是否允许非root用户控制该设备
修改完毕后输入:wq保存修改。
2.2
配置域名
该文件为:/etc/resolv.conf
输入命令:vi /etc/resolv.conf
nameserver 61.166.150.101
nameserver 202.98.160.68
输入命令::wq保存退出
2.3
启动/停止网络
启动网络:/etc/rc.d/init.d/network start
停止网络:/etc/rc.d/init.d/network stop
重启网络:/etc/rc.d/init.d/network restart
查看网络配置 ifconfig
查看网络接状态 netstat
2.4
测试网络
输入 ping 61.138.209.4 查看网络是否连通,再输入ping www.yninfo.com查看域名是否配置成功。
经过测试,网络配置成功,也可以直接用命令netconfig配置网络,是界面操作。
三、VSFTP安装配置
3.1
安装VSFTP
系统安装时选择安装FTP Server,或者系统安装之后使用VSFTP的RPM软件包进行安装或升级
3.2
文件配置
先增加一个flcandclf的用户,密码为123456
输入命令:useradd flcandclf增加用户,输入命令:passwd flcandclf执行后会提示输入密码123456,到此用户增加完毕。
配置文件vsftpd.conf在/etc/vsftpd/vsftpd.conf
输入命令:vi /etc/vsftpd/vsftpd.conf
相关参数如下:
anonymous_enable=YES 是否允许匿名ftp,如否则选择NO
local_enable=YES 是否允许本地用户登录
local_umask=022 默认的umask码
anon_upload_enable=YES 是否允许匿名ftp用户访问
anon_upload_enable=YES 是否允许匿名上传文件
anon_mkdir_write_enable=YES 是否允许匿名用户有创建目录的权利
dirmessage_enable=YES 是否显示目录说明文件,默认是YES但需要收工创建.message文件
xferlog_enable=YES 是否记录ftp传输过程
connect_from_port_20=YES 是否确信端口传输来自20(ftp-data)
chown_upload=YES
chown_username=username 是否改变上传文件的属主,如果是需要输入一个系统用户名,你可以把上传的文件都改成root属主
xferlog_file=/var/log/vsftpd.log ftp传输日志的路径和名字默认是/var/log/vsftpd.log
xferlog_std_format=YES 是否使用标准的ftp xferlog模式
idle_session_timeout=600 设置默认的断开不活跃session的时间
data_connection_timeout=120 设置数据传输超时时间
nopriv_user=ftpsecure
运行vsftpd需要的非特权系统用户默认是nobody
async_abor_enable=YES
是否允许运行特殊的ftp命令async ABOR
ascii_upload_enable=YES
ascii_download_enable=YES 是否使用ascii码方式上传和下载文件
ftpd_banner=Welcome to chenlf FTP service. 定制欢迎信 息
deny_email_enable=YES
banned_email_file=/etc/vsftpd.banned_emails 是否允许禁止匿名用户使用某些邮件地址,如果是输入禁止的邮件地址的路径和文件名
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list 是否将系统用户限止在自己的home目录下,如果选择了yes那么chroot_list_file=/etc/vsftpd.chroot_list中列出的是不chroot的用户的列表
max_clients=Number
如果以standalone模式起动,那么只有$Number个用户可以连接,其他的用户将得到错误信息,默认是0不限制。
输入命令::wq保存退出,重新启动sftp服务
/etc/init.d/vsftpd restart
3.3
测试
ftp
输入
ftp
地址、用户名、密码,登陆成功,把
httpd-2.0.53.tar.gz
,
mysql-4.1.9.tar.gz
,
php-4.3.10.tar.gz
,
ZendOptimizer-2.5.10a-linux-glibc23-x86_64.tar.gz
等文件上传到用户目录
flcandclf
目录下。
四、
MySQL
安装配置及使用
4.1
安装
首先添加用户并创建一个/app的目录用于安装mysql:
cd /
mkdir /app
创建目录
groupadd mysql
创建用户组
useradd -g mysql mysql
创建用户mysql
进入安装文件所在目录:
cd /home/flcandclf/
然后解压文件:
tar xvzf mysql-4.1.9.tar.gz
解压后生成mysql-4.1.9目录,我们进入该目录:
cd mysql-4.1.9
进入后就开始配置mysql了,配置过程中我们要给mysql设置一个安装目录,我们设置在 /app/mysql 下,因为把文件放到一个地方比较容易管理,如果你还想获得更多的配置信息,使用 ./configure --help:
在这里我要特别强调在 编译的时候要选择好MYSQL的默认编码,因为如果不选择按默认安装的时候在JSP中就不支持GBK编码了
所以我这样编译
./configure --prefix= /app/mysql --with-charset=gbk
然后等几秒钟,配置完成后就编译源代码
make
这个编译的过程比较长,如果机器比较慢的话,可能要近二十分种左右,编译完成后就安装:
make install
等上几秒钟,安装完成.下面就到了最关键的部分了,为什么老安装不成功 ,问题关键就在这里,访问mysql要一个专门的用户,而且必须给相应的访问权限,这里我们就设置root和mysql有权限访问。用户在一开始的时候已经建好,所以直接初始化表 (注意:必须先执行本步骤后才能进行以下步骤)就可以了:
./scripts/mysql_install_db --user=mysql
初试化表并且规定用mysql用户来访问初始化表以后就开始给mysql和root用户设定访问权限, 我们先到安装mysql的目录:
cd /app/mysql
然后设置权限
chown -R root .
设定root能访问 /app/mysql
chown -R mysql var
设定mysql用户能访问 /app/mysql/var ,里面存的是mysql的数据库文件
chown -R mysql var/.
设定mysql用户能访问 /app/mysql/var下的所有文件
chown -R mysql var/mysql/.
设定mysql用户能访问 /app/mysql/var/mysql下的所有文件
chgrp -R mysql .
设定mysql组能够访问 /app/mysql
设置完成后,基本上就装好了,好了,我们运行一下我们的mysql:
/app/mysql/bin/mysqld_safe --user=mysql &
如果没有问题的话,应该会出现类似这样的提示:
[1] 42264
Starting mysqld daemon with databases from /app/mysql/var
这就证明你安装成功了
4.2
修改密码
用如下命令修改MYSQL密码,默认安装密码为空,为了安全你必须马上修改
cd /app/mysql/bin
./mysqladmin
–
h localhost.localdomain
–
u root password ‘123456’
现在修改的密码为:123456
4.3
启动或者停止mysql
启动:
/app/mysql/bin/mysqld_safe --user=mysql &
如果mysql的进程已经启动他会提示A mysqld process already exists,表明mysql进程已经存在,否则会提示
[1] 42264
Starting mysqld daemon with databases from /app/mysql/var
启动成功。
停止:
/app/mysql/bin/mysqladmin shutdown
执行命令后输入查看进程命令看
mysql
进程是否已经关闭:
ps –ax
查看后
mysql
的进程已经关闭。
启动
mysql
,再查看
mysql
进程,
mysql
已经启动
如果你为
MySQL Administrator root
帐号(非作业系统的
root
)设了密码,要停止
MySQL
则必须像下列这样做,
MySQL
会询问你
root
的密码后才会执行
shutdown
的工作:
/app/mysql/bin/mysqladmin -u root -p shutdown
自动启动mysql
vi /etc/rc.d/rc.local
在后面增加一行启动mysql的命令如下:
/app/mysql/bin/mysqld_safe –user=mysql
按Esc键,输入:wq保存退出。
重启系统:
reboot
等系统启动后再查看进程,mysql进程已经存在,表明mysql自动启动成功。
4.4 mysql
常用管理及使用
MySQL
提供了许多工具
(
Client Tools
)来与
MySQL
资料库
Server
连线,其中最主要的为
mysql
交谈式连线工具与
mysqladmin
公用程式,大部份时候使用者会用
mysql
来和资料库
Server
交谈。底下就以
mysql
连线工具和
mysqladmin
来介绍如何维护与使用
MySQL
。
4.4.1
mysql
连线工具
使用
mysql
与
MySQL
资料库
Server
连线:
# /app/mysql/bin/mysql -u root mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 133 to server version: 4.1.9-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.mysql>
在下了
/app/mysql/bin/mysql -u root mysql
指令,指定以
root
帐号并开启
mysql
系统资料库,连线至
MySQL
后,会看到一些提示讯息与
mysql
工具的提示符号,以后大部份的工作皆在此提示符号下完成。
更改
MySQL
系统管理者
root
密码:
mysql> update user set password=password(‘123456’) where user='root';
注意:密码为
123456
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
注意每个指令后要加上一个分号
";"
才会让
mysql
开始执行
。而第二道指令会让已载入记忆体的
mysql
系统资料库更新,最后离开
mysql
工具程式。
在更新
root
密码后,日后要与
MySQL
连线的方法为:
/app/mysql/bin/mysql -u root –p123456
注意:
-p
与密码之间不能加空格
,
不过加了空格也没关系,只是他还会提示你输入密码,这样的效果就跟以下的命令一样了
或者是这样,让
mysql
询问
root
的密码:
/app/mysql/bin/mysql -u root -p
输入密码就可以进入mysql,密码为上面更改的密码123456
资料库维护:
接下来,我们以简单的通讯录资料库作为例子,来介绍如何用
mysql
工具程式来做资料库的维护(新增、授权、资料表维护等)。
首先,以
MySQL root
帐号连线后建立一
addbook
资料库:
/app/mysql/bin/mysql -u root -p123456
create database addbook;
指定使用
addbook
资料库,并建立一个
friends
资料表:
use addbook;
create table friends(name char(15),telephone varchar(20),icq char(10),address varchar(30));
注意:在使用此命令以前一定要先使用
use addbook
命令,否则系统会提示没有可选的数据库。
新增几笔资料,并查询看看:
insert into friends(name,icq,telephone,address) values("dafen","14081796","3819453","kunming");
insert into friends(name,icq,telephone,address) values("flcandclf","410703589","13888660016","beijing");
select * from friends;
+-----------+-------------+-----------+---------+
| name | telephone | icq | address |
+-----------+-------------+-----------+---------+
| dafen | 3819453 | 14081796 | kunming |
| flcandclf | 13888660016 | 410703589 | beijing |
+-----------+-------------+-----------+---------+
其他sql语句笔者自己去尝试看看结果。
最后,建好资料库与资料表后,把
addbook
资料库中所有资料表的使用权限(
select
、
insert
、
update
、
delete
)授权给
dafen@localhost
(再次提醒,此处的
dafen
为
MySQL
的使用者帐号,而非作业系统的
dafen
帐号):
grant select,insert,update,delete on addbook.* to dafen@localhost identified by '123456';
grant all privileges on addbook.* to dafen@localhost identified by '123456';
(授予所有权限)
quit
退出后用dafen用户登陆mysql
/app/mysql/bin/mysql -u dafen -p123456 addbook
mysql> status
--------------
/app/mysql/bin/mysql Ver 14.7 Distrib 4.1.9, for pc-linux-gnu (i686)
Connection id: 146
Current database: addbook
Current user: dafen@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 4.1.9-log
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: gbk
Db characterset: gbk
Client characterset: gbk
Conn. characterset: gbk
UNIX socket: /tmp/mysql.sock
Uptime: 1 day 52 min 27 sec
Threads: 1 Questions: 53 Slow queries: 0 Opens: 14 Flush tables: 2 Open tables: 3 Queries per second avg: 0.001
然后输入几条sql语句查看一下dafen用户是否拥有相关权限。
收回资料库使用权限的方法如下(以
MySQL root
进入):
mysql> revoke delete on addbook.* from dafen@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> revoke all privileges on addbook.* from dafen@localhost;
Query OK, 0 rows affected (0.00 sec)
第二个指令用来收回全部的权限。
注意:授权和收回权限都是在
root
用户登陆进
mysql
进行的。
4.4.2
mysqladmin
公用程式的使用
mysqladmin
公用程式可用来维护
MySQL
比较一般性的工作(新增、删除资料库、设定使用者密码及停止
MySQL
等等),详细的说明可以使用
mysqladmin --help
来查看。(以本文的安装为例
mysqladmin
位於
/app/mysql/bin/mysqladmin
)。
新增资料库
dbtest
# /app/mysql/bin/mysqladmin -u root -p create dbtest
Enter password:
Database "dbtest" created.
删除资料库
# /app/mysql/bin/mysqladmin -u root -p drop dbtest
Enter password:
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
Do you really want to drop the 'dbtest' database [y/N]
y
Database "dbtest" dropped
设定使用者密码(将
dafen
的密码改为
7654321
,
mysqladmin
会先询问
dafen
的原密码)
# /app/mysql/bin/mysqladmin -u dafen -p password 7654321
Enter password:
停止
MySQL
服务
# app/mysql/bin/mysqladmin -u root -p shutdown
Enter password:
注意,
shutdown MySQL
后,必须由作业系统的
root
帐号执行下列指令才能启动
MySQL
:
/app/mysql/bin/mysqld_safe --user=mysql &
五、Apache、Php、Zend 安装配置
5.1
安装Apahce
tar xvzf httpd-2_0_52.tar.gz
cd httpd-2_0_52
./configure --prefix=/app/httpd-2.0.52 --enable-so
make
make install
5.2
安装PHP
tar xvzf php-4.3.10.tar.gz
cd php-4.3.10
./configure --prefix=/app/ php-4.3.10
--with-apxs2=/app/httpd-2.0.52/bin/apxs --with-mysql
make
make install
cp php.ini-dist /app/ php-4.3.10/lib/php.ini
vi /app/httpd-2.0.52/conf/httpd.conf
,
增加一行AddType application/x-httpd-php .php
5.3apache
自动启动
从/app/apache/bin/apachectl 到 /etc/rc.d/init.d/httpd 建立一个符号连接:
ln -s /app/apache/bin/apachectl /etc/rc.d/init.d/httpd
(上面的这一步也可以用cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd)
然后在此文件(/app/apache/bin/apachectl)总添加以下几行(大概在文件顶部,约第二行的地方):
# chkconfig: 345 86 86 86
# description: apache
(
上面的#不能省去)
最后,运行chkconfig把Apache添加到系统的启动服务组里面:
chkconfig --del httpd
chkconfig --add httpd
chkconfig httpd on
chkconfig httpd off
5.4apache
配置文件httpd.conf详解
Apache
的
httpd.conf
文件常用指令解释
此文件在
/app/apache/conf
目录下
ServerType standalone
#
设置服务器的形式是单独启动(
standalone
),还是借由互联网络伺服程序
inetd
来启动。一般使用前者。
ServerRoot "/usr/local/apache"
#
设置服务器的
Home
目录,用来存放服务器的设置文件、错误文件、记录文件。
PidFile logs/httpd.pid
#
程序启动时,把父进程
httpd
的进程号(
process id
)存在这个文件中。这个文件名可以配合
PidFile
指令加以改变。
ScoreBoardFile logs/apache_status
#
设置网络上
WWW
服务器一些执行程序的记录文件。
#ResourceConfig conf/srm.conf
#AccessConfig conf/access.conf
#
这两个文件的内容已经包含在
httpd.conf
文件中了。
Timeout 300
#
如果客户端
300
秒还没有连上,或者服务器
300
秒还没有传送数据到客户端,就会自动断线。
KeepAlive On
#
设置是否支持续传功能。
MaxKeepAliveRequests 100
#
设置支持续传功能的数目。数目越多则浪费的硬盘空间越多。设置为
0
则不止持续传。
KeepAliveTimeout 15
#
如果该为使用者在
15
秒后还没有向服务器发出要求,则他在不能续传。
MaxRequestsPerChild 0
#
设置同时间内
child process
数目。
ThreadsPerChild 50
#
设置服务器使用进程的数目。
#Listen 3000
#Listen 12.34.56.78:80
#
允许使用其它的
Port
或
IP
访问服务器。此例中
Port
为
3000
,
IP
为
12.34.56.78:80
。
#BindAddress *
#
设置
Apache
监听所有的
IP
,也可以具体的指定。
#LoadModule anon_auth_module modules/ApacheModuleAuthAnon.dll
#
打开当前未激活预定以的模块。
#ExtendedStatus On
#
设置服务器产生的状态信息。
Port 80
#
设置服务器使用的
Port
。
ServerAdmin you@your.address
#
设置服务器管理者的
E-Mail
地址。
#ServerName new.host.name
#
服务器的主机名。如果你有固定的
IP
地址,则不需要设置。
DocumentRoot "/usr/local/apache/htdocs"
#
设置存放站点
html
文件的目录。
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#
设置
/
目录的指令。具体地说明:
Option
:定义在目录内所能执行的操作。
None
:表示只能浏览,
FollowSymLinks
:允许页面连接到别处,
ExecCGI
:允许执行
CGI
,
MultiViews
:允许看动画或是听音乐之类的操作,
Indexes
:允许服务器返回目录的格式化列表,
Includes
:允许使用
SSI
。这些设置可以复选。
All
:则可以做任何事,但不包括
MultiViews
。
AllowOverride
:加
None
参数表示任何人都可以浏览该目录下的文件。
另外的参数有:
FileInfo
、
AuthConfig
、
Limit
。
UserDir public_html
#
定义使用者存放
html
文件的目录。
DirectoryIndex index.html
#
定义首先显示的文件。
AccessFileName .htaccess
#
定义每个目录访问控制文件的名称。
#CacheNegotiatedDocs
定义代理服务器不要
Cache
你的页面。不建议使用。
UseCanonicalName On
#
服务器使用
ServerName
指定的服务器名和
Port
指定的端口地址。
5.5Zend
安装
进入到解压目录,直接运行./install.sh,照着提示一步步安装即可。
六、安装配置jdk
6.1
安装jdk
下载自解压二进制JDK安装包j2sdk-1_4_2_07-linux-i586.bin
把jdk安装到 /app
把文件复制到安装目录j2sdk1.4.2_07
cp /home/flcandclf/j2sdk-1_4_2_07-linux-i586.bin /app
进入到安装目录设置j2sdk-1_4_2_06-linux-i586.bin为可执行并运行安装程序
cd /app
chmod a+x j2sdk-1_4_2_07-linux-i586.bin
./j2sdk-1_4_2_06-linux-i586.bin
一直摁住ENTER键,直到提示是否接受协议的时候输入yes即可安装完成
6.2
安装Tomcat
下载二进制Tomcat安装包jakarta-tomcat-5.0.29.tar.gz
把tomcat安装到/app目录下,复制jakarta-tomcat-5.0.29.tar.gz
到/app目录下
进入到Tomct安装的目录
cd /app
解压jakarta-tomcat-5.0.29.tar.gz
tar xvzf jakarta-tomcat-5.0.29.tar.gz
增加JAVA_HOME环境变量
vi /app/ jakarta-tomcat-5.0.29/bin/catalina.sh
在#!/bin/sh后增加一行JAVA_HOME="/app/j2sdk1.4.2_07"
6.3
启动/停止Tomcat
启动Tomcat
/app/jakarta-tomcat-5.0.29/bin/startup.sh
停止Tomcat
/app/jakarta-tomcat-5.0.29/bin/shutdown.sh
自动启动Tomcat
vi /etc/rc.d/rc.local
增加一行/app/jakarta-tomcat-5.0.29/bin/startup.sh
如果安装成功的话会有如下提示信息:
Using CATALINA_BASE: /app/jakarta-tomcat-5.0.29
Using CATALINA_HOME: /app/jakarta-tomcat-5.0.29
Using CATALINA_TMPDIR: /app/jakarta-tomcat-5.0.29/temp
Using JAVA_HOME: /app/j2sdk1.4.2_07
6.4 Tomcat
基本配置
6.4.1
修改HTTP监听端口
vi /app/jakarta-tomcat-5.0.29/conf/server.xml
找到下面的配置项
<Connector
port="8080"
maxThreads="150"
minSpareThreads="25"
maxSpareThreads="75"
enableLookups="false"
redirectPort="8443"
acceptCount="100"
debug="0"
connectionTimeout="20000“
disableUploadTimeout="true" />
安装时Tomcat在8080端口监听HTTP连接,把8080改为80.
6.4.2
禁止在没有索引文件时浏览目录
vi /app/jakarta-tomcat-5.0.29/conf/web.xml
找到下面的配置项
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
把listings参数值改为false
posted on 2006-03-28 13:47
xnabx 阅读(556)
评论(0) 编辑 收藏 所属分类:
Linux/Unix