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


    目录

    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 -hhuman--以人类可读的方式显示磁盘信息

    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 -aall--统计所有文件的大小(文件和目录)

    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. 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    2. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    3. inet 127.0.0.1/8 scope host lo
    4. 2: ens33: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    5. link/ether 00:0c:29:ae:89:5d brd ff:ff:ff:ff:ff:ff
    6. 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 

    1. ens33: flags=4163 mtu 1500
    2.   
    3. mtu:最大传输单元,一般默认1500。

    2、查看网卡的信息:   ethtool ens33④ mi 

    1. [root@sc-master ~]# ethtool ens33
    2. Settings for ens33:
    3. Supported ports: [ TP ]
    4. Supported link modes: 10baseT/Half 10baseT/Full
    5. 100baseT/Half 100baseT/Full
    6. 1000baseT/Full
    7. Supported pause frame use: No
    8. Supports auto-negotiation: Yes
    9. Supported FEC modes: Not reported
    10. Advertised link modes: 10baseT/Half 10baseT/Full
    11. 100baseT/Half 100baseT/Full
    12. 1000baseT/Full
    13. Advertised pause frame use: No
    14. Advertised auto-negotiation: Yes
    15. Advertised FEC modes: Not reported
    16. Speed: 1000Mb/s
    17. Duplex: Full
    18. Port: Twisted Pair
    19. PHYAD: 0
    20. Transceiver: internal
    21. Auto-negotiation: on
    22. MDI-X: off (auto)
    23. Supports Wake-on: d

     2、Windows中查看ip地址:ifconfig /all

    4、查看ip是否被占用

    lsof -i:8080
    

    5、uptime命令使用

    uptime命令能够打印系统总共运行了多长时间和系统的平均负载。uptime命令可以显示依次为:现在时间、系统已经运行了多长时间、目前多少登录用户、系统在过去的1分钟、5分钟和14分钟内的平均负载。使用help参数查看帮助手册:

    1. [root@sc-master ~]# uptime --help
    2. Usage:
    3. uptime [options]
    4. Options:
    5. -p, --pretty show uptime in pretty format
    6. -h, --help display this help and exit
    7. -s, --since system up since
    8. -V, --version output version information and exit
    9. 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查看版本

    使用举例:

    1. [root@sc-master ~]# uptime -p
    2. up 2 hours, 48 minutes
    3. [root@sc-master ~]# uptime -s
    4. 2022-09-11 09:56:53
    5. [root@sc-master ~]# uptime -V
    6. uptime from procps-ng 3.3.10
    7. [root@sc-master ~]# uptime -h
    8. Usage:
    9. uptime [options]
    10. Options:
    11. -p, --pretty show uptime in pretty format
    12. -h, --help display this help and exit
    13. -s, --since system up since
    14. -V, --version output version information and exit
    15. For more details see uptime(1).

     6、telnet命令使用

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

    语法格式:Telnet 127.0.0.1 8080

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

    可以使用w命令:

    1. [root@localhost ~]# w
    2. 14:38:06 up 5:13, 3 users, load average: 0.00, 0.02, 0.05
    3. USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
    4. root tty1 09:26 5:11m 0.01s 0.01s -bash
    5. root pts/0 192.168.119.1 09:26 6.00s 0.06s 0.00s w
    6. root pts/1 192.168.119.1 09:26 8:54 0.07s 0.00s -bash
    7. tty:终端 有多个,最多有六个
    8. tty1:直接登录的
    9. 按ALT + F1-F6 :第一个到六个终端
    10. pts 远程登录的虚拟网络 可以有很多个
    11. pts/0
    12. pts/1
    13. env看环境变量
    14. SSH_TTY=/dev/pts/10 #指定当前属于哪个终端
    15. [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 生效到环境变量

    增加临时环境变量:

    1. [root@localhost ~]# LIANXI=aa
    2. [root@localhost ~]# export PATH LIANXI=aa
    3. [root@localhost ~]# env
    4. .....
    5. LIANXI=aa
    6. MAIL=/var/spool/mail/root
    7. 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
    8. ....

    13、免密切换服务器

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

     详解可见:

     SSH服务详解

  • 相关阅读:
    PyTorch实战 | 文本情感分类任务 | LSTM与LSTM+Attention
    Vue项目使用axios配置请求拦截和响应拦截以及判断请求超时处理提示
    实战项目:瑞吉外卖开发笔记
    C语言程序设计——题目:输出特殊图案,请在c环境中运行,看一看,Very Beautiful!
    windows机器配置自签名ssl证书,部署文件服务器
    并发——中断机制
    Fastjson历史版本记录
    前端字符统计
    详解 sudo usermod -aG docker majn
    FFmpeg中的常用结构体分析
  • 原文地址:https://blog.csdn.net/m0_52165864/article/details/126576333