您的位置:首页 > 运维架构 > Tomcat

在64位linux上安装tomcat、jdk,及使用smb设置文件共享

2014-03-13 22:06 826 查看
一、安装jdk

1、下载jdk7安装包:jdk-7u21-linux-x64.tar.gz

2、将其通过优盘(移动硬盘太大、可能不支持)拷贝到linux机器的home目录上;插上后,linux机会自动弹出u盘内容的浏览界面,若没有,则尝试机器的其他usb口。

3、在terminal终端上,进入home目录,运行命令 tar zxvf jdk-7u21-linux-x64.tar.gz,会出现一系列解压缩信息;完毕后,在当前home目录出现jdk.1.7.0_21文件夹。

cd /home

tar zxvf jdk-7u21-linux-x64.tar.gz

注:rpm安装包运行如下命令安装(举例):

rpm -ivh linuxqq-v1.0.2-beta1.i386.rpm
rpm.bin或者.bin安装包安装命令如下:

./jdk-6u7-linux-i586.bin


4、配置jdk环境变量:

terminal终端输入:gedit ~/.bashrc ,将下面的设置添加到文件末尾(一般在fi后面)

export JAVA_HOME=/home/jdk.1.7.0_21
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
注意:假如在windows上使用记事本保存上述配置,不能直接拷贝到linux的bashrc用户环境变量中,使用gedit编辑器看不出区别,使用vi编辑即可看出每行最后有意外的字符(^M);将该字符删除,在linux的任意文本编辑器里重新换行即可。

若上述问题不解决,当运行tomcat时在其日志里会报错:no such file or directory...

5、测试:重新打开终端,输入javac,及java均出现一系列输出即表示jdk安装好了。

二、安装tomcat

1、下载tomcat:apache-tomcat-6.0.39.tar.gz

2、将其拷贝到home目录下,运行解压缩 命令进行解压缩,命令如下:

cd /home/
tar zxvf apache-tomcat-6.0.39.tar.gz


3、测试:打开终端,启动tomcat,命令如下:

cd /home/apache-tomcat-6.0.39/bin

./startup.sh


和windows不同,不会打印信息,直接结束,此时需要进入logs目录,查看日志,命令如下:

cd /home/apache-tomcat-6.0.39/logs

tail -100f catalina.out

若无异常信息输出,且最后一行为
Server startup in
xxx
ms
则为启动成功。

4、如何设置tomcat开机自启动

命令行编辑配置文件,命令如下:

gedit  /etc/rc.d/rc.local
在文件最后添加如下命令,注意windows换行符与linux的差异

export JAVA_HOME=/usr/java/jdk.1.7.0_21
/app/local/tomcat6.0/bin/startup.sh start


保存,终端输入命令,查看该文件是否可执行:

ll /etc/rc.d/rc.local


若出现rwxr-xr-x ....,则表示当前root用户有执行(rwx中的x)权限。

若无,则输入以下命令添加执行权限:

chmod +x  /etc/rc.d/rc.local
即可。

三、使用smb设置文件共享

1、查看是否安装了smb,运行如下命令:

rpm -qa samba | grep 'samba'
若输出smb的版本信息,则说明安装成功,否则没安装,需要单独下载smb及其依赖的安装包(http://download.csdn.net/detail/zxnlmj/7041499/),进行安装。

2、若已安装,则执行启动命令,启动smb服务:

service smb start
3、设置共享文件夹,修改smb的配置文件,设置共享,具体如下:

打开配置文件:

vi /etc/samba/smb.conf
或者使用gedit打开:

gedit /etc/samba/smb.conf
在其share definitons下面添加如下配置:

[request]
path = /request
browseable = yes
writeable = yes
guest ok = yes

[response]
path = /response
browseable = yes
writeable = yes
guest ok = yes
path:要共享的文件夹,browseable:是否可读,writeable:是否可写,guest ok:允许guest访问

添加smb账户,即为共享文件夹添加用户名、密码验证(随意取):

smbpasswd -a smbuser
提示输入密码,及确认密码,输入即可。

注意:若出现failed to add entry..,则表示添加失败:需要先建立组和用户:如下:

groupadd smbuser -g 6000
useradd smbuser -u 6000 -g 6000
-g与-u表示组合用户的识别码,组识别码位>=500,用户识别码>=1000,useradd后的-g表示该用户添加到哪个群组

然后,再次执行
smbpasswd -a smbuser
即可成功添加smb用户。

4、测试

终端输入:

smbclient //172.16.130.89/request -U smbuser
若出现 “tree connect failed: NT_STATUS_BAD_NETWORK_NAME“错误,可从两个原因入手:

(1)、设置的共享文件夹不存在,或者名称不对应。

(2)、seLinux:安全增强式Linux(SELinux, Security-Enhanced Linux)是一种强制存取控制(mandatory access control)的实现

可能是seLinux设置阻碍访问。

终端输入:

getenforce
若输出enforcing=1,则表示seLinux为enforcing模式(违反了策略,你就无法继续操作下去);

需要设置为permissive=0模式(即使你违反了策略的话它让你继续操作,但是会记录违反的内容)

setenforce 0
然后,再次测试:
smbclient //172.16.130.89/request -U smbuser
即可成功进行访问。

(3)、如何设置seLinux开机即为permissive模式:

gedit /etc/sysconfig/seLinux

将SELINUX = Enforcing (默认) 改为Permissive ,保存即可。

5、设置smb服务开机自启动

chkconfig smb --level 345 on
设置smb服务以在等级3、4和5中为开机启动服务状态。

该命令是根据/etc/init.d/smbd文件在/etc/rc.d/rc3.d/和/etc/rc.d/rc4.d/和/etc/rc.d/rc5.d/的目录下建立链接,达到在3,4,5启动级别时开机自动启动的目的。


chkconfig smb on 所有启动级别启动时服务都开机自动启动。

chkconfig smb off
所有启动级别时开机,服务都不自动启动。
chkconfig --level 345 smb off
服务是在3,4,5启动级别时开机不自动启动。


level说明:

--level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
on和off开关,系统默认只对运行级3,4,5有效

6、如何从windows计算机访问linux通过smb设置的共享

windows计算机-》开始-》运行,输入\\ip地址,举例如下:

\\10.103.1.89


若是能够访问,直接会弹出窗口,提示输入用户名、密码(linux上通过smb添加的用户名、密码,非linux计算机的用户名、密码)。

若无法访问,可通过如下思路解决:

(1)、在linux上本机上,通过smbclient,如下命令

smbclient //172.16.130.89/request -U smbuser
是否能够访问,若不能,按照前面介绍解决;若不能,则尝试关闭linux计算机的防火墙,关闭后,应该能够访问。

操作linux防火墙相关命令:

查看防火墙服务状态

service iptables status


关闭防火墙

service iptables stop


重启防火墙

service iptables restart
设置开机不再自动启动防火墙,即开机默认防火墙关闭

chkconfig --level 345 iptables off
或者直接所有情况下都不开启防火墙

chkconfig  iptables off


7、对linux通过smb共享的文件夹无写权限?

比如在linux上通过smb共享文件夹/home/request,访问者无写权限,是因为该文件夹没有赋予组或者其他用户的写权限。

ll /home/request


会出现-drmxr-xr-x...,这说明只有linux的root用户有写权限,其他用户和组无写权限。

解决:

chmod -R go+w /home/request
-R:表示对该文件夹下的子文件夹做同样的权限修改。

go+w:g,group;o:other;+w:添加write权限;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: