目录

1、查看系统版本相关命令

2、系统管理命令

① 查看系统CPU使用情况

② 显示磁盘信息

③ 显示内存信息

④ 查看进程 

⑤ 统计文件大小 

⑥ 显示网络连接信息 

3、查看Linux系统ip

4、查看ip是否被占用

5、uptime命令使用

6、telnet命令使用

7、查看系统当前登录用户:w

8、关机/重启机器

9、Linux管道

10、软件包管理工具

11、vim使用

12、切换用户-su

13、免密切换服务器

1、查看系统版本相关命令

①、查看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刷新生效,修改完配置文件之后。
 

2、系统管理命令

stat 【文件名】

指定显示文件的详细信息,比ls更详细

who

显示在线登录用户

whoami

显示当前操作用户

hostname

显示主机名

hostnamectl set-hostname【新主机名】

修改主机名

uname

显示系统信息

① 查看系统CPU使用情况

其中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) 

3、查看Linux系统ip

1、查看Linux的ip地址的指令有:

ip address、ip a、ip addr、ip ad、ifconfig(需要先安装net-tools)查看到的比ip a系列的要详细些,能够查看到接收的包和传输的包。

① ip a系列:查看网卡:两块网卡: lo、 ens33(真实的网卡)都是网卡名。

1: lo: <LOOPBACK,UP,LOWER_UP> 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: <BROADCAST,MULTICAST,UP,LOWER_UP> 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地址。

流程详解图为:

麒麟服务器查看BIOS版本 麒麟linux查看系统服务命令_服务器

 ②  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<UP,BROADCAST,RUNNING,MULTICAST>  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

ifconfig /all

4、查看ip是否被占用

lsof -i:8080

5、uptime命令使用

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).

 6、telnet命令使用

不管是在windows还是Linux系统要校验某台服务器是否可以ping通,都可以使用命令,如果要加上端口的,Linux可以使用telnet命令。

语法格式:Telnet 127.0.0.1 8080

7、查看系统当前登录用户:w

可以使用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

显示版本信息

8、关机/重启机器

shutdown和reboot的使用权限都是系统管理者

shutdown

关机、重启程序

shutdown -r

关机后重新开机

shutdown -h /【数字】

关机不重启 /指定几分钟后关机

shutdown -r/h now

立刻关机/重启

init 0

Linux中关机命令

init 6

重启系统

reboot

重启系统

9、Linux管道

|

将前面一个命令的输出送给后面一个命令作为标准输入。

xargs

将管道符号送过来的内容,告诉后面的命令,送过来的内容做参数使用。

-exec

需要执行后面的命令  execute  执行

|:也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果

例:grep -r "sl" /home/* | more 在home目录下所有文件中查找,包括close的文件,并分页输出。

find / -name hello.c -type f -exec cp {} /backup \;

10、软件包管理工具

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 【软件名】

升级软件(如果软件没有安装,会自动帮助安装)

11、vim使用

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(右移一个字符→)

12、切换用户-su

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
....

13、免密切换服务器

如果服务器设置了免密,在一台服务器免密切换到另外一台服务器,可以使用命令:ssh 127.0.0.1