Linux操作命令

1、查看后台运行日志:

1. 查看jar包运行日志
$ tail -f *.log

2. 查看war包运行日志
$ tail -f catalina.out

2、杀掉进程

1. 查看进程PID
1.1 查看java进程,并查看进程的父进程ID和完整的COMMAND命令 
$ ps -ef | grep java

1.2 查看Java进程,并查看进程的CPU占用率和内存占用率
$ ps aux | grep java  

#ps命令将某个进程显示出来
#grep命令是查找
#中间的|是管道命令 是指ps命令与grep同时执行
#PS是LINUX下最常用的也是非常强大的进程查看命令
#grep命令是查找,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
#grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

2. 杀死进程
$ kill -9 PID

3、文件上传下载与传输

1. 安装lrzsz工具包
$ yum  install lrzsz

2. 上传文件
$ rz

3. 下载文件
$ sz path/filename

#rz、sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具

4. 将某台服务器文件传输到另一台服务器上
4.1 复制文件
4.1.1 将本地文件拷贝到远程
# scp 文件名 用户名@计算机IP或者计算机名称:远程路径
$ scp /usr/local/redis/redis.conf root@127.0.0.1:/usr/loacl/redis/redis.conf

4.2.1 从远程将文件拷回本地
# scp 用户名@计算机IP或者计算机名称:文件名  本地路径
$ scp /usr/local/redis/redis.conf root@127.0.0.1:/usr/loacl/redis/redis.conf

4.2 复制文件夹
4.2.1 将本地文件夹拷贝到远程
#scp -r 目录名 用户名@计算机IP或者计算机名称:远程路径
$ scp -r /usr/local/test root@127.0.0.1:/usr/loacl/test2

4.2.2 从远程将文件夹拷回本地
#scp -r 用户名@计算机IP或者计算机名称:目录名 本地路径
$ scp -r root@127.0.0.1:/usr/loacl/test2 /usr/local/test 

5. 同台服务器下的文件/文件夹移动
5.1 将文件复制到另一个文件夹下
$ cp -r /home/test/* /usr/local/test //将home/test文件夹下的所有内容复制过去
$ cp -r /home/test/. /usr/local/test //将home/test文件夹下的所有内容复制过去
5.2 将一个文件夹复制到另一文件夹下
$ cp -r /home/test /usr/local/test

6. 同台服务器下的文件移动
6.1 移动文件
$ mv /home/test/test.txt /usr/local/test/
6.2 移动文件夹
$ mv /home/test /usr/local/test

7. 创建文件夹与文件
$ mkdir /usr/local/test
$ mkdir -p /usr/local/test1/test2 //递归创建目录,即使上级目录不存在,会按目录层级自动创建目录
$ vim /usr/local/test.sh //创建并编辑文件

8. 删除文件
$ rm -rf /home/test.txt
#-r表示向下递归,不管有多少级目录,一并删除
#-f表示直接强行删除,不作任何提示的意思

4、linux下配置JDK环境变量

1、下载jdk压缩包  
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

2、创建文件夹存放jdk压缩包
[root@localhost local]#: mkdir java

3、上传压缩包
[root@localhost local]#: rz

4、解压压缩包
[root@localhost local]#: tar -xzvf jdk-8u201-linux-x64.tar.gz

5、修改环境变量配置
[root@localhost local]#: vi /etc/profile

添加配置:
export  JAVA_HOME=/usr/local/jdk1.8.0_211
export  JRE_HOME=/usr/local/jdk1.8.0_211/jre
export  CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export  PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

6、使配置文件生效
[root@localhost local]#: source /etc/profile

5、运行jar包

1、运行jar包
1.1 前台运行
[root@localhost local]# java -jar xxl-job-admin.jar 
这个命令会锁定命令窗口,只能看到当前运行的输出信息。而无法发送其他指令。

1.2 后台运行
[root@localhost local]# nohup java -jar xxl-job-admin.jar >log.txt &
用"&"符号结尾表示,让程序在后台运行, 
>logs.txt 表示输出文件。
这样的话,命令窗口就不会被锁定,而可以发送其他指令,但是当窗口关闭时,后台运行的程序依然会被停止。

nohup命令:nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断信号。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。

简单地说就是,nohup命令可以阻止窗口关闭是的挂断信号,使程序继续运行。这样,命令就修改为了


2、查看运行日志
[root@localhost local]# less log.file

6、防火墙设置和端口开放

1、防火墙设置
1.1如果没有开放端口,可直接关闭防火墙
查看防火墙开启状态:firewall-cmd --state

关闭防火墙命令:systemctl stop firewalld

开启防火墙:systemctl start firewalld

关闭开机自启动:systemctl disable firewalld

开启开机启动:systemctl enable firewalld

重启防火墙:firewall-cmd --reload

2开放端口
2.1开启防火墙 
    systemctl start firewalld

2.2开放指定端口
    firewall-cmd --zone=public --add-port=1935/tcp --permanent
     命令含义:
    --zone #作用域
    --add-port=1935/tcp  #添加端口,格式为:端口/通讯协议
    --permanent  #永久生效,没有此参数重启后失效

2.3 查询制定端口是否已开放
    firewall-cmd --query-port=666/tcp

2.4查看端口号
    netstat -ntlp   //查看当前所有tcp端口·

    netstat -ntulp |grep 1935   //查看所有1935端口使用情况·

7、启动redis

1、普通安装的redis
1.1 进入启动目录
$ cd /usr/local/redis/redis-5.0.4/src/ 
1.2 启动redis
$ ./redis-server ../redis.conf

2、docker中的redis
1.1 查看redis容器是否启动
$ docker ps
1.2 没有则启动容器
$ docker start [docekr name/ docekr Id]
1.3 进入容器
$ docker exec -it [docekr name/ docekr Id] /bin/bash
1.4 进入启动目录
$ cd ../usr/local/bin
1.5 启动redis
$ ./redis-service ../../../data/redis.conf

8、nginx上传文件大小限制修改

1. 找到nginx.conf文件位置
$ find / -name nginx.conf

2. 查看nginx.conf文件配置
$ cat [path]/nginx.conf
 
3.1 编辑文件
$ vim [path]/nginx.conf
3.2 添加上自定义最大上传文件大小(client_max_body_size 50M 必须要放在server下的server_name下,而不是放在localhost /web的大括号里)
$ client_max_body_size 50M;  

4.1 平滑重启nginx
$ [/usr/local/nginx/sbin]# ./nginx -s reload
4.2 非平滑重启 
$ [/usr/local/nginx/sbin]# ./nginx -s stop && ./nginx

9、挖矿病毒查杀(治标不治本)

1. 查看运行进程排查是否存在病毒进程
$ top

2. 编写查杀脚本
2.1 创建脚本文件
$ vim /tmp/kill_kdevtmpfsi.sh
2.2 编辑脚本
#!/bin/bash

source /etc/profile
source ~/.bash_profile

echo 'start delete'
rm -f /tmp/kdevtmpfsi
rm -f /var/tmp/kinsing
rm -f /tmp/kinsing

ps -aux | grep kinsing |cut -c 9-15 | xargs kill -9 
ps -aux | grep kdevtmpfsi |cut -c 9-15 | xargs kill -9 

#grep firefox的输出结果是,所有含有关键字“firefox”的进程。
#grep -v keyword是在列出的进程中去除含有关键字“grep”的进程。
#cut -c 9-15是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。
#xargs kill -s 9中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -s 9”命令的参数,并执行该命令。“kill -s 9”会强行杀掉指定进程。
2.4 运行脚本
$ sh /tmp/kill_kdevtmpfsi.sh

3. 创建定时任务
3.1 查看是否安装定时任务
$ crontab -l
3.2 安装定时任务
传送门:https://www.cnblogs.com/shaohuixia/p/5577738.html
3.3 第一次运行crontab手动生成‘crontab’文件
$ crontab -e
#保存空白文件
#liunx服务器第一次使用crontab,还没有生成对应的文件,执行了编辑(crontab -e)后就生成了对应文件
3.4 编辑‘crontab’文件,添加定时任务
$ crontab -e 
#添加 */1 * * * * cd /tmp;/bin/bash kill_kdevtmpfsi.sh  >> /tmp/kill.log>&1

