Ubuntu 运维开发常用命令精简实战版一、系统运维系统信息uname -a # 完整内核信息 lsb_release -a # 系统版本 hostname # 查看/修改主机名 uptime # 开机时长、负载 df -h # 磁盘使用率 du -sh * # 目录大小 free -h # 内存、swap cat /proc/cpuinfo # CPU信息关机重启定时poweroff # 关机 reboot # 重启 shutdown -h now # 立刻关机 shutdown -h 22:00 # 定时关机用户权限sudo su # 切root adduser 用户名 # 创建用户 usermod -aG sudo 用户名 # 赋予管理员权限 chmod 755 文件 # 赋执行权限 chown root:root 文件 # 改属主属组 passwd # 修改当前用户密码 sudo passwd 用户名 # 改其他用户密码需 root sudo passwd root # 重置 root 密码二、文件目录运维mkdir -p a/b/c # 递归建目录 rm -rf 目录 # 强制删目录 cp -r 源 目标 # 递归复制文件夹 mv 文件 新名 # 移动/重命名 ln -s 源文件 软链接 # 创建软链接文件查看编辑vim 文件名 # 编辑文件 nano 文件名 # 简易编辑 grep -rn 关键词 ./ # 全局搜内容 tail -f 日志.log # 实时监控日志 less 日志文件 # 分页查看 wc -l 文件名 # 统计行数三、软件包管理sudo apt update apt upgrade -y # 全量更新 sudo apt install xxx -y # 静默安装 sudo apt remove xxx # 卸载 sudo apt autoremove # 清理依赖 dpkg -i xxx.deb # 安装deb包四、网络运维ls /sys/class/net #查看网卡名称 ip a # 查看网卡IP ifconfig # 查看网卡(需安装net-tools) route -n # 路由表 ping 域名/IP # 连通性测试 curl -I 网址 # 测试接口状态 wget 下载链接 # 下载文件 scp 文件 userip:路径 # 远程传文件 ss -ntlp # 查看监听端口 netstat -ntlp # 端口占用 lsof -i:80 # 查80端口进程 sudo netplan apply # 重载网络配置最常用不断SSH sudo netplan try # 测试配置是否有错先检测再生效 sudo netplan reboot #直接重启所有网络强制断网慎用 配置静态IP地址 1、50-cloud-init.yaml 文件不要动直接在这个文件配置静态IP,重启系统后会把你的静态 IP 配置还原成默认的 DHCP 模式。重启 → cloud-init 运行 → 把文件重新覆盖 → 变回 DHCP 你改它 白改 2、新建一个 优先级更高 的配置/etc/netplan/99-static-ip.yaml sudo vim /etc/netplan/99-static-ip.yaml # 新建一个优先级高点的文件前缀数字越大优先级越高 # 把下面的脚本cp 到 99-static-ip.yaml network: version: 2 # 必须写netplan 版本 renderer: networkd # 服务器用这个桌面版可改成 NetworkManager ethernets: # 以太网配置段 ens33: # 替换成你自己的网卡名 dhcp4: no # yes/no 开 / 关 DHCP addresses: [192.168.1.100/24] # 替换成你的IP/子网掩码 IP 地址 子网掩码 routes: [{ to: default, via: 192.168.1.1 }] # 网关 nameservers: addresses: [223.5.5.5,114.114.114.114] # DNS地址 version: 2 必须遵守的 6 条铁律 必须写 version: 2 必须用 routes via 做网关不能用 gateway4 不能用gateway4: 192.168.1.1 静态 IP 必须写 dhcp4: no 缩进只能用空格不能用 Tab 冒号后面必须加空格 列表项用 - 开头 网关下面二种写法都可以 routes: [{ to: default, via: 192.168.1.1 }] routes: - to: default via: 192.168.1.1 # 网关 DNS 下面二种写法都可以 nameservers: addresses: [223.5.5.5, 114.114.114.114] nameservers: addresses: - 223.5.5.5 - 114.114.114.114 sudo netplan try # 先测试配置是否正确避免断网 sudo netplan apply # 测试无误后正式生效 ip a show ens32 # 查看IP是否生效 # 测试网络连通性 ping -c 3 192.168.249.2 ping -c 3 www.baidu.com五、进程 服务管理ps aux | grep 进程名 # 筛选进程 top/htop # 实时资源监控 kill -9 PID # 强制杀进程 # systemd 服务 systemctl start 服务名 systemctl stop 服务名 systemctl restart 服务名 systemctl enable 服务名 # 开机自启 systemctl status 服务名 # 查看运行状态 journalctl -u 服务名 # 查看服务日志六、压缩解压tar zcvf 压缩包.tar.gz 目录 # 压缩 tar zxvf 压缩包.tar.gz # 解压 unzip 文件名.zip # 解压zip zip 压缩名.zip 文件 # 压缩zip七、定时任务 crontabcrontab -e # 编辑定时任务 crontab -l # 查看定时任务 # 格式分 时 日 月 周 命令 # 示例每天凌晨2点执行脚本 0 2 * * * /bin/bash /home/test.sh八、开发常用which python/java/node # 查看软件安装路径 source /etc/profile # 生效环境变量 env # 查看环境变量 ssh 用户IP # 远程连接服务器九、日志排查高频dmesg # 系统内核日志 cat /var/log/syslog # 系统日志 history # 查看执行命令十、磁盘挂载df -h # 查看整体磁盘占用 du -sh 目录名 # 查看文件夹大小 du -lh --max-depth1 | sort -rh #查看当前目录文件大小排序 lsblk # 查看磁盘分区 fdisk -l # 查看磁盘分区 mount /dev/sdb1 /data # 临时挂载 umount /data # 卸载挂载十一、防火墙Ubuntu 默认防火墙ufw底层是 iptablessudo ufw status # 查看防火墙状态 inactive 未启用/ active 已启用 sudo ufw status numbered # 查看带编号的规则 sudo ufw enable # 开启防火墙 sudo ufw disable # 关闭防火墙 sudo ufw reset # 重置所有规则清空 sudo systemctl enable ufw # 设置开机启动 sudo systemctl disable ufw # 取消开机启动 # 默认拒绝所有入站允许出站最安全 sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow 22/tcp # 放行SSH远程连接22端口 sudo ufw allow 1000:2000/tcp # 放行端口范围 1000-2000 sudo ufw allow ssh sudo ufw allow http sudo ufw allow https sudo ufw deny 3306 # 禁止某个端口 sudo ufw allow from 192.168.1.100 to any port 22 # 只允许 192.168.1.100 访问22端口 sudo ufw allow from 192.168.1.0/24 # 允许整个网段 sudo ufw deny from 192.168.1.200 # 禁止某个IP sudo ufw delete 2 # 删除指定端口查看带编号的规则ufw status numbered sudo ufw delete allow 80/tcp # 删除允许的 TCP 端口 sudo ufw delete allow 53/udp # 删除允许的 UDP 端口 sudo ufw delete allow 8080 # 删除允许的端口不指定协议默认TCPUDP sudo ufw deny icmp # 禁止别人ping本机 sudo ufw allow icmp # 允许ping sudo ufw logging on # 开启防火墙日志 tail -f /var/log/ufw.log # 查看日志
Ubuntu 常用命令
Ubuntu 运维开发常用命令精简实战版一、系统运维系统信息uname -a # 完整内核信息 lsb_release -a # 系统版本 hostname # 查看/修改主机名 uptime # 开机时长、负载 df -h # 磁盘使用率 du -sh * # 目录大小 free -h # 内存、swap cat /proc/cpuinfo # CPU信息关机重启定时poweroff # 关机 reboot # 重启 shutdown -h now # 立刻关机 shutdown -h 22:00 # 定时关机用户权限sudo su # 切root adduser 用户名 # 创建用户 usermod -aG sudo 用户名 # 赋予管理员权限 chmod 755 文件 # 赋执行权限 chown root:root 文件 # 改属主属组 passwd # 修改当前用户密码 sudo passwd 用户名 # 改其他用户密码需 root sudo passwd root # 重置 root 密码二、文件目录运维mkdir -p a/b/c # 递归建目录 rm -rf 目录 # 强制删目录 cp -r 源 目标 # 递归复制文件夹 mv 文件 新名 # 移动/重命名 ln -s 源文件 软链接 # 创建软链接文件查看编辑vim 文件名 # 编辑文件 nano 文件名 # 简易编辑 grep -rn 关键词 ./ # 全局搜内容 tail -f 日志.log # 实时监控日志 less 日志文件 # 分页查看 wc -l 文件名 # 统计行数三、软件包管理sudo apt update apt upgrade -y # 全量更新 sudo apt install xxx -y # 静默安装 sudo apt remove xxx # 卸载 sudo apt autoremove # 清理依赖 dpkg -i xxx.deb # 安装deb包四、网络运维ls /sys/class/net #查看网卡名称 ip a # 查看网卡IP ifconfig # 查看网卡(需安装net-tools) route -n # 路由表 ping 域名/IP # 连通性测试 curl -I 网址 # 测试接口状态 wget 下载链接 # 下载文件 scp 文件 userip:路径 # 远程传文件 ss -ntlp # 查看监听端口 netstat -ntlp # 端口占用 lsof -i:80 # 查80端口进程 sudo netplan apply # 重载网络配置最常用不断SSH sudo netplan try # 测试配置是否有错先检测再生效 sudo netplan reboot #直接重启所有网络强制断网慎用 配置静态IP地址 1、50-cloud-init.yaml 文件不要动直接在这个文件配置静态IP,重启系统后会把你的静态 IP 配置还原成默认的 DHCP 模式。重启 → cloud-init 运行 → 把文件重新覆盖 → 变回 DHCP 你改它 白改 2、新建一个 优先级更高 的配置/etc/netplan/99-static-ip.yaml sudo vim /etc/netplan/99-static-ip.yaml # 新建一个优先级高点的文件前缀数字越大优先级越高 # 把下面的脚本cp 到 99-static-ip.yaml network: version: 2 # 必须写netplan 版本 renderer: networkd # 服务器用这个桌面版可改成 NetworkManager ethernets: # 以太网配置段 ens33: # 替换成你自己的网卡名 dhcp4: no # yes/no 开 / 关 DHCP addresses: [192.168.1.100/24] # 替换成你的IP/子网掩码 IP 地址 子网掩码 routes: [{ to: default, via: 192.168.1.1 }] # 网关 nameservers: addresses: [223.5.5.5,114.114.114.114] # DNS地址 version: 2 必须遵守的 6 条铁律 必须写 version: 2 必须用 routes via 做网关不能用 gateway4 不能用gateway4: 192.168.1.1 静态 IP 必须写 dhcp4: no 缩进只能用空格不能用 Tab 冒号后面必须加空格 列表项用 - 开头 网关下面二种写法都可以 routes: [{ to: default, via: 192.168.1.1 }] routes: - to: default via: 192.168.1.1 # 网关 DNS 下面二种写法都可以 nameservers: addresses: [223.5.5.5, 114.114.114.114] nameservers: addresses: - 223.5.5.5 - 114.114.114.114 sudo netplan try # 先测试配置是否正确避免断网 sudo netplan apply # 测试无误后正式生效 ip a show ens32 # 查看IP是否生效 # 测试网络连通性 ping -c 3 192.168.249.2 ping -c 3 www.baidu.com五、进程 服务管理ps aux | grep 进程名 # 筛选进程 top/htop # 实时资源监控 kill -9 PID # 强制杀进程 # systemd 服务 systemctl start 服务名 systemctl stop 服务名 systemctl restart 服务名 systemctl enable 服务名 # 开机自启 systemctl status 服务名 # 查看运行状态 journalctl -u 服务名 # 查看服务日志六、压缩解压tar zcvf 压缩包.tar.gz 目录 # 压缩 tar zxvf 压缩包.tar.gz # 解压 unzip 文件名.zip # 解压zip zip 压缩名.zip 文件 # 压缩zip七、定时任务 crontabcrontab -e # 编辑定时任务 crontab -l # 查看定时任务 # 格式分 时 日 月 周 命令 # 示例每天凌晨2点执行脚本 0 2 * * * /bin/bash /home/test.sh八、开发常用which python/java/node # 查看软件安装路径 source /etc/profile # 生效环境变量 env # 查看环境变量 ssh 用户IP # 远程连接服务器九、日志排查高频dmesg # 系统内核日志 cat /var/log/syslog # 系统日志 history # 查看执行命令十、磁盘挂载df -h # 查看整体磁盘占用 du -sh 目录名 # 查看文件夹大小 du -lh --max-depth1 | sort -rh #查看当前目录文件大小排序 lsblk # 查看磁盘分区 fdisk -l # 查看磁盘分区 mount /dev/sdb1 /data # 临时挂载 umount /data # 卸载挂载十一、防火墙Ubuntu 默认防火墙ufw底层是 iptablessudo ufw status # 查看防火墙状态 inactive 未启用/ active 已启用 sudo ufw status numbered # 查看带编号的规则 sudo ufw enable # 开启防火墙 sudo ufw disable # 关闭防火墙 sudo ufw reset # 重置所有规则清空 sudo systemctl enable ufw # 设置开机启动 sudo systemctl disable ufw # 取消开机启动 # 默认拒绝所有入站允许出站最安全 sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow 22/tcp # 放行SSH远程连接22端口 sudo ufw allow 1000:2000/tcp # 放行端口范围 1000-2000 sudo ufw allow ssh sudo ufw allow http sudo ufw allow https sudo ufw deny 3306 # 禁止某个端口 sudo ufw allow from 192.168.1.100 to any port 22 # 只允许 192.168.1.100 访问22端口 sudo ufw allow from 192.168.1.0/24 # 允许整个网段 sudo ufw deny from 192.168.1.200 # 禁止某个IP sudo ufw delete 2 # 删除指定端口查看带编号的规则ufw status numbered sudo ufw delete allow 80/tcp # 删除允许的 TCP 端口 sudo ufw delete allow 53/udp # 删除允许的 UDP 端口 sudo ufw delete allow 8080 # 删除允许的端口不指定协议默认TCPUDP sudo ufw deny icmp # 禁止别人ping本机 sudo ufw allow icmp # 允许ping sudo ufw logging on # 开启防火墙日志 tail -f /var/log/ufw.log # 查看日志