目录
1、查看系统版本相关命令
2、系统管理命令
① 查看系统CPU使用情况
② 显示磁盘信息
③ 显示内存信息
④ 查看进程
⑤ 统计文件大小
⑥ 显示网络连接信息
3、查看Linux系统ip
4、查看ip是否被占用
5、uptime命令使用
6、telnet命令使用
7、查看系统当前登录用户:w
8、关机/重启机器
9、Linux管道
10、软件包管理工具
11、vim使用
12、切换用户-su
13、免密切换服务器
①、查看Linux服务器系统版本
cat /etc/centos - release # 通过查看文件
②、查看Linux服务器系统内核版本
uname -r
③、查看Linux内核版本及架构
uname -a
④、查看Linux内核版本可以得到类似的更详细信息:
cat /proc/version
⑤、查看Linux内核里的限制参数
ulimit -a
⑥、查看Linux内核里存储的最大进程
ulimit -n
⑦、查看系统内核参数
systemctl -a
系统内核参数文件:/etc/sysctl.conf 修改内核参数文件(调优)
systemctl -p刷新生效,修改完配置文件之后。
stat 【文件名】 | 指定显示文件的详细信息,比ls更详细 |
who | 显示在线登录用户 |
whoami | 显示当前操作用户 |
hostname | 显示主机名 |
hostnamectl set-hostname【新主机名】 |
修改主机名 |
uname | 显示系统信息 |
其中top 命令的使用:---系统监控命令,查看有没有到瓶颈---有就需要扩容。
top | 动态显示当前耗费资源最多进程信息(cpu系统的使用情况) |
dstat | 综合内存cpu网络流量使用情况 |
nethogs | 综合内存cpu网络流量使用情况 |
yum install epel-release 先安装epel源 |
yum install dstat/nethogs |
df -h和df -Th的区别: -Th是1000 为单位而不是用 1024
df(默认根目录下) | 查看 Linux 系统上的文件系统磁盘使用情况 |
df -h | human--以人类可读的方式显示磁盘信息 |
df -Th |
以人类可读的方式显示磁盘信息 |
free |
显示系统中可用和已用内存的量 |
free -m | 显示系统中的内存量(以 MB 为单位) |
ps | 显示瞬间进程状态 |
ps -aux |
显示所有包含其他使用者的进程 |
ps -ef | 显示所有进程信息,连同命令行 |
pstress -p | 查看当前进程数 |
lsof -i 【端口号】 |
查看指定端口进程 |
kill :杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程
【程序】可以是程序的PID或者是PGID,也可以是工作编号。
kill | 当前进程向另外一个进程发送信号 |
kill -9 【程序】 |
杀死一个进程(发送kill信号) |
kill -1 【程序】 |
重新加载进程(发送hup信号) |
kill -15 【程序】 | 正常终止一个进程 |
killall |
杀掉服务相关的所有进程 |
kill - 9 表示强制杀死该进程;而 kill 则有局限性,例如后台进程,守护进程等
执行kill命令,系统会发送一个SIGTERM信号给对应的程序。SIGTERM多半是会被阻塞的。kill -9命令,系统给对应程序发送的信号是SIGKILL,即exit。exit信号不会被系统阻塞,所以kill -9能顺利杀掉进程。
kill -9 发送SIGKILL信号给进程,告诉进程,你被终结了,请立刻退出。
du | 查看文件、文件夹大小 |
du -a | all--统计所有文件的大小(文件和目录) |
du -h |
human--以人类可读的方式显示文件大小(K/M) |
du -sh | 统计文件、文件夹里所有文件的大小 |
ping | 测试网络连通性 |
ping -c | 指定要ping几个包 |
fping | 批量去ping,可以接网段也可以指定文件里的ip地址去ping |
fping -g | 指定网段 |
fping -f | 指定文件里的ip地址 |
fping -agq |
指定网段中存活的ip地址 |
① fping -g:指定去ping192.168.119.0/24网段:fping -g 192.168.119.0/24。
②fping -agq:找到指定网段192.168.119.0/24中哪些ip是存活的:fping -agq 192.168.119.0/24
③fping -f:指定文件里面的ip地址:fping -f ip.txt
netstat | 显示网络状态信息 |
netstat -a | 显示详细的网络状况 |
netstat -nu | 显示当前户UDP连接状况 |
netstat -apu | 显示UDP端口号的使用情况 |
netstat -i | 显示网卡列表 |
ifconfig | 查看网络情况 |
man | 是查询命令的使用手册、指南(说明书) |
clear | 清屏 |
alias | 对命令重命名(别名)如:alias c=clear(临时定义c是clear的别名) |
unalias |
取消别名(unalias c) |
1、查看Linux的ip地址的指令有:
ip address、ip a、ip addr、ip ad、ifconfig(需要先安装net-tools)查看到的比ip a系列的要详细些,能够查看到接收的包和传输的包。
① ip a系列:查看网卡:两块网卡: lo、 ens33(真实的网卡)都是网卡名。
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
2: ens33: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:ae:89:5d brd ff:ff:ff:ff:ff:ff
inet 192.168.119.135/24 brd 192.168.119.255 scope global noprefixroute dynamic ens33
① lo --- loopback 本地回环接口,这个网卡是虚拟的,每一台服务器上都有一个这样的网卡。这个网卡就代表本机,自身。
inet 127.0.0.1/8 这个网卡的ip地址基本上都是127.0.0.1,自己、本身的ip地址,是用来检测自身的。
例如:客服端:user 客服端需要的数据,都需要连接到服务器去获取,获取到了之后,展示在客户端。
淘宝服务器:运行了淘宝程序。
两台主机之间的通信,就要借助ip地址,就像手机电话号码一样。
127.0.0.1就代表主机自己。访问别人的主机,千万不能使用127.0.0.1这个ip地址。
物理:windows 、127.0.0.1 (代表本机自己)、192.168.1.2
虚拟机:linux,运行了一个网站程序 127.0.0.1(代表本机自己 )、192.168.1.1
物理机访问虚拟机,访问127.0.0.1是访问自己的i地址。
流程详解图为:
② ens33 --- 真实的网卡 一个主机上可以有很多网卡。
inet 192.168.119.135/24 ip地址显示
link/ether 00:0c:29:ae:89:5d: mac地址,每一个主机都会有一个全球唯一的mac地址
运行了DNS才能修改ip地址。
域名服务(DNS domain name system):格式:域名:--ip地址的联系
就像电话薄一---样这里存了 人名备注--电话号码
www.baidu.com ---解析ip地址
Windows域名服务: DNS 服务器 . . . . . . . . . . . : 10.10.10.10
Linux中查看本地域名服务器:cat /etc/resolv.conf
ens33: flags=4163 mtu 1500
mtu:最大传输单元,一般默认1500。
2、查看网卡的信息: ethtool ens33④ mi
[root@sc-master ~]# ethtool ens33
Settings for ens33:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: d
2、Windows中查看ip地址:ifconfig /all
lsof -i:8080
uptime命令能够打印系统总共运行了多长时间和系统的平均负载。uptime命令可以显示依次为:现在时间、系统已经运行了多长时间、目前多少登录用户、系统在过去的1分钟、5分钟和14分钟内的平均负载。使用help参数查看帮助手册:
[root@sc-master ~]# uptime --help
Usage:
uptime [options]
Options:
-p, --pretty show uptime in pretty format
-h, --help display this help and exit
-s, --since system up since
-V, --version output version information and exit
For more details see uptime(1).
Options:
-p --pretty show uptime in pretty format | 比较美观的打印出来 |
-h --help display this help and exit | 查看参数帮助 |
-s, --since system up since | 查看系统当前时间 |
-V, --version output version information and exit | 查看版本 |
使用举例:
[root@sc-master ~]# uptime -p
up 2 hours, 48 minutes
[root@sc-master ~]# uptime -s
2022-09-11 09:56:53
[root@sc-master ~]# uptime -V
uptime from procps-ng 3.3.10
[root@sc-master ~]# uptime -h
Usage:
uptime [options]
Options:
-p, --pretty show uptime in pretty format
-h, --help display this help and exit
-s, --since system up since
-V, --version output version information and exit
For more details see uptime(1).
不管是在windows还是Linux系统要校验某台服务器是否可以ping通,都可以使用命令,如果要加上端口的,Linux可以使用telnet命令。
语法格式:Telnet 127.0.0.1 8080
可以使用w命令:
[root@localhost ~]# w
14:38:06 up 5:13, 3 users, load average: 0.00, 0.02, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 09:26 5:11m 0.01s 0.01s -bash
root pts/0 192.168.119.1 09:26 6.00s 0.06s 0.00s w
root pts/1 192.168.119.1 09:26 8:54 0.07s 0.00s -bash
tty:终端 有多个,最多有六个
tty1:直接登录的
按ALT + F1-F6 :第一个到六个终端
pts 远程登录的虚拟网络 可以有很多个
pts/0
pts/1
env看环境变量
SSH_TTY=/dev/pts/10 #指定当前属于哪个终端
[root@localhost pts]# echo "123456" > /dev/pts/1(向另外一个终端输入123456)
命令格式:w 【选项】【用户名】
主要的命令选项:
-h | 不显示输出信息的标题 |
-l | 使用长格式输出 |
-s | 使用短格式输出,不显示登录时间,JCPU和PCPU时间 |
-V | 显示版本信息 |
shutdown和reboot的使用权限都是系统管理者
shutdown | 关机、重启程序 |
shutdown -r | 关机后重新开机 |
shutdown -h /【数字】 | 关机不重启 /指定几分钟后关机 |
shutdown -r/h now | 立刻关机/重启 |
init 0 |
Linux中关机命令 |
init 6 | 重启系统 |
reboot | 重启系统 |
| | 将前面一个命令的输出送给后面一个命令作为标准输入。 |
xargs | 将管道符号送过来的内容,告诉后面的命令,送过来的内容做参数使用。 |
-exec | 需要执行后面的命令 execute 执行 |
|:也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果
例:grep -r "sl" /home/* | more 在home目录下所有文件中查找,包括close的文件,并分页输出。
find / -name hello.c -type f -exec cp {} /backup \;
rpm是linux系统里比较底层的软件管理的命令。
对redhat系统的安装:redhat 、oracle Linux
对Debian系列的安装:Debian、Ubuntu
缺点:不能自动解决软件包之间的依赖关系;不能自动化、智能化。
rpm |
查询软件包 |
rpm -q 【软件名】 | quary--查询指定的软件包是否被安装 |
rpm -qa 【软件名】 |
all--查询系统中安装的所有RPM软件包 |
rpm -qi 【软件名】 |
information--查询系统中已安装的软件包的详细信息 |
rpm -ql 【软件名】 |
list--查询已安装软件包包含的文件 |
rpm -qf 【软件名】 |
file--查询指定的文件所属的软件包是哪个 |
rpm -qc 【软件名】 |
查询配置文件的路径 |
rpm -qpl 【软件名】 |
查询没有安装的软件包,它会安装到哪里 |
rpm -qpi 【软件名】 | 查询没有安装的软件包,它的详细信息 |
rpm -ivh 【软件名】 |
安装软件 -i:install |
rpm reinstall 【软件名】 |
重新安装 |
rpm -e 【软件名】 |
卸载软件 |
rpm -U 【软件名】 |
升级软件(如果软件没有安装,会自动帮助安装) |
vim是vi的升级版本,有三种模式:命令模式、插入模式、编辑模式。使用ESC(末行模式)或i(插入)或:来切换模式。
先进入末行模式之后的命令模式下:
:q | 退出 |
:q! | 强制退出 |
:wq | 保存并退出 |
:set number/nu | 显示行号 |
:set nonumber | 隐藏行号 |
:set paste | 保证复制粘贴的内容格式不会乱 |
yy | 复制光标所在行 ,2yy是复制两行 |
p | 粘贴 |
dd | 删除光标所在行,2dd是删除两行 |
/apache | 在文档中查找apache,按n跳到下一个,shift+n上一个 |
h(左移一个字符←)j(下一行↓) | k(上一行↑)、l(右移一个字符→) |
su - 表示切换到其他用户,并且使用用户自己的环境变量。
su 表示切换到其他用户,使用之前用户的环境变量。
env 查看环境变量。
export PATH --- export 生效到环境变量
增加临时环境变量:
[root@localhost ~]# LIANXI=aa
[root@localhost ~]# export PATH LIANXI=aa
[root@localhost ~]# env
.....
LIANXI=aa
MAIL=/var/spool/mail/root
PATH=/sanchuang:/usr/local/daifurong/sbin/:/sanchuang:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/daifurong/sbin/:/usr/local/daifurong/sbin/:/sanchuang:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/code:/usr/local/go/bin:/root/bin
....
如果服务器设置了免密,在一台服务器免密切换到另外一台服务器,可以使用命令:ssh 127.0.0.1
详解可见:
SSH服务详解