10、端口冲突排查

1. 查看端口是否被使用
$ netstat -lnt | grep port

2. 根据端口查看进程信息
$ lsof -i :port

3.杀死进程
$ kill -9 PID

4. 查看服务器对外ip
$ curl http://httpbin.org/ip

11、修改jvm参数

1. 查看jvm参数
$ jps
$ jinfo -flags PID

2. 添加jvm参数
$ vim /etc/profile
$ export JAVA_OPTIONS=-XX:+PrintGCDetails -Xloggc:/usr/local/logs/gc.log

3. 使修改的配置生效
$ source /etc/profile

12、Linux服务器查看配置(CPU、内存、硬盘)

1. 查看逻辑CPU个数
$ cat /proc/cpuinfo | grep "processor"
$ cat /proc/cpuinfo |grep "processor" |wc -l //直接显示cpu个数

2. 查看服务器内存大小
$ cat /proc/meminfo |grep MemTotal
2.1 查看内存剩余大小
$ free -m

3.1 查看服务器硬盘大小
$ df -hl
3.2 查看服务器个文件夹具体占用大小
$ du -h --max-depth=1 /

4. 查看文件大小 
4.1查看一个文件夹中所有文件的大小(不含子目录中的文件)
$ du -Sh 或 du -Ssh
4.2. 查看一个文件夹中所有文件的大小(包含子目录中的文件)
$ du -h或者du -sh
4.3. 查看文件夹下每一个文件夹的大小
$ du -sh *
4.3 查看文件夹中每一个文件的大小:
$ du -ah 或者ls -lRh
#S:表示不统计子目录
#s:表示不要显示其下子目录和文件占用的磁盘空间大小信息,只显示总的占用空间大小
#h:以适合阅读的单位显示

5. 查看占用内存最高的10个进程
$ ps aux | sort -k4nr | head -n 10

5. 查看占用CPU最高的10个进程
$ ps aux | sort -k3nr | head -n 10

13、查看服务磁盘占用情况

Linux df(英文全拼:disk free) 命令用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计
1、df -h 展示磁盘使用情况
2、df -h /path  展示路径所属分区与分区挂载点,空间使用情况
3、fdisk -l 显示磁盘分区信息
4、lsblk 列出所有可用块设备的信息

14、liunx下cpu占用率高如何定位代码

1、通过top命令查看高cpu进程
$ top
2、显示该进程下的线程列表,并按照CPU占用排序
$ ps -mp PID-o THREAD,tid,time | sort -rn
3、将需要的线程ID转换为16进制格式
$ printf "%x\n" tid
$ e18
4、最后打印线程的堆栈信息
$ jstack PID | grep e18 -A 30

15、软件安装升级

1、安装
rpm -ivh *.rpm --force --nodeps

2、升级
#-Uvh	后面接的软件没有安装过,系统会予以直接安装;后面接的软件有安装的旧版,系统自动更新至新版
#-Fvh	后面接的软件并未安装,系统不会安装该软件;后面接的软件有安装,软件会被升级
rpm -Uvh *.rpm --force --nodeps
或
rpm -Fvh *.rpm --force --nodeps

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值