本篇的Cent OS,以Cent OS6.3 32位版本为例。
安装Cent OS服务器版,图解,可参考http://linux.chinaitlab.com/set/897498.html,最后选择安装版本时,注意选Minimal了。(Centos切换至桌面:startx 、Centos :Ctrl + Alt + F1切换到桌面)自动获取IP配置
编辑网卡配置文件,命令: vim /etc/sysconfig/network-scripts/ifcfg-eth0 更改ONBOOT=yes 更改BOOTPROTO为: BOOTPROTO=dhcp 其他的如IPADDR、NETMASK等#号注释掉,保存退出 保留如下: DEVICE="eth0" BOOTPROTO="dhcp" HWADDR="00:0C:29:4A:63:51" MTU="1500" NM_CONTROLLED="yes" ONBOOT="yes" 重启网络连接,命令: service network restart 备注:设置静态ip(强烈建议在修改前先备份,这是操作linux的一个好习惯。) 配置IP: vi /etc/sysconfig/network-scripts/ifcfg-eth0 HWADDR="00:0C:29:0E:8F:6E" #虚拟机的物理地址,不要修改 DEVICE="eth0" #描述网卡对应的设备名 BOOTPROTO="static" #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp MTU="1500" NM_CONTROLLED="yes" ONBOOT="yes"#系统启动是否启动此网络连接 USERCTL="no"#非root用户 不可控制 PEERDNS="no"#点对点的DNS TYPE="Ethernet"#类型成为以太网 IPADDR="192.168.1.111"#ip地址 NETMASK="255.255.255.0"#子网掩码 GATEWAY="192.168.1.1"#默认网关 IPV6INIT="no"#禁止IPV6 DNS1="180.168.255.18"#第一个dns服务器 DNS2="116.228.111.118"#第二个dns服务器 配置DNS信息。 cp /etc/resolv.conf /etc/resolv.conf.bak 修改/etc/resolv.conf为如下内容: vi /etc/resolv.conf nameserver 180.168.255.18 nameserver 116.228.111.118 重启网络服务 service network restartc
rpm包的安装:
1.安装一个包:# rpm -ivh 2.升级一个包:# rpm -Uvh 3.移走一个包:# rpm -e 4.安装参数 --force 即使覆盖属于其它包的文件也强迫安装 --nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。 5.查询一个包是否被安装 # rpm -q < rpm package name> 6.得到被安装的包的信息 # rpm -qi < rpm package name> 7.列出该包中有哪些文件 # rpm -ql < rpm package name> 8.列出服务器上的一个文件属于哪一个RPM包 #rpm -qf 9.可综合好几个参数一起用 # rpm -qil < rpm package name> 10.列出所有被安装的rpm package # rpm -qa 1.列出一个未被安装进系统的RPM包文件中包含有哪些文件? # rpm -qilp < rpm package name>
(下面介绍下rpm包安装与卸载)
rpm包的卸载:rpm -qa | grep 包名 这个命令是为了把包名相关的包都列出来 rpm -e 文件名 这个命令就是你想卸载的软件,后面是包名称,最后的版本号是不用打的 例如: # rpm -qa | grep mysql mod_auth_mysql-2.6.1-2.2 php-mysql-5.3.9-3.15 mysql-devel-5.1.77-1.CenOS 5.2 mysql-5.0.77-1.CenOS 5.2 mysqlclient10-5.0.77-1.CentOS 5.2 libdbi-dbd-mysql-0.6.5-10.CentOS 5.2 # rpm -e mysqlclient yum安装:# yum install 包名 yum卸载:# yum -y remove 包名
安装nano编辑器
yum -y install nano
安装SSH
安装:yum install ssh 启动SSH:service sshd start 设置开机运行: chkconfig sshd on 安装好了SSH,就可以用SecureCRT连接服务器了。 备注:有一次我遇到安装完sshd并成功启动后,无法连接centos服务器,查了下资料,设置下/etc目录下的 hosts.deny文件 与hosts.allow文件,分别在文件最后面加上sshd:all,然后重启下sshd,则访问成功。
创建用户
先添加用户组 groupadd wangxin 添加用户 useradd <username> -d <path> -m -g –G –p 常用的就是上面几个参数,意思分别为: -d :指定用户主目录。如果此目录不存在,同时使用 -m 就会创建此目录。 -m :创建用户主目录 -g :用户所属组 ID -G :用户所属组名 -p :登录密码。注意这个登录密码不是明文,是指加密后的密码。 范例:useradd wangxin -m -g wangxin 将会创建一个 wangxin 的用户,并自动创建 /home/wangxin 的用户主目录,并将用户添加至 wangxin 组中。 centos 更新或创建密码命令:passwd wangxin 创建密码时,会提示输入两次 若当前是root用户 su wangxin 就切换到wangxin用户下了。
端口映射
因为考虑下面安装Tomcat及数据,需要进行端口映射,这里先讲 注:默认应该是开启了80端口的,但得注意,linux系统下面,貌似1000以后的端口只有root用户才有操作权限,、 比如,将tomcat安装到wangxin用户下,并且将tomcat的端口8080改为80,则,启动tomcat只能以root账号进行启动, wangxin用户启动报错或提示没有权限。暂时我不知道解决办法。 执行命令: nano /etc/sysconfig/iptables 在下面这一行 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 的下面加上 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT 这里我开启了三个端口,分别是8080,1433,1521,代表Tomcat,Mysql,Oracel的默认端口
安装与配置JDK
下载JDK离线包: http://www.oracle.com/technetwork/java/javase/downloads/index.html 或者:http://download.csdn.net/download/jimhiihi/4521618 a.接下来,登录linux系统,赋予执行权限,命令如下: # chmod -R 775 jdk-6u32-linux-i586.bin b.执行jdk的安装. # ./jdk-6u32-linux-i586.bin 安装过程中,会提示您按回车键,敲回车键即可. 会在linux的当前目录下,产生一个jdk1.6.0_32文件. jdk安装完成. c.配置环境变量. 环境变量的配置分为几种方式,根据自己的选择配置: c.a:在/etc/profile文件中配置JAVA_HOME以及PATH和CLASS_PATH 因为这样的设置将对所以用户的shell都生效,对系统安全会产生影响。 就是在这个文件的最后加上: export JAVA_HOME=/home/wangxin/jdk1.6.0_32 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin c.b:修改.bashrc文件来配置环境变量: #vi .bashrc export JAVA_HOME=/home/wangxin/jdk1.6.0_32 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin
安装Tomcat
下载Tomcat离线包: http://apache.etoak.com/tomcat/tomcat-6/v6.0.35/bin/apache-tomcat-6.0.35.tar.gz 解压 tar zxvf apache-tomcat-6.0.35.tar.gz 到当前目录 在/etc/profile或者.bashrc文件配置下环境变量,最好与JDK的环境变量配置在同一个配置文件 我这里JDK是配置在.bashrc文件,所以Tomcat的环境变量也配置到.bashrc文件 export TOMCAT_HOME=/home/wangxin/apache-tomcat-6.0.35 启动系统后, 在客户端输入http://192.168.138.128:8080 发现不能访问,是因为CentOS系统中,默认iptables防火墙设置的原因,没有允许8080端口 编辑/etc/sysconfig/iptables 加入一行 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT 最后再重启一下service iptables restart
安装mysql
执行命令yum -y install mysql-server安装的过程可能得稍微花点时间,但也不长安装完以后,改下配置,主要是针对编码nano /etc/my.cnf[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sock# Default to using old password format for compatibility with mysql 3.x# clients (those using the mysqlclient10 compatibility package).old_passwords=1 ← 找到这一行,在这一行的下面添加新的规则,让MySQL的默认编码为UTF-8default-character-set = utf8 ← 添加这一行 然后在配置文件的文尾填加如下语句: [mysql]default-character-set = utf8 启动MySQL服务 [root ~]# chkconfig mysqld on ← 设置MySQL服务随系统启动自启动 [root ~]# chkconfig --list mysqld ← 确认MySQL自启动 mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← 如果2--5为on的状态就OK [root ~]#/etc/rc.d/init.d/mysqld start ← 启动MySQL服务 Initializing MySQL database: [ OK ]Starting MySQL: [ OK ]MySQL初始环境设定 [1]为MySQL的root用户设置密码 MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。 [root ~]# mysql -u root ← 用root用户登录MySQL服务器 Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 2 to server version: 4.1.20 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> select user,host,password from mysql.user; ← 查看用户信息+------+------------------------------+---------------+| user | host | password |+------+------------------------------+---------------+| root | localhost | | ← root密码为空 | root | sample.centospub.com | | ← root密码为空| | sample.centospub.com | || | localhost | ||root | % |XXX || | | |+------+------------------------------+---------------+ 4 rows in set (0.00 sec) mysql> set password for 在这里填入root密码'); ← 设置root密码Query OK, 0 rows affected (0.01 sec) mysql> set password for 在这里填入root密码'); ← 设置root密码Query OK, 0 rows affected (0.01 sec)只有设置了这个才可以,才可以通过数据库来安装网址 mysql> set password for ); ← 设置root密码Query OK, 0 rows affected (0.01 sec) mysql> select user,host,password from mysql.user; ← 查看用户信息+------+--------------------------------+--------------------------+| user | host | password |+------+--------------------------------+--------------------------+| root | localhost | 19b68057189b027f | ← root密码被设置| root | sample.centospub.com | 19b68057189b027f | ← root密码被设置| | sample.centospub.com | || | localhost | |+------+--------------------------------+--------------------------+4 rows in set (0.01 sec) mysql> exit ← 退出MySQL服务器Bye 然后,测试一下root密码有没有生效。 [root ~]# mysql -u root ← 通过空密码用root登录 ERROR 1045 (28000): Access denied for user (using password: NO) ← 出现此错误信息说明密码设置成功 [root@localhost ~]# mysql -u root -h sample.centospub.com ← 通过空密码用root登录 ERROR 1045 (28000): Access denied for user (using password: NO) ← 出现此错误信息说明密码设置成功 [root@sample ~]#mysql -u root -p ← 通过密码用root登录Enter password: ← 在这里输入密码 Welcome to the MySQL monitor. Commands end with ; or \g. ← 确认用密码能够成功登录Your MySQL connection id is 5 to server version: 4.1.20Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> exitBye [root@sample ~]# mysql -u root -h sample.centospub.com -p ← 通过密码用root登录Enter password: ← 在这里输入密码 Welcome to the MySQL monitor. Commands end with ; or \g. ← 确认用密码能够成功登录Your MySQL connection id is 6 to server version: 4.1.20 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> exit ← 退出MySQL服务器Bye [2] 删除匿名用户 在MySQL刚刚被安装后,存在用户名、密码为空的用户。这使得数据库服务器有无需密码被登录的可能性。为消除隐患,将匿名用户删除。 [root@sample ~]# mysql -u root -p ← 通过密码用root登录Enter password: ← 在这里输入密码 Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 7 to server version: 4.1.20 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> select user,host from mysql.user; ← 查看用户信息+------+----------------------------+| user | host |+------+----------------------------+| | localhost || root | localhost || | sample.centospub.com || root | sample.centospub.com |+------+----------------------------+4 rows in set (0.02 sec) mysql> delete from mysql.user where user=''; ← 删除匿名用户Query OK, 2 rows affected (0.17 sec) mysql> select user,host from mysql.user; ← 查看用户信息+------+----------------------------+| user | host |+------+----------------------------+| root | localhost || root | sample.centospub.com |+------+----------------------------+2 rows in set (0.00 sec) mysql> exit ← 退出MySQL服务器走完上面流程,mysql基本上安装完成 [3] 配置mysql,让可以远程访问第一步:用帐号登录mysqlmysql -u root第二步:改变用户数据库use mysql并执行下面GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyPassword' WITH GRANT OPTION;在mysql控制台执行命令中的 'root'@'%' 可以这样理解: root是用户名,%是主机名或IP地址,这里的%代表任意主机或IP地址,你也可替换成任意其它用户名或指定唯一的IP地址;'MyPassword'是给授权用户指定的登录数据库的密码;另外需要说明一点的是我这里的都是授权所有权限,可以指定部分权限,GRANT具体操作详情见:http://dev.mysql.com/doc/refman/5.1/en/grant.html 第三步:修改密码,记得密码要用password()函数进行加密,一定不要忘记!!!mysql> update user set password=password('root') where user='root';Query OK, 1 row affected (0.04 sec)Rows matched: 1 Changed: 1 Warnings: 0第四步:刷新权限表mysql> flush previleges;ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘previleges’ at line 1mysql> flush privileges;Query OK, 0 rows affected (0.00 sec) 第五步:退出mysqlmysql> quitBye第六步:对mysql进行重启[root@CentOs5 ~]# service mysqld restart;STOPPING server from pid file /var/run/mysqld/mysqld.pid100421 13:44:03 mysqld endedStopping MySQL: [ OK ]Starting MySQL: [ OK ][1]+ Done mysqld_safe –skip-grant-tables