linux基本命令之系统管理命令

本文涉及的产品
.cn 域名,1个 12个月
简介: linux基本命令之系统管理命令

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地址。

流程详解图为:

②  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

2、Windows中查看ip地址: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

详解可见:

SSH服务详解

相关文章
|
1天前
|
Linux 网络安全 开发工具
linux 常用命令【编程必备】
linux 常用命令【编程必备】
14 4
|
2天前
|
存储 Linux
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
|
2天前
|
安全 Linux 测试技术
Linux命令setpriv详解
`setpriv` 是Linux下的命令行工具,用于调整进程权限以增强安全性,尤其适用于自动化和非交互式权限切换。它不使用PAM,支持管理能力集、GID/UID及SELinux上下文。例如,`setpriv --reuid=1000 script.sh` 可以以低权限用户运行脚本,而`--selinux-label`可设定SELinux标签。在使用时,应最小化权限、充分测试、保持与其他安全机制的兼容性,并定期审核权限设置。
|
2天前
|
Linux 数据安全/隐私保护
Linux命令setfacl详解
`setfacl`是Linux中用于设置文件访问控制列表的命令,提供比传统权限更细粒度的控制。它允许为特定用户或组添加、修改或删除权限,适用于多用户环境和复杂场景。常用参数包括`-m`(修改规则)、`-x`(删除规则)、`-R`(递归设置)和`-d`(设置默认ACL)。例如,`setfacl -m u:user1:rw- file.txt`给用户`user1`赋予文件`file.txt`的读写权限。记得在使用前确认文件系统支持ACL,并谨慎规划和审查权限设置。
|
2天前
|
Linux 数据处理
Linux命令setarch深度解析与实际应用
`setarch`是Linux下用于调整程序执行环境的命令,它允许在不同CPU架构间运行二进制文件,模拟架构并设置CPU功能标志。通过指定`-a`参数切换架构,如`-a i386`,用`-R`参数启用或禁用如SSE2的功能。在测试兼容性、调试和优化时非常有用。注意正确设置参数,避免滥用,确保程序正常运行。查阅文档、逐步测试和考虑兼容性是最佳实践。
|
2天前
|
Linux Shell 数据处理
Linux命令seq的深入解析与应用
`seq`命令在Linux中用于生成数字序列,适用于数据处理和脚本编写。它支持自定义起始值、步长和结束值,可生成整数或浮点数。通过选项如`-f`(格式化输出)、`-s`(设置分隔符)、`-w`(宽度对齐)和`-r`(逆序)调整输出。在实践中,`seq`常与for循环结合,用于测试数据、文件命名等。注意增量为零会导致无限循环,格式和宽度选项不能同时使用。善用`seq`能提升命令行效率。
|
2天前
|
存储 Unix Linux
探索Linux中的sed命令:强大的文本处理工具
`sed`是Linux/Unix的流编辑器,用于文本替换、删除、新增等操作,无需直接编辑文件。它逐行处理输入,存储在模式空间,执行脚本后输出。主要特点是非交互、支持正则表达式和简洁语法。示例:`sed &#39;s/apple/orange/g&#39; example.txt`替换文本,`/error/d`删除包含&quot;error&quot;的行,`a\---`在每行后加&quot;---&quot;。使用时注意备份、测试命令和理解正则表达式。
|
2月前
|
监控 Linux
掌握Linux系统管理利器:深度解读Linux top命令
掌握Linux系统管理利器:深度解读Linux top命令
38 0
|
9月前
|
缓存 安全 Linux
一文掌握linux系统管理命令
一文掌握linux系统管理命令
213 0
|
Unix Linux
Linux系统-【系统管理】uname命令 – 显示系统内核信息
uname命令来自于英文词组”Unix name“的缩写,其功能是用于查看系统主机名、内核及硬件架构等信息。如果不加任何参数,默认仅显示系统内核名称,相当于-s参数。
81 1