当前位置: 首页 > article >正文

linuxmysqliptablesfirewalldtcpdump备份恢复常用命令

目录

 使用 tar 命令进行备份和恢复

备份

恢复

 使用 rsync 命令进行备份和恢复

备份

恢复

使用 cp 命令进行简单的文件备份

备份

恢复

使用 tar 和 cron 定期备份

使用 cloud backup 工具(如 rclone)

备份到云存储

恢复从云存储

mysql备份恢复命令

iptables 和 firewalld常用命令

iptables 常用命令

firewalld 常用命令

tcpdump 常用抓包命令

备注:


 使用 tar 命令进行备份和恢复

备份

tar -czvf backup.tar.gz /path/to/directory

  • -c:创建归档。
  • -z:压缩归档文件(使用 gzip)。
  • -v:显示详细的过程。
  • -f:指定归档文件的名称。
恢复

要恢复 tar 备份文件,可以使用 -x(提取)选项。

tar -xzvf backup.tar.gz -C /path/to/restore

  • -x:解包归档。
  • -z:使用 gzip 解压。
  • -v:显示详细过程。
  • -f:指定归档文件。
  • -C:指定恢复到的目录。

 使用 rsync 命令进行备份和恢复

rsync 是一个快速、灵活的文件同步工具,适用于增量备份和大规模文件系统备份。

备份

将本地文件或目录备份到远程服务器:

rsync -avz /path/to/source/ user@remote:/path/to/destination/

  • -a:归档模式,保持符号链接、权限、时间戳等。
  • -v:显示详细过程。
  • -z:启用压缩。
恢复

将备份的文件从远程服务器恢复到本地:

rsync -avz user@remote:/path/to/backup/ /path/to/local/destination/

使用 cp 命令进行简单的文件备份

cp 命令可以用来复制文件和目录,适合进行简单的备份。

备份

复制文件或目录到备份位置:

cp -r /path/to/source /path/to/backup

  • -r:递归复制整个目录。
恢复

从备份位置恢复文件或目录:

cp -r /path/to/backup /path/to/destination

使用 tar 和 cron 定期备份

如果需要定期自动备份,可以将 tar 命令与 cron(定时任务)结合使用。例如,设置一个每日备份任务:

crontab -e

然后在 cron 文件中添加以下行:

0 2 * * * tar -czvf /path/to/backup/backup_$(date +\%F).tar.gz /path/to/backup/source

这条命令会每天凌晨 2 点自动备份。

使用 cloud backup 工具(如 rclone)

对于需要将备份存储到云存储服务(如 Google Drive, AWS S3 等)的用户,可以使用 rclone 工具:

备份到云存储

rclone copy /path/to/source remote:/path/to/backup

  • remote: 是指配置好的云存储远程地址。
恢复从云存储

rclone copy remote:/path/to/backup /path/to/destination

mysql备份恢复命令

操作命令说明
备份数据库mysqldump -u <用户名> -p <数据库名> > <备份文件名>.sql备份指定数据库的所有表结构和数据。
备份指定表mysqldump -u <用户名> -p <数据库名> <表1> <表2> > <备份文件名>.sql备份指定数据库中的指定表。
备份所有数据库mysqldump -u <用户名> -p --all-databases > <备份文件名>.sql备份 MySQL 中的所有数据库。
备份数据库结构(不备份数据)mysqldump -u <用户名> -p -d <数据库名> > <备份文件名>.sql仅备份数据库的表结构,不包括数据。
备份指定表结构(不备份数据)mysqldump -u <用户名> -p -d <数据库名> <表1> <表2> > <备份文件名>.sql仅备份指定表的表结构,不包括数据。
备份数据库并压缩`mysqldump -u <用户名> -p <数据库名>gzip > <备份文件名>.sql.gz`
恢复数据库mysql -u <用户名> -p < <备份文件名>.sql恢复备份文件到指定数据库。
恢复指定数据库mysql -u <用户名> -p <数据库名> < <备份文件名>.sql恢复备份文件到指定的数据库(如果备份时未指定数据库,则直接恢复所有数据库)。
恢复数据库并替换现有数据mysql -u <用户名> -p --force < <备份文件名>.sql恢复备份文件时强制覆盖现有数据。
恢复数据到新数据库mysql -u <用户名> -p -e "CREATE DATABASE <新数据库名>"<br> mysql -u <用户名> -p <新数据库名> < <备份文件名>.sql首先创建一个新的数据库,然后恢复备份文件到该数据库中。
恢复表到新数据库`mysqldump -u <用户名> -p <数据库名> <表名>mysql -u <用户名> -p <新数据库名>`

iptablesfirewalld常用命令

iptables 常用命令

