0


Linux常用命令汇总

1、tcpdump抓包

tcpdump这个命令是用来抓包的,默认情况下这个命令是没有的,需要安装一下:

yum install -y tcpdump

使用这个命令的时候最好是加上你网卡的名称,不然可能使用不了:

tcpdump -nn -i {网卡名称}

  • 网卡名称可使用ifconfig查看

1.1、指定端口

tcpdump -nn -i {网卡名称} port {port}

1.2、过滤端口

tcpdump -nn -i {网卡名称} not port {port}

1.3、指定ip

tcpdump -nn -i {网卡名称} host {ip}

1.4、指定ip过滤指定端口

tcpdump -nn -i {网卡名称} not port {port} and host {ip}

1.5、指定抓取数据包的数量

加上-c选项可以指定抓取数据包的数量,例如指定只抓取20个数据包:

tcpdump -nn -i {网卡名称} -c 20 not port {port} and host {ip}

1.6、输出到文件

tcpdump -nn -i {网卡名称} host {ip} -w /home/xxx.cap

2、防火墙

2.1、查看防火墙状态

systemctl status firewalld

2.2、启停

# 启动
systemctl start firewalld
# 停止
systemctl stop firewalld
# 重启
systemctl restart firewalld

2.3、开放端口

2.3.1、常用命令

# 查看所有已开放的临时端口(默认为空)

firewall-cmd --list-ports

# 查看所有永久开放的端口(默认为空)

firewall-cmd --list-ports --permanent# 添加临时开放端口(例如:比如我修改ssh远程连接端口是223,则需要开放这个端口)

firewall-cmd --add-port=223/tcp

# 添加永久开放的端口(例如:223端口)

firewall-cmd --add-port=223/tcp --permanent# 关闭临时端口

firewall-cmd --remove-port=80/tcp

# 关闭永久端口、删除

firewall-cmd --remove-port=80/tcp --permanent# 配置结束后需要输入重载命令并重启防火墙以生效配置

firewall-cmd --reload

systemctl restart firewalld

2.3.2、通过firewall-cmd 开放端口

# 作用域是public,开放tcp协议的80端口,一直有效
firewall-cmd --zone=public --add-port=80/tcp --permanent# 作用域是public,批量开放tcp协议的80-90端口,一直有效
firewall-cmd --zone=public --add-port=2000-6000/tcp --permanent# 作用域是public,批量开放tcp协议的80、90端口,一直有效
firewall-cmd --zone=public --add-port=80/tcp  --add-port=90/tcp --permanent# 开放的服务是http协议,一直有效
firewall-cmd --zone=public --add-service=http --permanent# 重新载入,更新防火墙规则,这样才生效。通过systemctl restart firewall 也可以达到
firewall-cmd --reload# 查看tcp协议的80端口是否生效
firewall-cmd --zone=public --query-port=80/tcp

# 删除
firewall-cmd --zone=public --remove-port=80/tcp --permanent

firewall-cmd --list-services
firewall-cmd --get-services
firewall-cmd --add-service=<service>
firewall-cmd --delete-service=<service>
在每次修改端口和服务后/etc/firewalld/zones/public.xml文件就会被修改,所以也可以在文件中之间修改,然后重新加载
使用命令实际也是在修改文件,需要重新加载才能生效。

3、用户组合用户修改

chown [选项] [所有者]:[组] 文件

例:

chown root:root *

4、配置nameserver

无网络时,注意核实

vim /etc/resolv.conf

# Generated by NetworkManager
nameserver 192.168.0.5

5、磁盘空间

# a表示显示目录下所有的文件和文件夹(不含子目录),h表示以人类能看懂的方式,max-depth表示目录的深度du-ah --max-depth=1# 查看当前目录总共占的容量。而不单独列出各子项占用的容量du-sh

5.1、du常用的选项:

指令参数释义-h以人类可读的方式显示-a显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小-s显示目录占用的磁盘空间大小,不要显示其下子目录和文件占用的磁盘空间大小-c显示几个目录或文件占用的磁盘空间大小,并统计它们的总和–apparent-size显示目录或文件自身的大小-l统计硬链接占用磁盘空间的大小-L统计符号链接所指向的文件占用的磁盘空间大小

6、安装字体库

6.1、查看中文字体

fc-list :lang=zh

6.2、增加字体文件

把Windows下的

C:Windows\Fonts\

下的

.ttf

后缀字体或者自己下载的.ttf后缀字体放到Linux系统下的

/usr/share/fonts/

下面。

cd /usr/share/fonts/

在这里插入图片描述

6.3、刷新缓存

sudo fc-cache

重启Linux系统,(目前操作未重启也会生效)

7、定时任务crontab

crontab命令设置定时任务执行的时间规则,系统自动周期性执行命令。

这里我们就可以自定义脚本,然后设置定时执行脚本,达到我们想要在服务器定时执行的目标。

7.1、检查安装

检查当前任务列表,同时查看是否安装了crontab

crontab-l

在这里插入图片描述
如果提示未安装,就需要自行安装(crontabs)

yum install crontabs

查询已安装

yum list crontabs

服务启动/关闭和查看,使用crond关键词

systemctl status crond

systemctl start crond

systemctl stop crond

systemctl reload crond

7.2、crontab常用命令:

crontab-l

7.3、查看当前任务列表

crontab-e

