1. Tomcat相关命令

linux下重启tomcat、实时查看tomcat运行日志

在Linux系统下,重启Tomcat使用命令操作的!

首先,进入Tomcat下的bin目录

cd /usr/local/tomcat/bin

使用Tomcat关闭命令

./shutdown.sh

查看Tomcat是否以关闭

ps -ef|grep java

或者 ps aux|grep tomcat

如果显示以下相似信息,说明Tomcat还没有关闭

root      7010     1  0 Apr19 ?        00:30:13 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start

*如果你想直接干掉Tomcat,你可以使用kill命令,直接杀死Tomcat进程

kill -9 7010

然后继续查看Tomcat是否关闭

 ps -ef|grep java

如果出现以下信息,则表示Tomcat已经关闭

root      7010     1  0 Apr19 ?        00:30:30 [java]<defunct>

最后,启动Tomcat

 ./startup.sh

注意:使用root用户登录Linux系统;正确进入Tomcat目录;在确定Tomcat关闭之后再启动Tomcat,否则会报端口被占用异常。

 

查看tomcat日志

1、先切换到:cd usr/local/tomcat5/logs

2、tail -f catalina.out

3、这样运行时就可以实时查看运行日志了

 

Ctrl+c 是退出tail命令。

 

而当你用linux的ip在外部访问时,会发现失败,这是因为默认情况下,linux的防火墙是开启的,并且只允许系统安装好后,特别的几个端口可以外部访问,后期装的软件,如果需要通过外部端口访问,有两种解决方案:1.使用命令:sevice iptables stop 来停止防火墙服务,但是当你启动linux系统时,防火墙又会重新启动;2.最根本的解决办法,是在防火墙规则里添加需要外部访问的端口号规则,使用下面的命令来实现:  首先输入命令:/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT来编辑防火墙规则文件,  接着输入命令:/etc/rc.d/init.d/iptables save保存到iptables这个文件  最后输入命令:service iptables restart来重新启动防火墙服务,使刚添加的规则生效


配置默认访问路径

<Context docBase="/home/tomcat/tow-boon-tomcat8/webapps/tow" path="" debug="0"  reloadable="true"/>

2. 常用指令

ls       显示文件或目录

     -l           列出文件详细信息l(list)

     -a          列出当前目录下所有文件及目录,包括隐藏的a(all)

mkdir         创建目录

     -p           创建目录,若无父目录,则创建p(parent)

cd               切换目录

touch          创建空文件

echo            创建带有内容的文件。

cat              查看文件内容

cp                拷贝

mv               移动或重命名

rm               删除文件

     -r            递归删除,可删除子目录及文件

     -f            强制删除

find              在文件系统中搜索某文件

wc                统计文本中行数、字数、字符数

grep             在文本文件中查找某个字符串

rmdir           删除空目录

tree             树形结构显示目录,需要安装tree包

pwd              显示当前目录

ln                  创建链接文件

more、less  分页显示文本文件内容

head、tail    显示文件头、尾内容

ctrl+alt+F1  命令行全屏模式

3. 系统管理命令

stat              显示指定文件的详细信息,比ls更详细

who               显示在线登陆用户

whoami          显示当前操作用户

hostname      显示主机名

uname           显示系统信息

top                动态显示当前耗费资源最多进程信息

ps                  显示瞬间进程状态ps -aux

du                  查看目录大小du -h /home带有单位显示目录信息

df                  查看磁盘大小df -h带有单位显示磁盘信息

ifconfig          查看网络情况

ping                测试网络连通

netstat          显示网络状态信息

man                命令不会用了,找男人 如:man ls

clear              清屏

alias               对命令重命名 如:alias showmeit="ps -aux",另外解除使用unaliax showmeit

kill                 杀死进程,可以先用ps 或top命令查看进程的id,然后再用kill命令杀死进程。

4. 打包压缩相关命令

gzip:

bzip2:

tar:                打包压缩

     -c              归档文件

     -x              压缩文件

     -z              gzip压缩文件

     -j              bzip2压缩文件

     -v              显示压缩或解压缩过程v(view)

     -f              使用档名

例:

tar -cvf /home/abc.tar /home/abc              只打包,不压缩

tar -zcvf /home/abc.tar.gz /home/abc        打包,并用gzip压缩

tar -jcvf /home/abc.tar.bz2 /home/abc      打包,并用bzip2压缩

当然,如果想解压缩,就直接替换上面的命令  tar -cvf  / tar -zcvf  / tar -jcvf中的“c”换成“x”就可以了。

5. 关机/重启机器

shutdown

     -r             关机重启

     -h             关机不重启

     now          立刻关机

halt               关机

reboot          重启

6. Linux管道

将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。

例:grep -r "close" /home/* | more      在home目录下所有文件中查找,包括close的文件,并分页输出。

7. Linux软件包管理

dpkg (Debian Package)管理工具,软件包名以.deb后缀。这种方法适合系统不能联网的情况下。

比如安装tree命令的安装包,先将tree.deb传到Linux系统中。再使用如下命令安装。

sudo dpkg -i tree_1.5.3-1_i386.deb         安装软件

sudo dpkg -r tree                                    卸载软件

注:将tree.deb传到Linux系统中,有多种方式。VMwareTool,使用挂载方式;使用winSCP工具等;

APT(Advanced Packaging Tool)高级软件工具。这种方法适合系统能够连接互联网的情况。

依然以tree为例

sudo apt-get install tree                        安装tree

sudo apt-get remove tree                       卸载tree

sudo apt-get update                                更新软件

sudo apt-get upgrade        

将.rpm文件转为.deb文件

.rpm为RedHat使用的软件格式。在Ubuntu下不能直接使用,所以需要转换一下。

sudo alien abc.rpm

8. 用户及用户组管理

/etc/passwd    存储用户账号

/etc/group       存储组账号

/etc/shadow    存储用户账号的密码

/etc/gshadow  存储用户组账号的密码

useradd 用户名

userdel 用户名

adduser 用户名

groupadd 组名

groupdel 组名

passwd root     给root设置密码

su root

su - root 

/etc/profile     系统环境变量

bash_profile     用户环境变量

.bashrc              用户环境变量

su user              切换用户,加载配置文件.bashrc

su - user            切换用户,加载配置文件/etc/profile,加载bash_profile

更改文件的用户及用户组

sudo chown [-R] owner[:group] {File|Directory}

例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop

要想切换此文件所属的用户及组。可以使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz

9. 文件权限管理

三种基本权限

R           读         数值表示为4

W          写         数值表示为2

X           可执行  数值表示为1

如图所示,jdk-7u21-linux-i586.tar.gz文件的权限为-rw-rw-r--

-rw-rw-r--一共十个字符,分成四段。

第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录

第二三四个字符“rw-”表示当前所属用户的权限。 所以用数值表示为4+2=6

第五六七个字符“rw-”表示当前所属组的权限。     所以用数值表示为4+2=6

第八九十个字符“r--”表示其他用户权限。             所以用数值表示为2

所以操作此文件的权限用数值表示为662 

更改权限

sudo chmod [u所属用户  g所属组 o其他用户 a所有用户]  [+增加权限 -减少权限]  [r  w  x]  目录名 

例如:有一个文件filename,权限为“-rw-r----x” ,将权限值改为"-rwxrw-r-x",用数值表示为765

sudo chmod u+x g+w o+r  filename

上面的例子可以用数值表示

sudo chmod 765 filename

10. 关闭防火墙

10.1 常见防火墙

1) 重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off

2) 即时生效,重启后失效
开启: service iptables start
关闭:service iptables stop

需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。

在开启了防火墙时,做如下设置,开启相关端口,
修改/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 22 -j ACCEPT

 

10.2 CentOS 7.0 防火墙命令

CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下

1、直接关闭防火墙

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动

2、设置 iptables service

yum -y install iptables-services

如果要修改防火墙配置,如增加防火墙端口3306

vi /etc/sysconfig/iptables 

增加规则

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

保存退出后

systemctl restart iptables.service #重启防火墙使配置生效

systemctl enable iptables.service #设置防火墙开机启动

最后重启系统使设置生效即可。

参考: CentOS中防火墙相关的命令(CentOS7中演示)_陈南志的博客-CSDN博客_centos防火墙命令

 10.3 centos 7 开放端口

CentOS 7 开放防火墙端口命令_achang21的博客-CSDN博客_centos7开放端口命令

11. 网络

service network restart 重启网卡

12. 文件上传

12.1

-bash: rz: command not found

rz命令没找到?

执行sz,同样也没找到。

安装lrzsz:

# yum -y install lrzsz

现在就可以正常使用rz、sz命令上传、下载数据了。

使用方法:

上传文件

# rz filename

下载文件

# sz filename

12.2 scp文件上传

进入终端

scp /usr/local/test.txt root@47.101.60.168:/root

/usr/local/test.txt : 要上传文件的绝对地址

root@47.101.60.168 : 目标机器 ip

/root : 上传的文件存放地址

13. 压缩和解压

tar命令

  解包:tar zxvf FileName.tar

打包:tar czvf FileName.tar DirName

gz命令

  解压1:gunzip FileName.gz

  解压2:gzip -d FileName.gz

  压缩:gzip FileName

.tar.gz 和 .tgz

  解压:tar zxvf FileName.tar.gz

  压缩:tar zcvf FileName.tar.gz DirName

   压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 ...

bz2命令

  解压1:bzip2 -d FileName.bz2

  解压2:bunzip2 FileName.bz2

  压缩: bzip2 -z FileName

.tar.bz2

  解压:tar jxvf FileName.tar.bz2

压缩:tar jcvf FileName.tar.bz2 DirName

bz命令

  解压1:bzip2 -d FileName.bz

  解压2:bunzip2 FileName.bz

  压缩:未知

.tar.bz

解压:tar jxvf FileName.tar.bz

Z命令

  解压:uncompress FileName.Z

  压缩:compress FileName

.tar.Z

  解压:tar Zxvf FileName.tar.Z

压缩:tar Zcvf FileName.tar.Z DirName

zip命令

  解压:unzip FileName.zip

压缩:zip FileName.zip DirName

mac 终端压缩/解压 : 

tar
  解压:tar zxvf FileName.tar.gz
  压缩:tar zcvf FileName.tar.gz DirName

参考 : Mac terminal下解压缩命令大全_Macle-VIP的博客-CSDN博客_mac tgz

14. Vi/Vim编辑器相关命令

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

命令模式下:

dd                     删除当前行

:1,$d                 删除全部(光标必须在第一行)

:q                      退出

:q!                     强制退出

:wq                   保存并退出

:set number     显示行号

:set nonumber  隐藏行号

/apache            在文档中查找apache按n跳到下一个,shift+n上一个

yyp                   复制光标所在行,并粘贴

h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)

详细 : http://man.linuxde.net/vi

l 光标的移动除了键盘上的上下左右键.也可以是小写模式下,按键盘上的"h,j,k,l",

"ctrl+b":屏幕往后移动一页

"ctrl+f":屏幕往前移动一页

"ctrl+u":屏幕往后移动半页

"ctrl+d":屏幕往前移动半页

输入任何一个整数,然后输入"shift+G"就可以到这一页的开头了.

按键盘上的大写"G"移动到文章的最后.

按"$"符号将光标移动到行尾

"^"将光标移到行头

"w":将光标移到下一行头

"b":跟"w"相反.移到上一行行头

"e":将光标移到下一行尾.

如果想让文本显示行号.就在命令行 模式下,在文本最后输入":set nu"命令.就可以了

l 复制

「yw」:将光标所在之处到字尾的字符复制到缓冲区中。   

「yy」:复制光标所在行到缓冲区。   

「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。   

「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与"y"有关的复制命令

都必须与"p"配合才能完成复制与粘贴功能

l 查找

用"/"加上要查找的内容.例如"/hello"或者是"?hello"也是可以的.

l 替换

「r」:替换光标所在处的字符。,按一下"r"然后输入要即可.

「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

删除

删除第一行 : 1d

删除第第二行到第四行 : 1,4d

l 恢复上一次操作

「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。

按多次"u"可以执行多次恢复.就相当于"CTRL +Z"的操作.

参考 : linux vi模式下基本命令和快捷键 - dyc40021 - 博客园

15. 开启Apache和Mysql

/opt/zbox/zbox start
执行/opt/zbox/zbox start 命令开启Apache和Mysql。
执行/opt/zbox/zbox stop 命令停止Apache和Mysql。
执行/opt/zbox/zbox restart 命令重启Apache和Mysql。

16. 查看端口是否占用

 ss -tunlp | grep -v grep | grep 8080

17. Nginx

检查配置是否正确 

修改完配置后,最好使用命令检查下配置是否正确,这样可以排除配置格式错误导致配置不生效,影响服务器的稳定运行。

nginx -t

配置生效

修改配置后需要重启NGINX才能生效,如果关闭NGINX再打开会影响服务运行,我们可以向Nginx 发送信号,平滑重启。

kill -HUP 进程号

其中进程号是NGINX的进程号,可以使用ps aux | grep nginx 命令查看。

或者使用下面的命令使配置生效

nginx -s reload

 

18. SSH

打开终端

ssh root@47.101.60.168

回车,然后输入密码

19. chmod

赋予可执行权限

$ chmod +x test.sh

详解:

创建文件 a 

touch a

查看权限

ls -l a

输出:

-rw-r--r--  1 leyili  staff  0  9 26 18:04 a

第一列的字符可以分为三组,每一组有三个,每个字符都代表不同的权限,分别为读取(r)、写入(w)和执行(x):

  • 第一个字符(1)代表文件类型: -(普通文件) , d(目录)
  • 第一组字符(2-4)表示文件所有者的权限,-rwxr-xr-- 表示所有者拥有读取(r)、写入(w)和执行(x)的权限。
  • 第二组字符(5-7)表示文件所属用户组的权限,-rwxr-xr-- 表示该组拥有读取(r)和执行(x)的权限,但没有写入权限。
  • 第三组字符(8-10)表示所有其他用户的权限,rwxr-xr-- 表示其他用户只能读取(r)文件。

为了方便测试,先把所有权限去除

chmod 0 a

查看权限 : ls -l a

----------  1 leyili  staff  0  9 26 18:04 a

给第一组赋予可读权限(u代表第一组, g 代表第二章, o 代表第三组,不加组代表符号会给三个组全部赋予);

chmod u+r a

也可以一次赋予多个权限

chmod u+rw,g+rw,o+rw a

查看权限 : ls -l a

-rw-rw-rw-  1 leyili  staff  0  9 26 18:04 a

也可用数字代表权限,参考 :Linux文件权限和访问模式_C语言中文网

注意 : 

chmod 7 a : 赋予第三组读、写和执行的权限

chmod 77 a : 赋予第二组和三组读、写和执行的权限

chmod +r a : 赋予三个组读权限

删除权限用 - 

chmod u-r a : 删除第一组的读权限

chmod -r a : 删除三个组所有读权限

chmod 0 a : 删除三个组所有权限

20. 查到端口占用

netstat -tunlp |grep 80

21. cat

参考 :  cat、tail、head、grep、sed查看文件任意几行的数据_CourageK的博客-_cat 查看最后10行

查看最后1000行

cat filename | tail -n 1000

查看1000到3000行的数据

cat filename | head -n 3000 | tail -n +1000