企业日常工作中常用的 Linux 操作系统命令整理

Linux 操作系统命令整理

在企业级运维、开发和日常工作中,Linux 命令是绕不开的核心技能。不论是日志排查、进程管理,还是高效运维优化,掌握这些命令都能让你事半功倍!本篇文章整理了自己在日常工作中积累最常用的 Linux 命令,希望对你有帮助!

Linux 查看相关常用命令

查看连接数

bash 复制代码
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

示例

[root@centos ~]# netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
ESTABLISHED 1075
FIN_WAIT2 1
TIME_WAIT 140

查看 TCP 连接

bash 复制代码
netstat -n | grep tcp

示例

[root@centos ~]# netstat -n | grep tcp
tcp        0      0 192.168.100.1:5432      192.168.100.233:59446     ESTABLISHED
...

查看统计端口连接数

bash 复制代码
netstat -nat | grep -i "443" | wc -l
bash 复制代码
netstat -nat | grep -i "80" | wc -l

查看目录下文件大小

直接在目录下执行

bash 复制代码
du -sh *

查看当前流量带宽

bash 复制代码
nethogs

示例

[root@centos ~]# nethogs
PID USER        PROGRAM 								DEV         SENT        RECEIVED     
22196 root  	sshd: root@pts/1 						eth0        0.521       0.053 KB/sec
1219  root 		/usr/local/qcloud/tat_agent/tat_agent 	eth0        0.011       0.011 KB/sec
10909 root      barad_agent 							eth0        0.000       0.000 KB/sec

查看目录下文件大小

bash 复制代码
ll -h /opt/data/backup/

示例

[root@localhost ~]# ll -h /opt/data/backup/
总用量 631M
-rwxrwxr-x 1 root root 4.4M 8月  16 09:59 database.bak
-rwxrwxr-x 1 root root 627M 8月  16 09:59 web.tar.gz

Linux 修改相关常用命令

Linux 修改时间

修改具体时间

bash 复制代码
date -s "2020-11-26 14:14:00"

修改日期

bash 复制代码
date -s "2020-11-26"

Linux 修改用户密码

root 修改普通用户的密码

bash 复制代码
sudo passwd user_name

然后连续两次输入新的用户密码即可;

root 查看普通用户密码

密码是无法被查看的,即使是 root 也不行,因此普通用户要是遗忘了密码,可以参照上一步,让管理员使用 root 权限修改密码,然后再将新密码告知普通用户;

普通用户修改自己的密码

bash 复制代码
passwd

直接使用上述命令 passwd 即可,之后它会要求你输入原先的密码和新的密码。

Linux 租赁IP地址

在企业网络环境中,Linux 服务器通常通过 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议) 获取 IP 地址。当网络发生变更,或者需要手动续租/重新获取 IP 地址时,我们可以使用以下命令来处理:

bash 复制代码
dhclient 

如果网络有异常或者 dhclient 无法解决问题,可以尝试 systemctl restart network.service 彻底重启网络服务,确保 IP 地址重新获取。

bash 复制代码
systemctl restart network.service

Linux 网卡文件位置

编辑以下网卡文件

bash 复制代码
/etc/sysconfig/network-scripts/ifcfg-ens33

Linux 配置网关等信息

BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.192.0
GATEWAY=192.168.1.254
DNS1=66.13.26.69

Linux 修改网络地址重启服务

bash 复制代码
service network restart

Linux 常用系列命令

netstat 命令

查看网络端口情况(Linux 查看端口监听状态)
bash 复制代码
netstat -anutp

参数含义:

-a 显示所有

-n 以ip形式显示当前建立的有效连接和端口

-u 显示UDP协议

-t 显示TCP协议

-p 显示对应PID与程序名

对查询结果进行过滤
bash 复制代码
netstat -antup | grep 8443

查询结果

Protocol Recv-Q Send-Q	Local Address				Foregin Address				State		PID/Program name
tcp        0      0 	0.0.0.0:9443                0.0.0.0:*                   LISTEN      11641/nginx     
tcp        0      0 	:::9443                     :::*                        LISTEN      11641/nginx     
tcp       32      0 	::ffff:132.190.99.12:47728  ::ffff:132.190.99.12:9443   CLOSE_WAIT  23626/java

查询进程信息

[root@localhost shell]# netstat -anp | grep 8443
tcp6       0      0 :::8443                 :::*                    LISTEN      10565/java

top 命令