操作命令说明
查看当前规则sudo iptables -L查看当前所有的防火墙规则。
查看规则及详细信息sudo iptables -L -v查看所有规则的详细信息,包括匹配的流量和字节数等。
查看规则及数字格式显示sudo iptables -L -n以数字格式(IP 和端口)显示当前规则。
添加规则(允许访问某端口)sudo iptables -A INPUT -p tcp --dport <端口号> -j ACCEPT允许 TCP 端口 <端口号> 上的访问。
删除规则(删除某端口的访问规则)sudo iptables -D INPUT -p tcp --dport <端口号> -j ACCEPT删除允许访问 <端口号> 的规则。
添加规则(拒绝某端口的访问)sudo iptables -A INPUT -p tcp --dport <端口号> -j REJECT拒绝访问 TCP 端口 <端口号>
删除规则(拒绝某端口的访问)sudo iptables -D INPUT -p tcp --dport <端口号> -j REJECT删除拒绝访问 <端口号> 的规则。
保存规则sudo iptables-save > /etc/iptables/rules.v4保存当前的 iptables 规则到指定文件中。
恢复规则sudo iptables-restore < /etc/iptables/rules.v4从指定文件恢复保存的 iptables 规则。
清除所有规则sudo iptables -F清除所有的 iptables 规则。
重置默认策略为接受sudo iptables -P INPUT ACCEPT设置 INPUT 链的默认策略为接受。
设置默认策略为拒绝sudo iptables -P INPUT DROP设置 INPUT 链的默认策略为丢弃(拒绝)。

firewalld 常用命令

操作命令说明
查看防火墙状态sudo firewall-cmd --state查看 firewalld 的当前状态(是否运行)。
查看当前活动区域sudo firewall-cmd --get-active-zones查看当前活动的防火墙区域。
查看所有区域的规则sudo firewall-cmd --list-all查看所有区域的防火墙规则。
查看特定区域的规则sudo firewall-cmd --zone=<区域名称> --list-all查看指定区域的防火墙规则。
允许端口访问sudo firewall-cmd --zone=public --add-port=<端口号>/tcp允许某个端口(如 <端口号>)在 public 区域的 TCP 协议下访问。
永久允许端口访问sudo firewall-cmd --zone=public --add-port=<端口号>/tcp --permanent永久允许某个端口(如 <端口号>)在 public 区域的 TCP 协议下访问。
删除端口访问规则sudo firewall-cmd --zone=public --remove-port=<端口号>/tcp删除某个端口(如 <端口号>)在 public 区域的访问规则。
永久删除端口访问规则sudo firewall-cmd --zone=public --remove-port=<端口号>/tcp --permanent永久删除某个端口(如 <端口号>)在 public 区域的访问规则。
重新载入防火墙配置sudo firewall-cmd --reload重新载入防火墙配置,使规则更改生效。
查看已启用的服务sudo firewall-cmd --list-services查看当前启用的服务。
添加服务到允许列表sudo firewall-cmd --zone=public --add-service=<服务名>允许某个服务(如 HTTP, HTTPS)在 public 区域。
永久添加服务到允许列表sudo firewall-cmd --zone=public --add-service=<服务名> --permanent永久允许某个服务(如 HTTP, HTTPS)在 public 区域。
删除服务从允许列表sudo firewall-cmd --zone=public --remove-service=<服务名>删除某个服务(如 HTTP, HTTPS)从 public 区域的允许列表中。
永久删除服务从允许列表sudo firewall-cmd --zone=public --remove-service=<服务名> --permanent永久删除某个服务(如 HTTP, HTTPS)从 public 区域的允许列表中。
设置默认区域sudo firewall-cmd --set-default-zone=<区域名称>设置默认的防火墙区域。
禁用防火墙sudo systemctl stop firewalld停止 firewalld 服务,禁用防火墙。
启用防火墙sudo systemctl start firewalld启动 firewalld 服务。

tcpdump 常用抓包命令

