Skip to content

常用操作

时间相关 🚀

shell
# 查看时间
date
# 查看时间、时区等信息
timedatectl status
# 列出可用时区(并使用grep过滤)
timedatectl list-timezones | grep Shanghai
# 设置时区
sudo timedatectl set-timezone Asia/Shanghai
# NTP更新时间,没有ntpdate时要安装(yum -y install ntpdate)
ntpdate ntp1.aliyun.com

网络相关 🚀

shell
# 查看所有网络接口的IP地址,ip addr show,简写形式:ip a
ip a
# 查看特定网络接口的IP地址(例如enp0s3)
ip addr show enp0s3
# 查看路由表, ip route, 简写形式:
ip r
# 查看网络配置
cat /etc/sysconfig/network-scripts/ifcfg-enp0s8
# 重启网络
systemctl restart NetworkManager
# 查看网络状态
nmcli device status
# 禁用网卡
nmcli device disconnect enp0s3(网卡别名)
# 启用网卡
nmcli device connect enp0s3(网卡别名)
# 查看ip
ip addr

查看端口占用 🚀

在Linux系统中,有多种方法可以查看端口占用情况。

使用 ss 命令(较新的Linux发行版)

shell
sudo ss -tulnp | grep 端口号

例如,查看端口8080的占用情况:

shell
sudo ss -tulnp | grep 8080

使用 netstat 命令

shell
sudo netstat -tulnp | grep 端口号
  • -t 选项显示TCP连接
  • -u 选项显示UDP连接
  • -l 选项仅显示正在监听的服务状态
  • -n 选项显示IP地址和端口号,而不是尝试解析域名
  • -p 选项显示进程标识符和程序名称,这需要root权限

例如,要查看端口8080的占用情况,可以使用:

shell
sudo netstat -tulnp | grep 8080

使用 lsof 命令

shell
sudo lsof -i :端口号

例如,查看端口8080的占用情况:

shell
sudo lsof -i :8080

放通端口 🚀

在Linux系统中,如果你想开放或允许通过防火墙(如iptables或firewalld)访问特定的端口,你需要根据你使用的防火墙软件进行相应的配置。这里我将分别介绍如何使用iptables和firewalld开放端口的方法。

使用iptables开放端口

查看当前iptables规则(可选,以便了解当前的防火墙设置):

shell
sudo iptables -L

开放端口(例如开放TCP端口80):

shell
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT

保存iptables规则(根据你的Linux发行版,可能需要执行不同的命令):

对于Debian/Ubuntu系统,可以使用iptables-persistent包:

shell
sudo apt-get install iptables-persistent
sudo netfilter-persistent save

对于CentOS/RHEL系统,可以使用service命令:

shell
service iptables save

或者,你也可以直接写入到/etc/network/if-pre-up.d或/etc/network/if-up.d脚本中,以确保在每次启动时应用规则。

使用firewalld开放端口

查看当前firewalld区域(可选,以了解当前的防火墙设置):

shell
sudo firewall-cmd --list-all

开放端口(例如开放TCP端口80):

shell
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
  • --zone=public表示在public区域开放端口,你也可以根据需要更改区域。
  • --permanent表示更改是持久的,即重启后仍然有效。

重新加载firewalld以应用更改:

shell
sudo firewall-cmd --reload

注意事项:

  • 确保在开放端口之前,你已经了解为何需要开放这些端口以及它们的安全风险。例如,开放的端口可能会使你的系统更容易受到攻击。
  • 如果你在一个生产环境中工作,建议在更改防火墙规则之前进行充分的测试,并确保有适当的日志记录和监控机制。

echo > 与echo >> 写入文件🚀

追加

shell
echo hello world >> test.txt

覆盖

shell
echo hello world > test.txt

cat 与 cat EOF 写入文件🚀

shell
# 参考资料:cat EOF  https://www.cnblogs.com/dance-walter/p/11051114.html

# 追加(文件不存在会自动创建,另外注意EOF前是<<)
cat >> test.txt << EOF
line1: abc
line2: def
EOF

# 覆盖(文件不存在会自动创建,另外注意EOF前是<<)
cat > test.txt << EOF
line1: abc
line2: def
line3: ghi
EOF