分类:
2007-06-14 22:31:21
作者:田逸() <开放系统世界> 2006年10期 多年前,sun 微系统公司提出“网络就是计算机”这一著名的口号,从而使得网络的概念逐渐为世人所理解并加速了信息网络化的步伐。今天,信息网络已经无处不在,用性能卓越的solaris 10 来提供各种各样的网络服务,是顺理成章的事情。由于solaris 10 开源的进一步推进,越来越多的软件提供商、软件开发者开始对solaris提供支持,这就意味着在solaris 10下可使用的软件越来越丰富。 solaris 10作为主流的unix操作系统,支持几乎所有流行的网络服务。我们在安装solaris 10的时候,就会把诸如apache、nfs等等这样的网络服务默认安装到服务器中。但是在实际的应用中,一般不采用系统自带的那些网络服务(通过定制安装的方式,选择所需的软件包而取消系统默认的某些包如apache等),在需要的时候下载相应的源码,然后手动安装。与自动安装相比而言,手动安装更灵活一些,也更能满足实际需求。由于不是每个软件都有solaris包提供,也为了顾及其他的unix/linux平台,因此笔者建议尽可能使用二进制源码包来安装。 设置和修改网络参数 相对于linux而言,solaris 的网络设置或修改要麻烦一些。请照下面的步骤来设置或修改网络参数: 1、 查看接口的名字: # ifc ╟a -bash-3.00# ifc -a lo0: flags=2001000849 inet 127.0.0.1 netmask ff000000 iprb0: flags=1000843 inet 192.168.2.16 netmask ffffff00 broadcast 192.168.2.255 ether 0:e:c:9b:cc:80 上面的输出可以看出网络接口的名称为 iprb0. 2、 打开文件/etc/hostname.iprb0,查看对应主机名。本例中只有一个名字sery. # cat /etc/hostname.iprb0 sery 3、 修改文件 /etc/hosts , 把ip地址与主机名影射起来。 4、 修改文件 /etc/netmasks,其形式如下: # the netmasks file associates internet protocol (ip) address # masks with ip network numbers. # # network-number netmask # # the term network-number refers to a number obtained from the internet netwo rk # information center. # # both the network-number and the netmasks are specified in # "decimal dot" notati e.g: # # 128.32.0.0 255.255.255.0 # 192.168.2.0 255.255.255.0 //这行是手动添加的 5、 修改文件/etc/defaultrouter,设置默认网关。只能设置一个默认网关,否则发生混乱。我的例子如下: -bash-3.00# cat /etc/defaultrouter 192.168.2.254 6、 设置dns客户端。由于/etc目录没有文件resolv.c 61.135.154.50”这样的文本行,可以添加3个dns服务器,多了无用。 7、 修改文件 /etc/nsswitch.c file ”改成“hosts: dns file ”。注意中间有空格。这一步必不可少,否则 dns将不起作用。 8、 验证一下网络配置。# ping 看是否正常。 一些准备工作 为了后面的操作更容易和方便,还需要安装一些软件(如wget)以及对环境变量的路径做些更改。 1、 安装软件包wget,此软件用来从远程网站下载文件到用户的当前目录;通过比较,wget的下载比用windows 的下载工具要快很多。由于系统本身没有默认安装wget,这里需要我们手动安装它。到网站 下载包wget-1.10.2-sol10-x86-local.gz(用windows工具下载),然后通过ssh客户端工具 ssh secure file transfer client把文件传输到solaris 服务器;远程登陆到 solaris10 ,在包wget-1.10.2-sol10-x86-local.gz所在的目录执行命令 # gzip ╟d wget-1.10.2-sol10-x86-local.gz , 安装包 # pkgadd ╟d wget-1.10.2-sol10-x86-local。 2、 设置环境变量之路径。solaris 10 默认的环境变量不太符合实际的需求,使用者有必要对它进行修改;常见的情况就是设置path(路径)。实验一下:执行命令 # make 系统提示 “make command not found”,但实际上命令是存在的,不信你用 # find / -name make搜。请按照笔者的样式设置path, -bash-3.00# echo $path /usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/ccs/bin:/usr/openwin/bin:/usr/sfw/bin 修改文件/etc/profile,把上面的输出行追加到文件,保存后运行 # source /etc/profile 使环境变量的修改生效。这时我们在运行刚才的命令 # make 输出如下内容“make: fatal error: no arguments to build”,这没关系,只是说明命令后面没有带参数而已,同时也说明路径的设置是正确无误的。 现在一切都准备就绪,接着我们就来向大家介绍几个solaris 10主要的网络服务。 web 服务apache 到目前为止,web服务仍然是internet上数量最大的网路服务。有为数众多的web服务器软件,但出于领导地位的当属开源软件apache,它占据了web服务器70%以上的份额。 1、 取得apache的安装包。 # wget ,笔者一般习惯在/root目录执行命令wget,也意味把软件包下载到目录/root。solaris 10系统本来没有目录/root,这个目录是手工创建的,通过修改文件/etc/passwd把root用户的主目录设置为/root(默认是根目录 / ),然后修改/root目录权限为 700。 2、 解压解包。在下载文件的目录(这里是/root)运行 # gzip ╟d httpd-2.2.3.tar.gz,命令完成后再执行 # tar xvf httpd-2.2.3.tar。 3、 配置、编译、安装apache.执行命令 # cd httpd-2.2.3 切换到解压生成的目录httpd-2.2.3,然后查看一下目录,看是否有关于安装方面的帮助文件如install或readme,有幸的是,在目录下有这两个文本文件,打开install文件可以得到软件包的安装方法。 从这个install文件可以得到apache在unix中的快速安装启动等方法。接着我们就在当前目录执行命令 # ./c ╟prefix=/usr/local/apache2 ╟enable-so 。说明:c # make ; make install 等一段时间就可正常完成apache 的安装。 4、 修改配置文件/usr/local/apache2/conf/httpd.c 5、 修改完配置文件以后,需要用命令apachectl检查是否有语法错误。执行命令# /usr/local/apache2/bin/apachect ╟t ,没有语法错误方可启动apache服务。 6、 启动和停止apache服务。启动apache服务真的是一项有趣的事情,运行命令 # /usr/local/apache2/bin/apachect start启动apache .怎么知道 apache按照我们的意愿启动起来呢?需要验证一下。方法一:查看apache进程,命令是 # ps ╟aef |grep httpd。方法二:在另外一个windows机器的浏览器输入solaris服务器的ip地址,能正常显示页面内容就表明成功了。经验表明,apache不能正常启动的最主要的原因就是配置文件修改得不正确。一个建议就是在修改配置文件前先给它在同一个目录(这里是c # /usr/local/apache2/bin/apachectl stop即可。 mysql数据库服务 mysql数据库是一个在linux下很受欢迎的数据库服务器,对于solaris 10这个操作环境,mysql也是支持的-mysql有针对solaris平台的安装包,在本案中,我们采用mysql的二进制源码来安装。 1、 下载源码安装包。# wget 2、 解包解压mysql。# gzip ╟d mysql-4.1.21.tar.gz , # tar xvf mysql-4.1.21.tar。 3、 切换目录,执行配置操作。# cd mysql 4.1.21 , # 。/c ╟prefix=/usr/local/mysql。 4、 编译安装. # make ;make install。 5、 添加mysql用户及组。# groupadd mysql ,# useradd ╟g mysql mysql。 6、 更改目录属主。切换到目录 /usr/local/mysql ,运行命令 # chown ╟r mysql:mysql lib。 7、 初始化数据库。# /usr/local/mysql/bin/mysql_install_db ╟user=mysql。下面是初始化的截图: 8、 启动mysql服务. # /usr/local/mysql/bin/mysqld_safe ╟user=mysql &。 9、 验证mysql服务是否正常启动。先查看进程 # ps ╟aef | grep mysql ,发现mysql进程确实在运行后,再用mysql的客户端程序连接测试 # /usr/local/mysql/bin/mysql ╟u root 。因为初始的mysql的用户root没有设置密码,直接就可以连接到mysql服务器.只要mysql的提示符 “mysql > ”出现了,就可以认为mysql服务是正常的。 10、 其他的操作。与linux下的操作完全相同,不再多叙。 11、 关闭mysql服务。 # /usr/local/mysql/bin/mysqladmin shutdown。 提示:mysql的某些版本如mysql-standard-5.0.18-linux-i686-glibc23.tar.gz不需要配置、编译、安装这些过程,解包解压后直接初始化数据库。 nfs(网络文件系统) 前面的两个网络服务都是第三方提供的开源软件,但nfs(network file system)却是sun公司自家东西。由于nfs已经被默认的安装到solaris 10,因此不需要手动安装它。笔者曾尝试安装二进制源码的nfs包,但花费了很多精力却不太如愿。 1、共享文件系统。语法基本格式 share ╟f nfs ╟o <用户权限> <共享的目录>。下面是一个共享目录 /export/home/sery的例子: # share ╟f nfs rw=192.168.10.0/24 /export/home/sery //把目录/export/home/sery开放给网段 192.168.10.0 共享,该网段的用户对共享目录具有读写权限。 2、启用nfs服务。默认情况下,solaris 10 的nfs服务是启动的,使用命令 # svcs ╟a | grep nfs来查看其状态是否在线( # svcadm enable svc:/network/nfs/server:default,命令执行完后再查一下看nfs是否 3、在客户端挂接共享目录.可以在solaris 环境挂接也可以在linux下挂接,不管在那种情况下挂接,都得先启用nfs客户端程序,然后再用mount命令来挂接。solaris nfs客户端有两个守护进程--/usr/lib/nfs/statd、/usr/lib/nfs/lockd,而linux则需启用portmap服务(# service portmap start),接下来我们来挂接第一步给出的共享: # mount ╟f nfs 192.168.10.20:/export/home/sery /mnt/nfs //把远程服务器192.168.10.20的目录/export/home/sery挂接到本机目录/mnt/nfs上 在客户端执行挂接操作时,应使用root帐号来进行,但这个root对于远程nfs服务器的共享目录而言,它仅仅是nfs服务器的低权限帐号(nobody:x:60001:60001:nfs an access user:/:),因此还得在 nfs服务器端给id为60001的帐号读写权限才可以在客户端读写这个挂接目录,这个是很容易被初学者忽略的地方,也是为什么不能正确执行mount挂接的直接原因,请记住:系统权限一定大于应用程序的权限。 在设置共享目录的那步,如果solaris 10重新启动以后,配置就不再有效了,为了让配置一直有效,需要把它写到文件里。solaris10的文件路径是 /etc/dfs/dfstab(linux系统是 /etc/export),把需要共享的命令行添加到文件中即可。 |