Linux常用命令及配置
1 创建删除用户创建用户# 添加用户 sudo useradd -d /home/用户名 用户名 # 设置密码 sudo passwd 用户名删除用户# 1、userdel 命令(这条命令会删除指定的用户账号并从系统中移除该用户的主目录) userdel username # 2、udo 和 rm 命令(这条命令会先删除用户主目录下的文件然后使用 userdel -r 删除用户账号。多种方法的原因在于不同的Linux发行版可能会有不同的默认配置因此选择哪种方法删除用户可能会有所变化。但无论哪种方法务必小心操作以免误删除重要文件或有后续的影响。) sudo rm -r /home/username sudo userdel -r username2 修改用户登录密码1.1 root登录运行passwd 命令可以设置或修改任何用户的密码# 修改密码 passwd 用户名1.2 root登录修改任何普通用户的密码echo 用户名:新密码 | sudo chpasswd3 Linux修改系统时间3.1 手动同步3.1.1 使用date命令修改系统时间date -s 2024-08-24 12:00:003.1.2 使用hwclock命令修改硬件时钟防止系统重启后修改的时间失效hwclock --set --date 2024-08-24 12:00:003.1.3 将硬件时钟同步到系统时间hwclock --hctosys3.2 根据时间服务器同步临时手动同步3.2.1 安装ntpdate指令#yum安装 yum install ntpdate#apt-get安装 apt-get install ntpdate3.2.2 同步时间使用ntpdate临时同步需要网络#临时手动同步时间 ntpdate ntp.aliyun.com3.3 修改时区3.1、查看当前时区[rootlocalhost ~]# ll /etc/localtime lrwxrwxrwx. 1 root root 35 8月 16 16:19 /etc/localtime - ../usr/share/zoneinfo/Asia/Shanghai3.2、修改时区#方式一直接修改/etc/localtime文件链接的时区文件 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime#方式二使用timedatectl命令 timedatectl set-timezone Asia/Shanghai4 检查java进程ps -ef |grep java5 检查nginx进程ps aux |grep nginx6 查看/杀进程6.1 查看全部进程PID以下任一个命令都可以1$ ps -A2$ ps -ef3$ ps -aux找到要杀掉进程的PID比如是1323然后用下面的命令杀掉$ kill -s 9 1323如果杀不掉提示没有权限那么用$ sudo kill -s 9 18276.2 精确查找进程PID方法上面的三种查找进程PID命令把所有进程都列出来了眼花缭乱下面的命令可以查找精确进程的PID比如查找进程java1$ ps -ef | grep java2$ pgrep java……然后kill命令杀掉相应进程$ kill -s 9 13236.3 快速杀掉进程方法下面两种方法只要给出进程名即可杀掉而且使用pkill和killall都不要加 -s信号等级99即强制、尽快终止进程直接跟在 “-“ 后面1$ pkill -9 java2$ killall -9 java6.4 根据进程名查找pid杀java进程ps -ef |grep ${server_name} |grep java |awk {print $2}7 实时监控文件最后100行tail -100f 文件名8 静态查看最后100行tail -n 100 文件名 # 或简写为 tail -100 文件名9 压缩文件根据不同的需求选择合适的压缩命令* 创建 .tar 文件tar -cvf archive.tar directory/* 创建 .tar.gz 或 .tgz 文件tar -czvf archive.tar.gz directory/* 创建 .tar.bz2 文件tar -cjvf archive.tar.bz2 directory/* 创建 .tar.xz 文件tar -cJvf archive.tar.xz directory/* 压缩文件为 .gzgzip file* 压缩文件为 .bz2bzip2 file* 压缩文件为 .xzxz file* 创建 .zip 文件zip -r archive.zip directory/* 创建 .rar 文件rar a archive.rar directory/需要安装rar* 创建 .7z 文件7z a archive.7z directory/需要安装p7zip-full打包忽略文件夹tar -czvf test.tar.gz --excludetest/folder1 --excludetest/folder2 --excludetest/file test/打包忽略文件改变报错--warningno-file-changed 在使用 tar 命令打包时禁止出现常见的文件未改变的警告tar命令打包时,若打包文件更新了会导致tar命令报错并终止:tar: ./xxx: file changed as we read it,该命令可以解决这个问题,方便自动化脚本等tar --warningno-file-changed -czvf test.tar.gz --excludetest/folder1 --excludetest/folder2 --excludetest/file test/10 解压文件根据不同的压缩文件格式选择合适的解压缩命令* .tartar -xvf file.tar* .tar.gz 或 .tgztar -zxvf file.tar.gz* .tar.bz2tar -jxvf file.tar.bz2* .tar.xztar -Jxvf file.tar.xz* .gzgzip -d file.gz* .bz2bzip2 -d file.bz2* .xzxz -d file.xz* .zipunzip file.zip* .rarrar x file.rar需要安装rar* .7z7z x file.7z需要安装p7zip-full11 设置开机自启自动联网配置一下网络自启第一步su 进入root用户命令su - root第二步进入/etc/sysconfig/network-scripts/命令cd /etc/sysconfig/network-scripts/第三步查看 是否存在 ifcfg-ens33可能因服务器而异名称不一样命令是ls麒麟服务器可能是ifcfg-enp4s0第四步命令vim打开ifcfg-ens33命令vim ifcfg-ens33第五步把 ONBOOTno修改为ONBOOTyes输入i 进入输入模式把 ONBOOTno修改为ONBOOTyes第六步退出并保存12 开放端口在CentOS 7中开放端口通常涉及到配置防火墙规则以确保特定的端口可以被外部访问。CentOS 7默认使用firewalld作为防火墙管理工具但你也可以使用iptables尽管firewalld是推荐的现代工具。方式一1、开启防火墙systemctl start firewalld2、开放指定端口# 开放8080端口 firewall-cmd --zonepublic --add-port8080/tcp --permanent参数注释–zonepublic 作用域公开的–add-port1935/tcp 添加端口格式为端口/通讯协议–permanent 永久生效没有此参数重启后失效3、重启防火墙firewall-cmd --reload4、查看端口号命令查看当前所有tcp、udp端口netstat -ntulp # -t 显示TCP连接 # -u 显示UDP连接 # -l 仅显示监听状态的端口 # -n 以数字形式显示地址和端口号不尝试解析域名 # -p 进程名 # 或者 lsof -i :端口查看8080端口使用情况netstat -ntulp |grep 8080lsof -i :8080方式二开放端口:8080/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT方式三-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPTservice iptables restart13 关闭端口# 关闭端口 sudo iptables -A INPUT -p tcp --dport 8080 -j REJECT # 重启防火墙 firewall-cmd --reload查看防火墙开放的端口sudo iptables -L -n查看端口占用netstat -tulnp netstat -tulnp | grep 123414 centos7安装jdk因为默认的CentOS仓库可能不包含较新的JDK版本特别是如果用户使用的是CentOS 7或更早的版本。所以可能需要添加额外的仓库比如EPEL或者Oracle的官方仓库但更常见的是使用AdoptOpenJDK或Amazon Corretto的源。14.1 卸载旧版本 JDK可选# 查找旧版本 rpm -qa | grep java-1.8 # 卸载示例 sudo yum remove -y java-1.8.0-openjdk-devel14.2 安装 Amazon Corretto 17步骤 1添加 Amazon Corretto 仓库# 下载仓库配置 sudo curl -L -o /etc/yum.repos.d/corretto.repo https://yum.corretto.aws/corretto.repo步骤 2安装 Corretto 17sudo yum install -y java-17-amazon-corretto-devel14.3 验证安装# 检查 Java 版本 java -version # 输出应包含类似内容 # openjdk version 17.0.11 2024-04-16 LTS # 或 # openjdk version 17.0.11 2024-04-16 LTS (Corretto-17.0.11.12.1)14.4 设置默认 Java 版本如系统存在多版本sudo alternatives --config java # 按提示选择 JDK 17 的编号14.5 配置环境变量可选编辑全局环境变量文件sudo vim /etc/profile.d/java.shexport JAVA_HOME/usr/lib/jvm/java-17-openjdk # 路径可能因发行版不同用 readlink -f $(which java) 确认 export PATH$JAVA_HOME/bin:$PATH使配置生效source /etc/profile.d/java.sh15 安装maven方法 1使用包管理器安装适合快速部署但版本可能较旧CentOS/RHEL 系统# 启用 EPEL 仓库如果尚未启用 sudo yum install -y epel-release # 安装 Maven sudo yum install -y maven # 验证安装 mvn -vDebian/Ubuntu 系统sudo apt update sudo apt install -y maven mvn -v方法 2手动安装推荐可指定版本步骤 1下载 Maven 二进制包从国内镜像站下载以清华镜像为例替换版本号# 下载最新版示例为 3.9.6 wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz # 或从官方下载 # wget https://dlcdn.apache.org/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz步骤 2解压并移动至安装目录# 解压到 /opt 目录 sudo tar -xzf apache-maven-3.9.6-bin.tar.gz -C /opt # 创建软链接方便版本管理 sudo ln -s /opt/apache-maven-3.9.6 /opt/maven步骤 3配置环境变量编辑全局配置文件sudo vim /etc/profile.d/maven.sh添加以下内容export MAVEN_HOME/opt/maven export PATH$MAVEN_HOME/bin:$PATH使配置生效source /etc/profile.d/maven.sh步骤 4验证安装mvn -v # 输出应包含 Maven 版本及 JDK 信息步骤5配置 Maven 镜像加速编辑 Maven 配置文件~/.m2/settings.xml若不存在则创建mkdir -p ~/.m2 vim ~/.m2/settings.xml添加华为云镜像mirrors !-- 华为云 -- mirror idhuaweicloud/id mirrorOfcentral/mirrorOf urlhttps://repo.huaweicloud.com/repository/maven//url /mirror /mirrors16 centos配置阿里yum# 1.备份当前yum源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup # 2.下载新的CentOS-Base.repo 到/etc/yum.repos.d/ # CentOS 5 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo # 或者 curl -o /etc/yum.repos.d/CentOS-Base.repo # CentOS 6 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo # 或者 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo # CentOS 7 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 或者 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 3.清空并生成缓存 yum clean all yum makecache # 首先要安装一个yum工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm217 查看目录大小# 查看当前目录的总大小 du -sh # 查看当前目录所有子目录的大小只会显示子目录子子目录不显示 du -sh * # 查看当前目录和所有子目录大小最后一行会显示当前目录的总大小不包括隐藏文件 du -ach * du -sh 目录路径 du -sh /usr18 linux切换用户su 和 su - 的区别:su -: 切换用户同时切换到目标用户的环境变量。su - user1su: 仅切换用户不改变当前用户的环境变量su user19 创建目录创建空目录通常在当前目录下创建空目录否则就是在父级目录都存在的情况下创建语法如下递归创建多级目录如果创建的多级目录中某个上级目录不存在那么就会创建不成功必须要加上 -p 选项就能成功创建了。# 显式创建 mkdir -pv [多级目录] # 隐式创建 mkdir -p [多级目录]创建新目录都显示提示信息我们可以加上 -v 选项那么在创建新目录时就会打印提示信息 mkdir: created directory xxx20 访问nginx默认页面curl -l [ip地址]21 递归修改文件权限(自动任务)chmod -R 755 [目录]在服务器上创建一个脚本脚本每5分钟自动执行一次递归修改文件权限1. 创建脚本文件在服务器上创建脚本文件例如set_dir_perms.sh并添加以下内容#!/bin/bash # 目标目录路径请替换为你的实际目录路径 TARGET_DIR/share_data # 设置权限值例如755按需修改 PERMISSIONS755 # 执行权限修改 chmod $PERMISSIONS $TARGET_DIR 2/dev/null # 可选记录日志 # echo [$(date)] 权限已设置为 $PERMISSIONS 在目录 $TARGET_DIR /var/log/permission_changes.log2. 赋予脚本执行权限chmod x /path/to/set_dir_perms.sh3. 配置 Cron 定时任务编辑当前用户的 crontabcrontab -e添加以下行每5分钟执行一次*/5 * * * * /path/to/set_dir_perms.sh4. 验证配置可选检查 cron 配置crontab -l关键说明替换路径将脚本中的/share_data替换为你的实际目录路径权限值根据需要修改PERMISSIONS的值常用值755或775递归修改如需修改目录内所有内容将chmod命令改为chmod -R $PERMISSIONS $TARGET_DIR日志功能取消注释echo行以启用日志记录需确保日志文件存在且可写安全建议使用绝对路径限制脚本和目录的访问权限首次测试时可在脚本中添加set -x开启调试检查系统日志确认任务执行grep CRON /var/log/syslog22表示标准错误流stderr - 程序输出的错误信息是重定向操作符/dev/nullLinux 的特殊设备文件功能相当于黑洞写入其中的所有数据都会被丢弃不产生任何输出也不占用存储空间组合效果2/dev/null表示将命令执行产生的错误信息全部丢弃不显示在终端也不保存到任何文件。在脚本中的实际作用chmod $PERMISSIONS $TARGET_DIR 2/dev/null✅ 如果命令执行成功正常完成权限修改❌ 如果命令执行失败如目录不存在/权限不足错误信息会被重定向到/dev/null终端不会显示任何错误提示脚本不会因错误而中断cron文件语法:分 小时 日 月 星期 命令0-59 0-23 1-31 1-12 0-6 command (取值范围,0表示周日一般一行对应一个任务)Minute Hour Day Month Dayofweek command分钟 小时 天 月 天每星期 命令记住几个特殊符号的含义:“*”代表取值范围内的数字,“/”代表”每”,“-”代表从某个数字到某个数字,“,”分开几个离散的数字30 3 10,20 * * ls 每月10号及20号的330执行ls命令[注“”用来连接多个不连续的时段] 25 8-11 * * * ls 每天8-11点的第25分钟执行ls命令[注“-”用来连接连续的时段] */15 * * * * ls 每15分钟执行一次ls命令 [即每个小时的第0 15 30 45 60分钟执行ls命令 ] 30 6 */10 * * ls 每个月中每隔10天6:30执行一次ls命令[即每月的1、11、21、31日是的630执行一次ls 命令。 ]22 NFS挂载nfs功能通过网络把一个操作系统里的文件挂载到另一个操作系统上。mount 进行挂载语法:sudo mount -t nfs 被挂载的主机IP:被挂载的文件目录路径 进行挂载的主机想要将文件挂载到的文件路径 # sudo mount -t nfs 远程主机IP:远程文件目录路径 本机文件目录路径示例:mount -t nfs 192.168.43.64:/share_data /share_data1umount 取消挂载umount /share_data1注前提在当前主机创建要挂载到的路径23 redisredis-cli -h 192.168.254.129 -p 6379 -a [password]redis默认端口6379.哨兵模式默认端口2637924 maven编译1.临时切换jdk# 假设找到JDK 1.6路径为 /usr/java/jdk1.6.0_45export JAVA_HOME/usr/java/jdk1.6.0_45export PATH$JAVA_HOME/bin:$PATH# 验证版本java -version # 应输出1.6mvn -v # 检查Maven使用的Java版本2、pom中配置source和targetbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion3.8.1/versionconfigurationsource1.6/sourcetarget1.6/target!-- 如果仍有问题强制指定编译器路径 --forktrue/forkexecutable${env.JAVA_HOME_1_6}/bin/javac/executable/configuration/plugin/plugins/build3.设置临时变量export JAVA_HOME_1_6/usr/java/jdk1.6.0_45mvn clean compile4、切回其他版本export JAVA_HOME/usr/java/jdk1.6.0_45export PATH$JAVA_HOME/bin:$PATH其他mvn clean install -Dmaven.compiler.source11 -Dmaven.compiler.target11JAVA_HOME/path/to/your/jdk mvn clean install25 服务器上java程序开机自启以jenkins为例1.通过chkconfig --list命令列出系统中已安装的服务及其启动状态chkconfig --list2. 创建启动脚本在/etc/init.d/目录下创建Jenkins启动脚本vim jenkins_startup.sh脚本内容如下#!/bin/bash #chkconfig:2345 80 90 #decription:启动Jenkins #请将/root/jenkinsStart.log和/root/jenkins.war替换为实际的路径。 nohup java -jar /root/jenkins.war /root/jenkinsStart.log 3. 编辑完脚本后对脚本进行赋权chmod x jenkins_startup.sh4. 将脚本添加进清单chkconfig --add jenkins_startup.sh5. 添加完毕后查看清单chkconfig --list至此完成了Jenkins随操作系统启动自启服务的操作也可以使用service jenkins_startup.sh start/stop/restart命令来重启服务。26 查看用户所属组groups命令功能显示当前用户或指定用户的所有所属组。语法groups显示当前用户所属组。groups 用户名显示指定用户所属组。27 更改文件所属在Linux中可以使用chown命令递归更改目录及其所有子目录和文件的所属者。该操作需要管理员权限使用sudo或以root用户执行。命令格式chown -R 所有者:组名 目录路径28 linux其他用户配置jdk例如root用户jdk版本为17现需要给mms用户配置jdk1.8操作流程如下# 到mms家目录 cd ~ # 修改.bash_profile文件 vim .bash_profile # 修改用户级别jdk环境变量 export JAVA_HOME/usr/java/jdk1.8.0_461 export PATH$JAVA_HOME/bin:$PATH # 刷新文件 source .bash_profile29 防火墙相关常用命令#查看防火墙状态 systemctl status firewalld #开启防火墙 systemctl start firewalld #关闭防火墙 systemctl stop firewalld #重启防火墙 立即生效 systemctl restart firewalld # 重新加载防火墙 # 两种重启的的区别第一个不会断开连接就是firewalld特性之一动态添加规则第二个会断开所有连接类似重启服务加载 firewall-cmd --reload firewall-cmd --complete-reload # 设置防火墙自启动 sudo systemctl enable firewalld # 启用自启动 # 禁用防火墙自启动重启后生效 sudo systemctl disable firewalld30 svn命令相关添加当前目录下的所有文件和子目录svn add . --force. 代表当前工作目录此命令会添加当前目录下所有未版本化的文件和子目录提交到版本库:svn commit -m 添加目录下所有文件到版本控制svn add 只是将文件纳入本地版本控制的 “待提交列表”需要执行 commit 命令才能真正提交到远程仓库更新svn upsvn update --username xxx --password xxx检出svn checkout http://****/svn/****/branches/sit/****筛选出非版本化文件? 开头并删除svn status | grep ^? | awk {print $2} | xargs rm -rf解释grep ^?筛选出以 ? 开头的行非版本化文件awk {print $2}提取文件名 / 目录名xargs rm -rf批量删除这些文件 / 目录。还原svn revert -R .只能还原已纳入版本控制的文件即已经通过 svn add 并提交过的文件对于那些未版本化的文件比如新创建但未执行 svn add 的文件、编译生成的临时文件等svn revert 是无法处理的因为 Subversion 根本没有跟踪这些文件的状态。31 linux上打war包将指定目录打成war包使用JDK将指定目录打成WAR包jar -cvf your-app.war -C /path/to/your/directory .参数解释cvfc 代表创建新的档案文件v 代表生成详细的输出信息f 指定档案文件名。your-app.war是你想要创建的WAR文件的名字。-C表示改变到指定的目录然后打包该目录下的内容。/path/to/your/directory是你想要打包的目录的路径。.表示当前目录在这里用于指示jar命令从当前目录即指定目录中读取文件来打包。将当前目录打包jar -cvf xxx.war ./*32 linux上给命令设置别名32.1 临时别名仅当前终端有效直接在终端执行alias命令格式alias 别名原命令示例# 给docker ps -a起别名dps alias dpsdocker ps -a # 给系统更新命令起别名up alias upyum update -y执行后直接输入dps即可替代docker ps -a。32.2 永久别名所有终端 / 重启后仍有效需将别名写入用户的配置文件如~/.bashrc、~/.bash_profile步骤编辑配置文件以~/.bashrc为例vi ~/.bashrc在文件末尾添加别名格式同上# 自定义别名 alias dpsdocker ps -a alias upyum update -y alias gclgit clone使配置生效source ~/.bashrc32.3 常用操作查看已设置的别名alias删除别名unalias 别名示例unalias dps32.4 进阶带参数的别名若需要别名支持参数可通过函数实现写入~/.bashrc示例给docker logs -f设置带容器名参数的别名dlogdlog() { docker logs -f $1 }使用dlog gitlab等价于docker logs -f gitlab32.5 常用命令的别名配置模板1.必备基础系统别名运维通用所有 Linux 都适用# 基础系统快捷命令 alias llls -lhrt --colorauto # 最常用列表展示按时间排序大小人性化彩色 alias lals -alh --colorauto # 显示所有文件含隐藏文件 alias lls -lh --colorauto # 简洁列表展示 alias grepgrep --colorauto # grep搜索结果高亮显示 alias cpcp -i # 复制文件时提示覆盖确认防止误删 alias mvmv -i # 移动文件时提示覆盖确认 alias rmrm -i # 删除文件时提示确认【防手抖删库神器】 alias dfdf -h # 查看磁盘占用自动换算GB/MB不用看KB alias dudu -h --max-depth1 # 查看目录大小只展示一级目录简洁明了 alias freefree -h # 查看内存/交换分区人性化显示 alias clsclear # 清屏快捷命令替代clear alias psgps -ef | grep # 快速搜索进程用法psg docker / psg gitlab2.Docker 专属别名# Docker 高频核心别名 (无参数直接用) alias ddocker # 终极简化d 替代 docker后续组合超方便 alias dpsdocker ps -a # 查看所有容器运行停止 alias dpsrdocker ps # 只看正在运行的容器 alias dimdocker images # 查看所有镜像 alias dstopdocker stop $(docker ps -aq) # 一键停止所有容器 alias drmdocker rm $(docker ps -aq) # 一键删除所有停止的容器 alias drmidocker rmi $(docker images -qf danglingtrue) # 删除无用的悬空镜像 # Docker 核心运维别名 (一键清理重启解决你之前的故障常用) alias dcleandocker system prune -a -f --volumes # 一键深度清理Docker垃圾镜像/容器/缓存/卷释放磁盘 alias drestartsystemctl restart docker containerd # 一键重启dockercontainerd服务 alias dstatussystemctl status docker containerd # 一键查看docker服务状态 # Docker 容器操作快捷函数 (支持传参最实用) # 用法dstart 容器名/ID → 启动指定容器 例dstart gitlab dstart() { docker start $1; } # 用法dstopn 容器名/ID → 停止指定容器 例dstopn gitlab dstopn() { docker stop $1; } # 用法dlog 容器名/ID → 实时查看容器日志 例dlog gitlab 你查gitlab日志刚需 dlog() { docker logs -f --tail200 $1; } # 用法drmn 容器名/ID → 删除指定容器 例drmn gitlab drmn() { docker rm -f $1; } # 用法dexec 容器名/ID → 进入容器交互终端 例dexec gitlab dexec() { docker exec -it $1 /bin/bash; }3.GitLabGit 运维别名# Git 基础快捷命令 alias gclgit clone alias gpullgit pull alias gpushgit push alias gaddgit add . alias gcmgit commit -m alias gstagit status alias gbrgit branch # GitLab 容器专属快捷命令 (你的专属一键操作GitLab容器) alias glabstartdocker start gitlab # 一键启动gitlab容器 alias glabstopdocker stop gitlab # 一键停止gitlab容器 alias glablogdocker logs -f gitlab # 一键查看gitlab实时日志 alias glabsshdocker exec -it gitlab /bin/bash # 一键进入gitlab容器内部4.防火墙 系统运维补充别名# 防火墙快捷命令 alias fwstsystemctl status firewalld # 查看防火墙状态 alias fwonsystemctl start firewalld # 启动防火墙 alias fwoffsystemctl stop firewalld # 关闭防火墙 alias fwrlfirewall-cmd --reload # 重载防火墙规则 alias fwportfirewall-cmd --zonepublic --list-ports # 查看已开放端口 # 系统重启/关机/进程 alias rebootnowreboot alias shutdownnowshutdown -h now alias topcputop -o %CPU # 按CPU占用排序查看进程 alias topramtop -o %MEM # 按内存占用排序查看进程