操作命令说明
查看所有网络接口sudo tcpdump -D列出系统中所有可用的网络接口。
指定接口进行抓包sudo tcpdump -i <接口名>在指定的接口(如 eth0wlan0 等)上抓取数据包。
抓取指定端口的包(TCP端口)sudo tcpdump -i <接口名> tcp port <端口号>抓取指定端口的 TCP 数据包(如 80 端口)。
抓取指定端口的包(UDP端口)sudo tcpdump -i <接口名> udp port <端口号>抓取指定端口的 UDP 数据包(如 53 端口)。
抓取指定 IP 的数据包sudo tcpdump -i <接口名> host <IP地址>抓取指定 IP 地址(如 192.168.1.1)的所有数据包。
抓取源 IP 为指定地址的数据包sudo tcpdump -i <接口名> src <IP地址>抓取源 IP 地址为指定地址的所有数据包。
抓取目的 IP 为指定地址的数据包sudo tcpdump -i <接口名> dst <IP地址>抓取目的 IP 地址为指定地址的所有数据包。
抓取指定协议的数据包sudo tcpdump -i <接口名> <协议>抓取指定协议的所有数据包(如 tcpudpicmp 等)。
抓取指定大小的数据包sudo tcpdump -i <接口名> less <字节数>抓取小于指定字节数的包(如抓取小于 100 字节的数据包)。
抓取大于指定大小的数据包sudo tcpdump -i <接口名> greater <字节数>抓取大于指定字节数的包。
保存抓包数据到文件sudo tcpdump -i <接口名> -w <文件名>.pcap将抓取的数据包保存到指定文件(如 capture.pcap)。
从文件读取数据包sudo tcpdump -r <文件名>.pcap从指定的 .pcap 文件中读取并分析数据包。
限制抓取数据包的数量sudo tcpdump -i <接口名> -c <数量>限制抓取的数据包数量(如 10)。
抓取并显示详细信息sudo tcpdump -i <接口名> -v抓取并显示每个数据包的详细信息。
抓取并显示更详细信息sudo tcpdump -i <接口名> -vv抓取并显示每个数据包的更详细信息。
抓取并显示最详细信息sudo tcpdump -i <接口名> -vvv抓取并显示每个数据包的最详细信息。
只显示包头sudo tcpdump -i <接口名> -X只显示抓取包的内容和数据(以十六进制和 ASCII 格式显示)。
只显示包的头部信息sudo tcpdump -i <接口名> -S显示数据包的头部信息,通常用于 TCP 连接中的序列号和确认号。
抓取特定网络段的数据包sudo tcpdump -i <接口名> net <网络段>抓取特定网络段(如 192.168.1.0/24)的所有数据包。
抓取特定子网的数据包sudo tcpdump -i <接口名> net <子网地址> mask <子网掩码>抓取特定子网的数据包。
抓取ICMP请求和响应(Ping)sudo tcpdump -i <接口名> icmp抓取 ICMP 请求和响应数据包,通常用于诊断网络连接(Ping)。
显示每个包的时间戳sudo tcpdump -i <接口名> -tttt在显示抓取包时,打印精确的时间戳。
抓取特定TCP标志的数据包sudo tcpdump -i <接口名> 'tcp[tcpflags] == tcp-syn'抓取 TCP SYN 包,用于建立连接。
抓取不包含某些数据包sudo tcpdump -i <接口名> not <协议>抓取不包含指定协议的数据包(如 not udp)。
抓取来自特定 IP 和端口的数据包sudo tcpdump -i <接口名> src <源IP> and port <端口号>抓取来自特定源 IP 和端口的数据包。
抓取包含特定字符串的包sudo tcpdump -i <接口名> -A 'string'抓取包含特定字符串的包,并以 ASCII 格式显示包内容。
抓取并以 CSV 格式保存数据包sudo tcpdump -i <接口名> -tttt -n -v -w capture.pcap捕获数据包并将其保存为 CSV 文件格式,进行详细分析。

备注

  • tcpdump 是一个强大的网络抓包工具,支持多种协议分析和灵活的过滤器设置。
  • 捕获数据时,如果目标是大量数据包,建议加上 -c 参数限制捕获数量,以防占用过多的系统资源。
  • 使用 -w 可以将抓包内容保存为文件,后续可用 -r 参数读取并进行分析。
  • 捕获大量网络数据时,可以加上 -n 参数避免 DNS 解析,提高性能。


http://www.kler.cn/a/415919.html

相关文章:

  • Next.js-样式处理
  • hdlbits系列verilog解答(Exams/m2014 q4a)-86
  • 消息传递神经网络(Message Passing Neural Networks, MPNN)
  • Java项目中加缓存
  • TsingtaoAI具身智能高校实训方案通过华为昇腾技术认证
  • 电机驱动MCU介绍
  • 【机器学习】多层神经网络中的误差反向传播算法与过拟合抑制技术的比较与优化
  • AI开发:支持向量机(SVM)入门教程- Python 机器学习
  • 23.100ASK_T113-PRO 移植opencv
  • ROS2教程 - 1 ROS简介
  • ️ 爬虫开发中常见的性能优化策略有哪些?
  • Kafka-Connect
  • 单片机几大时钟源
  • Java基础——泛型(3)#HashMap泛型
  • GORM慢查询、SQL日志与Go项目日志的整合与串联
  • #Js篇: 链式判断运算符 ?.和Null判断运算符 ??和逻辑赋值运算符||= = ??=
  • 领养我的宠物:SpringBoot开发指南
  • Cesium K-means自动聚合点的原理
  • 史陶比尔机器人维修-接口总结
  • Mac启动服务慢问题解决,InetAddress.getLocalHost().getHostAddress()慢问题。
  • 3.24MayBeSomeComputeC
  • 如何通过PHP爬虫模拟表单提交,抓取隐藏数据
  • USB Type-C一线通扩展屏:多场景应用,重塑高效办公与极致娱乐体验
  • 26页PDF | 数据中台能力框架及评估体系解读(限免下载)
  • linux-信号
  • springboot339javaweb的新能源充电系统pf(论文+源码)_kaic