基础命令
系统
| 命令 |
说明 |
| reboot |
重启系统 |
| shutdown -r now |
重启系统 |
| shutdown -c |
取消重启 |
| halt |
立刻关机 |
| poweroff |
立刻关机 |
| shutdown -h now |
立刻关机(root用户使用) |
| shutdown -h 10 |
10分钟后自动关机 |
| yum update |
升级Linux,升级所有包同时也升级软件和系统内核 |
| yum upgrade |
升级Linux,只升级所有包,不升级软件和系统内核 |
| cat /proc/version |
查看内核版本 |
| uname -a |
查看内核版本 |
| lsb_release -a |
查看系统版本 |
| cat /etc/issue |
查看系统版本 |
| cat /etc/redhat-release |
查看系统版本(适合Redhat系) |
| cat /etc/*-release |
查看系统版本(适合SUSE系) |
| getconf LONG_BIT |
查看系统位数 |
| cat /proc/cpuinfo |
查看CPU型号 |
| top |
查看实时CPU使用率 |
| ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head |
查看占用CPU最多的10个进程。head默认取前10行,自定义K行时,在后面跟-K即可 |
| free -m |
查看内存 |
| ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head |
查看占用内存最多的10个进程。head默认取前10行,自定义K行时,在后面跟-K即可 |
| fdisk -l |
查看硬盘,可查看未分区和格式化的数据盘 |
| df -h |
查看硬盘空间情况 |
| du -sh ./* |
查看当前目录下各文件/文件夹的大小 |
| jps |
查看当前所有Java进程pid的命令 |
| kill |
删除执行中的程序或工作 |
| kill -9 |
强制终止执行中的程序或工作 |
| passwd |
修改用户密码,命令后跟用户名即可 |
| vim /etc/HOSTNAME |
修改主机名字 |
| hostname -F /etc/HOSTNAME |
使修改立刻生效 |
| cat /var/log/secure |
安全和身份日志,记录用户和工作组变化情况、用户登陆认证情况 ,可以查看ssh登录的情况 |
| lastlog |
记录用户最后一次成功登陆的时间、登陆IP等信息。使用lastlog命令查看,root为管理员用户,admin为普通用户,其他为系统用户,系统用户没有权限登录,所以显示为never logged in |
| lastb |
记录失败的登录尝试信息 |
| last |
记录登陆过系统的所有用户信息 |
文件
| 命令 |
说明 |
| cd |
改变目录到 |
| cd ~ |
回到家目录 |
| pwd |
查看当前路径 |
| mkdir |
创建文件夹 |
| touch |
创建文件 |
| echo -n “ “ > |
清空文件内容,如:echo -n “ “ >logs/error.log |
| rm |
删除文件 |
| rm -r |
删除文件夹 |
| rm -fr |
直接删除,无需确认 |
| cp -r source_directory destination_directory |
将source_directory以及其所有子目录和文件复制到destination_directory |
| cp -i source_file destination_file |
如果destination_file已经存在,cp会询问是否覆盖它 |
| cp file1.txt file2.txt destination_directory/ |
一次性复制多个文件到一个目录中 |
| mv |
移动、重命名文件或文件夹 |
| find |
查找 |
| which |
查找 |
| cat |
查看文本内容 |
| head |
查看文本前十行 |
| tail |
查看文本后十行 |
| tail -f |
实时查看文本最新内容 |
| more |
让文件内容一屏一屏的显示 |
| cat XXX | more |
管道:将cat显示出来的内容重新输出给more命令 |
| > |
重定向:将文件内容输出到指定的文件或位置。如cat /etc/services > a.txt |
| ls -i |
使用ls -i命令找到文件或文件夹的节点编号 |
| find -inum 2243223 -delete |
使用find命令查询并且删除乱码文件或文件夹 |
| rm -rf fileA |
删除文件或文件夹fileA的软链接 |
| ln -s fileB fileA |
设置软链接用快捷方式fileB代替fileA |
| ln fileB fileA |
建立硬链接,相当于一个文件存储在两个位置,可以有效防止误删 |
| 删除指定文件夹下后缀名相同的文件: |
|
| find 目录 -name ‘*.abc’ | xargs rm |
命令危险,可先执行前半段进行查看, 确认后再整条执行 |
| find . -name ‘*.exe’ -type f -print -exec rm -rf {} \; |
1) “.”表示从当前目录开始递归查找 |
|
2) “-name ‘*.exe’”根据名称来查找所有以.exe结尾的文件夹或者文件 |
|
3) “-type f”查找的类型为文件 |
|
4) “-print”输出查找的文件目录名 |
|
5) “-exec”后边跟要执行的命令,表示将find出来的文件或目录执行该命令 |
|
最后是一对{},一个空格和一个\,一个分号 |
| ll -lh |
查看当前目录下文件的大小 |
| du -sh * |
查看当前目录下文件或文件夹的大小 |
网络
| 命令 |
说明 |
| netstat -apn |
查看所有的进程和端口使用情况 |
| netstat -nptl |
查看端口使用情况 |
| lsof |
查看端口使用情况(openSUSE Leap 15.0),如 lsof -i:80 |
| nc -vz IP地址或域名 端口 |
检测远程服务器端口 |
在命令行中配置IP地址
这里用Suse Linux举例:
1 2
| ifconfig eth0 1.1.10.42 netmask 255.255.255.0 up route add default gw 1.1.10.11
|
systemctl命令的使用
| 命令 |
说明 |
| systemctl list-units |
列出当前系统服务的状态 |
| systemctl list-units —type=service |
查看所有已启动的服务 |
| systemctl list-unit-files |
列出服务的开机状态 |
| systemctl status sshd |
查看指定服务的状态 |
| systemctl stop sshd |
关闭指定服务 |
| systemctl start sshd |
开启指定服务 |
| systemctl restart sshd |
从新启动服务 |
| systemctl is-enabled servicename.service |
查询服务是否开机启动 |
| systemctl enable sshd |
设定指定服务开机开启 |
| systemctl disable sshd |
设定指定服务开机关闭 |
| systemctl reload sshd |
使指定服务从新加载配置 |
| systemctl list-dependencies sshd |
查看指定服务的倚赖关系 |
| systemctl mask sshd |
冻结指定服务 |
| systemctl unmask sshd |
启用服务 |
| systemctl set-default multi-user.target |
开机不开启图形 |
| systemctl set-default graphical.target |
开机启动图形 |
| systemctl —failed |
显示启动失败的服务 |
| setterm |
文本界面设定color |
| 服务状态 |
状态说明 |
| ———————- |
:———————- |
| loaded |
系统服务已经初始化完成,加载过配置 |
| active(running) |
正有一个或多个程序正在系统中执行, vsftpd就是这种模式 |
| atcive(exited) |
仅执行一次就正常結束的服務, 目前並沒有任何程序在系統中執行 |
| atcive(waiting) |
正在執行當中,不過還再等待其他的事件才能继续处理 |
| inactive |
服务关闭 |
| enbaled |
服务开机启动 |
| disabled |
服务开机不自启 |
| static |
服务开机启动项不可被管理 |
| failed |
系统配置错误 |
防火墙(SUSE Linux Enterprise Server 12)
| 命令 |
说明 |
| vim /etc/sysconfig/SuSEfirewall2 |
编辑防火墙设置,FW_SERVICES_EXT_TCP=”22” |
| rcSuSEfirewall2 restart |
重启防火墙使生效 |
| rcSuSEfirewall2 status |
查看防火墙状态 |
| systemctl stop SuSEfirewall2.service |
关闭防火墙 |
| systemctl start SuSEfirewall2.service |
开启防火墙 |
| systemctl enable SuSEfirewall2.service |
开机启动防火墙 |
| systemctl disable SuSEfirewall2.service |
取消开机启动防火墙 |
防火墙(openSUSE Leap 15.0)
| 命令 |
说明 |
firewall-cmd --permanent --zone=public --add-service=ssh |
添加永久的服务 |
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp |
添加永久的端口 |
firewall-cmd --permanent --zone=public --remove-port=80/tcp |
删除端口 |
firewall-cmd --zone=public --add-port=8080-8081/tcp |
添加临时的端口 |
firewall-cmd --permanent --zone=public --list-ports |
查看开启的端口 |
firewall-cmd --permanent --zone=public --list-services |
查看开启的服务 |
firewall-cmd --reload |
重新加载配置(重启加载后才能生效) |
firewall-cmd --state |
查看防火墙运行状态 |
firewall-cmd --query-service ssh |
|
firewall-cmd --query-service ftp |
|
firewall-cmd --query-service http |
|
firewall-cmd --query-service https |
|
firewall-cmd --list-all |
显示当前区域的网卡配置参数、资源、端口以及服务等信息 |
| service firewalld stop |
关闭防火墙 |
| service firewalld start |
开户防火墙 |
防火墙(CentOS8)
| 命令 |
说明 |
| systemctl status firewalld.service |
查看服务状态 |
| systemctl start firewalld.service |
打开防火墙 |
| systemctl stop firewalld.service |
关闭防火墙 |
| systemctl enable firewalld.service |
开启防火墙 |
| systemctl disable firewalld.service |
禁用防火墙 |
| ———————- |
:———————- |
| firewall-cmd —list-all |
查看已经开放的端口 |
| firewall-cmd —add-port=8848/tcp —permanent |
增加目标端口 |
| firewall-cmd —reload |
重启防火墙 |