编辑任务列表,添加删除新任务。执行命令后会打开文件,vim操作编辑保存文件,文件中每一行代表一条任务。

格式:时间规则 + 执行命令

定时任务规则
时间格式参数有5位,分表表示:

分钟0-59,小时0-23,日1-31,月1-12,星期0-6

除了数字,还有一些特殊字符格式:

  • * 表示所在位置的每个整数,比如第一位使用*,表示每分钟执行一次
  • , 同一个位置用逗号隔开多个数字,表示设置多个时间执行,比如分钟1,30表示1分钟和30分钟的时候都会执行
  • - 表示范围,范围内的每个数值都会执行,如分钟1-10,表示从第一分钟到10分钟,每分钟都执行一次
  • / 表示频率,如分设置1-30/3,表示1到30之间,每3分钟执行一次,也可以配合设置,/5表示每5分钟执行一次。

举例:

每天凌晨三点执行:0 3 * * *

每周三凌晨3点半执行:30 3 * * 3

8、服务自启动

8.1、Tomcat设置开机自启动

8.1.2、添加开机启动文件

sudovi /etc/systemd/system/xxx.service

文件内容

[Unit]# 服务名称Description=xxx
# 前置服务After=network.target

[Service]Type=forking

# JDK路径Environment="JAVA_HOME=/usr/lib/jvm/default-java"Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"# Tomcat路径Environment="CATALINA_BASE=/opt/tomcat"# Tomcat路径Environment="CATALINA_HOME=/opt/tomcat"# Tomcat路径/temp/tomcat.pidEnvironment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"# Tomcat路径启动脚本ExecStart=/opt/tomcat/bin/startup.sh
# Tomcat路径停止脚本ExecStop=/opt/tomcat/bin/shutdown.sh

[Install]# 该服务后安装WantedBy=multi-user.target

8.1.3、设置开机自启动

sudo systemctl daemon-reload
sudo systemctl start xxx
sudo systemctl enable xxx

8.2、jar包自启动

8.2.1、添加开机启动文件

在 /etc/systemd/system 目录下创建 xxx.service文件

cd /etc/systemd/system
vim  xxx.service
# xxx即为服务名称

8.2.2、xxx.service文件内容

[Unit]# 服务名称Description=xxx
After=syslog.target network.target

[Service]# 文件路径WorkingDirectory=/opt/Dtech/Web
# jdk路径   以及启动jar文件ExecStart= /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -jar /opt/Dtech/Web/xxx.jar
SuccessExitStatus=143TimeoutStopSec=10Restart=on-failure
RestartSec=5[Install]WantedBy=multi-user.target

8.2.3、设置开机自启动

# 重新载入sudo systemctl daemon-reload
# 启动服务sudo systemctl start xxx
# 设置自启动sudo systemctl enable xxx

8.3、服务自启动相关命令

8.3.1、查看开机自启服务列表

systemctl list-unit-files|grep enabled

8.3.2、查看指定服务是否开机自启

systemctl is-enabled 服务名

8.3.3、开启/停止服务开机自启

# 开启开机自启
systemctl enable 服务名
# 停止开机自启
systemctl disable 服务名

9、时间设置

9.1、查看和修改系统时间

# 查看系统时间date# 修改系统时间date-s"20180604 22:46:55"

9.2、查看和修改硬件时钟

# 查看硬件时钟
hwclock  --show# 修改硬件时钟
hwclock --set--date="20180604 22:46:55"

9.3、用系统时间同步硬件时钟

hwclock --systohc# 或者
clock --systohc# 即将硬件时间改为和系统时间一样

9.4、用硬件时钟同步系统时间

hwclock --hctosys# 或者
clock --hctosys# hc代表硬件时间,sys代表系统时间,即将系统时间改为和硬件时钟一样

注意:必须使用root用户来修改时间才行。

9.5、修改时区

# 修改时区exportTZ='Asia/Shanghai'# 使时区生效source ~/.bashrc

9.6、让Linux同步Internet网络上的时间

修改的是系统时间

ntpdate time.nist.gov
ntpdate time.windows.com

9.7、自动定时校正时间

# 设定crontab计划任务自动校时:# 使用命令crontab -ecrontab-e#在里面写入下行命令# 每天3:30自动进行网络校时,并同时更新BIOS的时间303 * * * root /usr/sbin/ntpdate -u210.72.145.44;hwclock -w# 每隔一个小时同步一下internet时间,并同时更新BIOS的时间
* */1 * * * root ntpdatetime.nuri.net;hwclock -w# 每隔2分钟执行,将输出日志到/var.log/ntpdate.log 
*/2 * * * * /usr/sbin/ntpdate 192.168.109.101 >> /var/log/ntpdate.log

# 重启服务 service crond restart

9.8、时间修改补充

9.8.1、查看详细时间信息

timedatectl

我的结果

[root@localhost opt]# timedatectl
      Local time: 六 2023-02-18 17:16:06 CST
  Universal time: 六 2023-02-18 09:16:06 UTC
        RTC time: 六 2023-02-18 09:16:06
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: yes
NTP synchronized: yes
 RTC inlocal TZ: no
      DST active: n/a

注意看,时区信息

9.8.2、修改时区

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
标签: linux 服务器 运维

本文转载自: https://blog.csdn.net/qq_41244651/article/details/129101446
版权归原作者 chanalbert 所有, 如有侵权,请联系我们删除。

“Linux常用命令汇总”的评论:

还没有评论