linux环境配置(linux环境下如何搭建服务器)

伏羲号

1.准备:

linux环境配置(linux环境下如何搭建服务器)

1.1. jdk1.8:jdk-8u11-linux-x64.tar.gz。

tomcat:apache-tomcat-8.0.39-windows-x64.zip。

1.2. 先安装个1.8的jdk,注意是linux for jdk,要不然可不行。

然后新建一个JAVA文件夹在根目录的(这里的根目录要通过cd 再接/usr/进入,而不是home/xxx,可以通过pwd查看当前所在路径)/usr/下,用来放置解压后的jdk文件,这里因为后缀名是tar.gz所以直接用tar -xf 命令解压。

2.配置:

2.1. 配置JDK的环境变量:到/etc/文件夹找到profile文件,通过文件编辑命令vi profile在文件的末尾加上变量参数:

JAVA_HOME=/usr/java/jdk1.8.0_11

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

2.2. 把下好的tomcat解压到自定义的一个文件夹里了,我的是home/pengyy/tomcat/下,到config文件里修改一下端口号,vi命令编辑server.xml,里面后来启动的时候8005那个端口有冲突,我直接改了8088,然后又把http请求的端口改成了8001,OK,tomcat配置完成,没什么过多的步骤。

2.3. 将一个完成的web项目打成war包,放在tomcat下的webapps里解压。

2.4. 进入到tomcat下的bin目录,输入命令启动:./start.sh,终止命令./shutdown.sh。

可以查看日志,去tomcat的logs目录底下查看catalina.out日志文件,可以通过cat查看文件命令,也可以tail -f(倒数多少行可以为数字) catalina.out来查看。

如果端口号被占用,可以用命令lsof -i:端口号 来查看端口号被占用的进程号,或者停止该进程,或者修改tomcat的端口号都可以。

而当你不确定是否终止了哪个项目的时候,可以通过输入命令ps -ef|grep java来查看一下是否有在运行的项目,通过kill -9 进程号就可以干掉哪个正在运行的项目了。

最后通过ifconfig或者ip命令获取虚拟机的Ip地址,在主机上通过ip+端口号+项目根路径的方式访问即可。

回答行业问题

这个其实是shell环境和ssh会话的问题,问题看似简单,其实说起来,话题很长。

首先解答问题中两者的区别,然后对ssh会话和shell环境的关系、ssh会话和会话超时之间展开说明。

TMOUT是shell环境下的变量,从名字就可以看出是控制超时时间的,ClientAliveInterval参数是sshd服务会话连接保活的参数。

前者是超时时间,后者是保活连接,看似是一个很对立的关系,但是它们之间,首先来说一下它们的区别。

两者区别

shell空闲等待时间TMUOT变量

TMOUT是shell环境下的一个环境变量,它控制shell环境系统空闲等待时间。一般配置在/etc/profile文件当中,Linux系统默认不配置TMOUT环境变量的值。

当TMOUT的值大于0时,比如为10,shell进空闲等待当终端超过10秒没所有输入,bash将关闭当前shell环境,终端连接断开,长时间离开电脑后断开终端连接,对服务器也是一种保护。

从上图可以看出,配置TMOUT环境的值变量为10之后,ssh终端就自动断开了。

ClientAliveInterval sshd服务保活参数

这个参数和ClientAliveCountMax参数配合使用,sshd服务配置这两个参数之后,比如ClientAliveInterval = 300、ClientAliveCountMax = 3。sshd服务会每隔300秒会给客户端发送心跳包,当客户端没有响应时会进行3次重试,重试后依然没有响应,断开ssh连接。

到这里就看出它们的区别了,TMOUT是控制shell环境虚拟终端层面,当终端没有输入时,多长时间断开终端。而ClientAliveInterval参数是控制sshd服务和ssh客户端之间,没有网络通信时多长时间断开和客户端的连接。

总是说shell环境和sshd服务,那它们之间有什么关系呢?继续往下。

shell环境和sshd服务的关系

现在使用的的终端工具比如xshell、putty、CRT等都集成了ssh客户端,当终端发起ssh请求和sshd服务建立连接,并且通过验证,这时sshd服务将创建一个会话,然后调用系统接口创建一个新的pts字符设备文件,同时sshd服务会创建一个shell环境。

最后将ssh会话和pts字符设备文件绑定,字符设备文件再和和shell绑定,这样就创建了ssh会话和shell环境的连接。

当终端输入命令时,首先会将数据通过ssh协议发送给sshd服务,sshd将数据发送给对应的会话,会话将数据发送给pst字符设备文件,字符设备文件将数据最终转发到shell环境。

shell处理完命令请求,然后依次shell--pts符号设备文件--ssh会话--终端工具,这样就完成了终端界面,控制Linux shell的过程。

从上面的阐述可以得出,shell是sshd服务创建的,但是它们又是独立的,通过pts字符设备文件联系在一起。

ssh会话保活和自动超时

平时使用ssh工具连接linux服务器时,总是超时,这时就可以配置sshd服务定时进行心跳检测,防止通信超时断开。

现在ssh工具也都具备网络保活的功能,也可以通过设置客户端程序来进行连接保活,原理和sshd服务一样,定期发送心跳包。

对于安全比较重视的人来说,这样显然是不合理的,这时就可以设置shell环境变量TMOUT定义系统空闲等待时间,在不使用终端时自动断开。

这里一直是在说超时,那么什么都不配置,ssh会话为什么超时了?继续往下看。

ssh会话为什么会超时?

ssh会话属于TCP长连接,linux系统定义了TCP长连接的超时时间,一般是7200秒,也就是两个小时,长连接达到这个时间就会发起心跳包,检测TCP连接,但是在实际场景到不了这个时间就会断开,比如NAT环境。