top -p 查看进程的详细情况

$ top -p 进程号

[root@centos121 ~]# top -p 80897
top - 14:02:42 up 19 days, 22:29,  7 users,  load average: 1.17, 1.47, 1.49
Tasks:   1 total,   0 running,   1 sleeping,   0 stopped,   0 zombie
%Cpu0  :   6.2/0.0     6[|                    ]     %Cpu1  :   0.0/6.2     6[|                    ]
%Cpu2  :   0.0/6.7     7[|                    ]     %Cpu3  :   0.0/0.0     0[                     ]
%Cpu4  :   0.0/6.7     7[|                    ]     %Cpu5  :   0.0/6.7     7[|                    ]
%Cpu6  :   0.0/0.0     0[                     ]     %Cpu7  :   0.0/0.0     0[                     ]
GiB Mem : 72.1/31.2     [                     ]
GiB Swap:  3.5/15.7     [                     ]

   PID USER      PR  NI    VIRT    RES  %CPU  %MEM     TIME+ S COMMAND                                
 80897 kafka     20   0   14.3g   2.1g  40.0   6.7 314:22.60 S /opt/kafka/bin/java -Xmx2G -Xm+ 

ps 命令

[root@localhost ~]# ps -ef|grep Tomcat
root      2107     1 12  2021 ?        3-05:32:50 /usr/java/jdk1.8.0_134/jre/bin/java

lsof 命令

链接

使用 -i 显示所有连接

tar 命令

解压命令

bash 复制代码
tar -zxvf xxx.tar.gz

压缩命令

bash 复制代码
tar -cvf xxx.tar.gz ROOT/

curl 命令

链接

firewall-cmd 防火墙命令

centos 7 使用 firewall-cmd 相关命令来关闭防火墙

查看开放端口
bash 复制代码
firewall-cmd --list-all
设置开放的端口号
bash 复制代码
firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
重启防火墙
bash 复制代码
firewall-cmd --reload

iptables 防火墙命令

防火墙放开 80 端口
[root@localhost html]# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
[root@localhost html]# /etc/init.d/iptables save
[root@localhost html]# /etc/init.d/iptables restart
查看防火墙信息
/etc/init.d/iptables status
关闭防火墙服务
/etc/init.d/iptables stop
删除一条防火墙规则
bash 复制代码
# 查找所有规则
iptables -L INPUT --line-numbers

# 删除一条规则
iptables -D INPUT 11 #(注意,这个11是行号,是iptables -L INPUT --line-numbers 所打印出来的行号)
bash 复制代码
[root@localhost etc]# iptables -L INPUT --line-numbers
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:postgres
2    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

[root@localhost etc]# iptables -D INPUT 1
重启 iptables
bash 复制代码
service iptables save && service iptables restart
指定开放 IP 和端口
bash 复制代码
iptables -A INPUT -p tcp -s 192.168.137.1,192.168.137.102 --dport 22 -j ACCEPT
对所有 IP 禁止访问 22 端口
bash 复制代码
iptables -A INPUT -p tcp --dport 22 -j REJECT
对所有主机开放 5432 端口
bash 复制代码
/sbin/iptables -I INPUT -p tcp --dport 5432 -j ACCEPT

📢 结语

熟练掌握 Linux 常用命令,不仅能大幅提升运维效率,还能在企业生产环境中快速排查问题、优化系统性能。持续整理中...

相关推荐
你好龙卷风!!!5 分钟前
Mac mini M4安装nvm 和node
linux·运维·服务器
橙子小哥的代码世界13 分钟前
Vim 常用快捷键大全:跳转、编辑、查找替换全解析
linux·vim
TransPlus31 分钟前
Centos 7.9内核升级
运维·服务器·centos
WG_1735 分钟前
Linux:动静态库
linux·运维·服务器
凉、介1 小时前
ARM 架构下 cache 一致性问题整理
linux·汇编·arm开发·学习·缓存·架构
迁就却不将就1 小时前
Linux总结
linux·运维·服务器
ekskef_sef1 小时前
Linux下MySQL的简单使用
linux·mysql·adb
cjzcjl1 小时前
在Linux中开发OpenGL——检查开发环境对OpenGL ES的支持
linux·开发环境·opengl es
沧浪之水!1 小时前
Linux:文件系统的初步认识
linux·运维·服务器
暗夜之眼0071 小时前
Linux设备驱动开发之摄像头驱动移植(OV5640)
linux·驱动开发