ipv4地址有限,我们的上网环境一般都在NAT路由设备后面,NAT路由维护着一张NAT表,当tcp连接长时间没有数据通信,NAT路由就会将这个连接从NAT表中移除,这会引起ssh会话就中断超时。

NAT超时时间远远达不到两个小时,所以TCP长连接如果没有心跳,很容易出现超时现象,再有就是网络不稳定,也会造成连接断开。

总结,我们从最初的shell环境变量TMOUT出发,将shell和sshd服务进行关联,介绍了它们之间的关系,引出了shell环境超时和sshd服务超时,并说明了自动超时和保活会话的应用,最后解释了服务超时的原因,环环相连,到这里我想对于ssh会话已经有了基本了解。

以上回答希望能够帮助到你,欢迎大家评论留言。

linux整个系统都是用c写的,绝大多数都有c的源码,大量优秀的代码行可供学习、参考。可以说全世界最优秀的c代码都在这样,这是你获取秘籍提高功力,最佳宝藏!

内核,git,gcc,gdb,gmail等大量的优秀软件源码,使得学习方便快捷。

glibc也是c最佳的类库,提供了各种各样的系统参数和接口,用他们可以便捷和底层系统打交道。

vim是最佳编辑器,gcc是最佳的c编译器,gdb是最强大的调试器,如果你学会并熟悉gdb后,你就不在觉得ide调试有多好了。还有strace是动态调试的好帮手哦

欢迎加入linux大家庭,不要信什么培训啥的,好的培训不多花学费是试不出来的😂,找本好书,然后多练就行。关于好书,给你推荐几本:

《unix环境高级编程》、《unix网络编程》、《tcp/ip详解》、《深入理解计算机系统》等。还有一本来自培训教材,《Linux c 编程一站式学习》,由浅入深,讲C语言本质,讲c语言本身,讲操作系统,计算机组成原理,汇编,编译原理等等

以上教材都可以在网上搜着下。如果找不到回复我,我给你。

喜欢我的回大请点赞,关注我。

Linux服务器的部署,配置,搭建步骤:

1.准备:

1.1. jdk1.8:jdk-8u11-linux-x64.tar.gz。

tomcat:apache-tomcat-8.0.39-windows-x64.zip。

1.2. 先安装个1.8的jdk,注意是linux for jdk,要不然可不行。

然后新建一个JAVA文件夹在根目录的(这里的根目录要通过cd 再接/usr/进入,而不是home/xxx,可以通过pwd查看当前所在路径)/usr/下,用来放置解压后的jdk文件,这里因为后缀名是tar.gz所以直接用tar -xf 命令解压。

2.配置:

2.1. 配置JDK的环境变量:到/etc/文件夹找到profile文件,通过文件编辑命令vi profile在文件的末尾加上变量参数:

JAVA_HOME=/usr/java/jdk1.8.0_11

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

2.2. 把下好的tomcat解压到自定义的一个文件夹里了,我的是home/pengyy/tomcat/下,到config文件里修改一下端口号,vi命令编辑server.xml,里面后来启动的时候8005那个端口有冲突,我直接改了8088,然后又把http请求的端口改成了8001,OK,tomcat配置完成,没什么过多的步骤。

2.3. 将一个完成的web项目打成war包,放在tomcat下的webapps里解压。

2.4. 进入到tomcat下的bin目录,输入命令启动:./start.sh,终止命令./shutdown.sh。

可以查看日志,去tomcat的logs目录底下查看catalina.out日志文件,可以通过cat查看文件命令,也可以tail -f(倒数多少行可以为数字) catalina.out来查看。

如果端口号被占用,可以用命令lsof -i:端口号 来查看端口号被占用的进程号,或者停止该进程,或者修改tomcat的端口号都可以。

而当你不确定是否终止了哪个项目的时候,可以通过输入命令ps -ef|grep java来查看一下是否有在运行的项目,通过kill -9 进程号就可以干掉哪个正在运行的项目了。

最后通过ifconfig或者ip命令获取虚拟机的Ip地址,在主机上通过ip+端口号+项目根路径的方式访问即可。

分享一下我自己的经验,简单介绍一下:Linux分为很多版本 ,在亚太地区一般使用的是Redhat 这个版本,而在欧洲北美地区弄乌班图版本。

我学Linux是因为将来运维工作的需要,搭建Linux服务器。看你学是因为什么目的了,初学者的话我推荐centos 这个版本,该版本为Redhat的完全复制版,只不过centos 的yum免费。

首先 我们需要了解Linux的基本操作命令,如最基本的ifconfig 这是查看网卡信息,ifconfig eth0 192.168.1.100 这是设置 IP地址,ls 查看当前目录下的列表,ls后面可以添加各种参数,比如 ll 或者ls -l 寄表示查看当前目录文件和文件夹的详细信息。

简单罗列一下常用命令:

touch 文件名 #创建一个文件

rm 文件名 #删除一个文件 可加参数 -f 强制删除,-p 递归删除

mkdir 文件夹名 #创建一个文件夹

rmdir 文件夹名 #删除一个文件夹

cd 目录名 #进入某个目录 ,如进入 /etc文件夹下的一个子目录/sys/ : cd /etc/sys/

cd #退出当前目录进入根目录

等等。。。。。。。。。。。。。。

网上有很多教程你可以去看一下,但我还是建议购买一本Linux 操作系统详解 的书籍 ,比如 Redhat Linux 网络操作系统教程 等等等。

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
评论列表 (暂无评论,83人围观)

还没有评论,来说两句吧...