ubuntu的学习与总结

112 阅读20分钟

ubuntu的学习与总结

参考

www.bilibili.com/video/BV1ti…

image-20240314112744366

linux的文件结构

image-20240314154811127

它只有根目录,多用户都在home文件夹下面组织目录结构。并没有跟windows一样的盘符的文件结构。

如下可以通过AI快速的查到

Linux主要目录速查表如下:

  1. / :根目录,Linux下有且只有一个根目录,所有的文件和目录都是从这里开始的。
  2. /bin/usr/bin:存放可执行二进制文件目录,如常用的命令ls、tar、mv、cat等。其中,/bin目录存放着最经常使用的命令;而/usr/bin目录通常存放着一些不常用的命令。
  3. /boot:存放Linux系统启动时用到的一些文件,如Linux的内核文件(如/boot/vmlinuz)和系统引导管理器(如/boot/grub)。
  4. /dev:存放Linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备。
  5. /etc:系统配置文件存放的目录,包含系统主要的配置文件,如/etc/inittab、/etc/fstab、/etc/init.d等。
  6. /home:系统默认的用户家目录,新增用户账号时,用户的家目录都会存放在这里。
  7. /tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,但重要数据不可放置在此目录下。
  8. /srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内。
  9. /usr:应用程序存放目录,其中/usr/bin存放应用程序,/usr/share存放共享数据,/usr/lib存放不能直接运行但却是许多程序运行所必需的一些函数库文件,/usr/local存放软件升级包等。

除了上述主要目录外,Linux系统中还有许多其他的目录,每个目录都有其特定的用途和存放的内容。熟悉这些目录的结构和用途,对于Linux系统的管理和维护非常重要。

常用Linux命令的基本使用

学习终端命令的技巧:

  • 不需要死记硬背,对于常用命令,用的多了,自然就记住了
  • 不要尝试一-次学会所有的命令,有些命令是非常不常用的,临时遇到,临时百度就可以

Linux发行版本的命令大概有200多个,但是常用的命令只有10多个而已

以下是部分常用Linux命令及其英文释义和基本使用的表格形式:

序号命令英文释义功能描述基本使用举例
1pwdPrint Working Directory显示当前工作目录pwd
2lsList列出目录内容ls ls -a(显示隐藏文件) ls -l(详细信息列表)
3cdChange Directory改变当前目录cd directory cd ~(返回用户主目录) cd ..(进入上级目录)
4mkdirMake Directory创建新目录mkdir directory_name
5touchCreate or Update File Timestamps创建新文件或更新文件时间戳touch file.txt
6cpCopy复制文件或目录cp source destination cp -r source_dir target_dir(复制目录)
7mvMove/Rename移动或重命名文件或目录mv file1 file2(重命名) mv file directory(移动文件)
8rmRemove删除文件或目录rm file.txt rm -r directory(删除目录及其内容)
9echoOutput Strings输出文本到屏幕或文件echo "text" echo "text" > file.txt(写入文件)
10catConcatenate查看或连接文件内容cat file.txt cat file1.txt file2.txt > combined.txt(合并文件)
11more / lessPage Through Content分页查看文件内容more file.txt less file.txt(支持上下翻页和搜索)
12manManual查阅命令或程序的手册页man command

这只是Linux常用命令的一部分,每个命令都支持多种选项和参数以实现更多功能。

注意:

在看文档的时候,[]代表可选的意思,如下图

image-20240315173626384

关于ubuntu server 设置为中文显示事情不建议

ubuntu server 本来就是稳定版本,很多组件是没有带的,所以不建议改为中文,也尝试过修改,发现也并不生效。

ubuntu server修改IP地址

Ubuntu20.04之后是通过netplan来管理网络,和之前得版本略有区别,Ubuntu18.04是需要编辑/network/interfaces来设置静态网络

示例

配置成DHCP

network :
    ethernets:
        ens33 :
            dhcp4: true
version: 2

配置完成之后要sudo netplan apply 应用配置

示例配置静态IP

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33: # 这里的ens33是网卡名称,需要替换为实际网卡名称
      dhcp4: no
      addresses: [192.168.1.100/24] # 静态IP地址和子网掩码
      gateway4: 192.168.1.1        # 网关地址
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4] # DNS服务器地址

配置完成之后要sudo netplan apply 应用配置

ssh连接至另一台主机及scp文件的示例

如使用如下进行连接

ssh -p 22 python@172.16.140.138

scp 是 Secure Copy 的缩写,是一个在 Linux 和类 Unix 系统中用于通过 SSH 安全地在本地和远程计算机之间复制文件和目录的命令。以下是一些 scp 命令的使用示例:

示例 1:从远程主机复制单个文件到本地主机

scp user@remote-host:/path/to/remotefile localfile

解释:这个命令将远程主机上的 /path/to/remotefile 文件复制到本地当前目录下,并重命名为 localfile

示例 2:将本地文件上传到远程主机

scp localfile user@remote-host:/path/to/destination

解释:这个命令将本地的 localfile 文件上传到远程主机的 /path/to/destination 路径下。

示例 3:使用指定端口号

scp -P 2222 localfile user@remote-host:/path/to/destination

解释:如果远程主机的 SSH 服务运行在非默认的 22 端口(例如这里是 2222),则使用 -P 参数指定端口号。

示例 4:递归复制整个目录

scp -r local_directory user@remote-host:/path/to/destination

解释:使用 -r 参数可递归地复制本地目录及其所有子目录和文件到远程主机。

示例 5:从远程主机下载整个目录到本地

scp -r user@remote-host:/path/to/remote-directory local_directory

解释:同样使用 -r 参数,可以从远程主机递归复制整个目录到本地指定目录。

示例 6:压缩传输以节省带宽

scp -C user@remote-host:/path/to/bigfile localfile

解释:使用 -C 参数会在传输过程中启用压缩,这对于大文件或慢速网络连接特别有用。

请确保替换上述命令中的 user 为远程主机的实际用户名,remote-host 为远程主机的 IP 地址或域名,以及正确的文件和目录路径。执行命令时可能需要输入远程主机的密码或使用 SSH 密钥对进行无密码登录。

ssh免密登陆

我们在A设备上生成密钥之的,再copy过去B设备,这样,我们以后在A设备上进行登陆B设备时就不再需要密码了。

A设备上(客户端)执行如下步骤之后,便可以实现A访问B不再需要输入密码了。
●配置公钥
执行ssh-keygen 即可生成SSH钥匙,一路回车即可
●上传公钥到服务器
执行ssh-copy-id -p port user@remote. 可以让远程服务器记住我们的公钥
​

image-20240321173914474

使用别名登陆ssh服务器

在文件内~/.ssh/config添加如下内容便可

Host mac
    HostName ip地址   #IP地址换成服务器的地址
    User itheima     #远程主机的用户名
    Port 22         #远程主机的端口#接下来就可以直接通过
ssh mac #来直接连接远程主机了

image-20240321180203683

用户和权限及chmod

权限名称数字代号(八进制)二进制表示
读(Read)4100
写(Write)2010
执行(Execute)1001

在实际应用中,文件或目录的权限通常按照所有者(Owner)、所属组(Group)和其他用户(Others)三类来划分,并且每一类都有各自的读、写、执行权限。下面是一个详细表格:

类别读权限写权限执行权限总权限(八进制)
所有者rwx4+2+1=7
所属组r4+0+0=4
其他用户r4+0+0=4

所以,一个文件或目录的权限可以用类似rwxr-xr--(即754)的方式来表示,这里的每一个字符位置分别对应所有者、所属组和其他用户的读、写、执行权限。

  • 第1、2、3位:所有者的权限(最高位到最低位依次为x、w、r)
  • 第4、5、6位:所属组的权限
  • 第7、8、9位:其他用户的权限

在上表的例子中,所有者拥有读、写、执行全部权限(7),所属组和其他用户都只有读权限(4)。

image-20240322102630843

image-20240326105144529

用户组及权限

在类Unix系统(如Linux、macOS)中,你可以通过命令行终端进行用户组的管理。以下是一些常用的组管理命令:

  1. 创建新组

    groupadd [groupname]
    

    例如,创建名为developers的新组:

    sudo groupadd developers
    
  2. 查看现有的组

    cat /etc/group
    

    或者,查找特定组名:

    grep ^[groupname]: /etc/group
    
  3. 删除组

    groupdel [groupname]
    

    删除名为developers的组:

    sudo groupdel developers
    
  4. 添加用户到组

    usermod -a -G [groupname] [username]
    

    将用户john添加到developers组中:

    sudo usermod -a -G developers john
    
  5. 查看用户所在的组

    groups [username]
    

    查看用户john所在的组:

    groups john
    

注意:大部分涉及系统管理的命令(如创建、删除组,添加用户到组)需要超级用户权限(sudo)。

为文件赋值组权限

chgrp -R dev (+文件名)

image-20240322113216360

创建用户/设置密码/删除用户

好的,以下是整理后的生成表格:

命令序号命令作用说明
01useradd -m-g 组 新建用户名 (sudo user add -M dev zhangsan)添加新用户-m 自动建立用户目录 -g 指定所在组,不指定则新建同名组
02passwd 用户名设置密码普通用户可直接用 passwd 修改自己密码
03userdel -r 用户名删除用户-r 删除用户目录
04cat /etc/passwdgrep 用户名确认用户信息查找用户名信息,新建后保存在该文件中

注意:以上表格中的“新建用户名”、“用户名”等为占位符,实际操作时需要替换为具体的用户名。

创建完用户之后,要修改用户登陆的shell才行,不然ubuntu默认是dash而不是bash

查看用户信息

序号命令作用
01id [用户名]查看 UID、GID 信息
02who查看当前已登录用户列表
03whoami查看当前登录用户账号名称

image-20240322160305594

直接id就是显示当前用户的信息

路径/etc/passwd查看用户配置信息

用户主组及附加组

image-20240322161812733

如上图,id zhangsan就没有附加组权限,而python用户是有附加组权限的,它可以使用sudo命令执行root的权限

如使用zhangsan进行sudo 创建用户,结果如下

image-20240322162035853

修改用户的主组及附加组的命令如下

具体查看用户有什么主组及附加组,可使用命令id来进行

usermod可以用来设置用户的主组/附加组和登录Shell,命令格式如下:

  • 主组:通常在新建用户时指定,在etc/passwd的第4列GID对应的组
  • 附加组:在etc/group 中最后-列表示该组的用户列表,用于指定用户的附加权限
命令格式描述
usermod -g 组 用户名修改用户的主组(passwd中的GID)
usermod -G 组 用户名修改用户的附加组
usermod -s /bin/bash修改用户登录Shell
usermod -G sudo 用户名将用户添加到sudo附加组中

所以-g命令是修改用户的主组、而-G是修改用户的附加组(比如给用户添加sudo 附加组权限)

修改用户登陆的shell才行

要使用usermod修改用户登陆的shell

登录使用的Shell, 就是登录之后,使用的终端命令,ubuntu默认是dash,而不是bash所以要进行修改的

#修改用户登录Shell,注意这里参数是小写的-s
usermod -s /bin/bash 用户名

改变了shell之后,才会出现如下效果

image-20240322174847448

如果不修改的话,效果是如下的,很难看。

image-20240322174907944

bin和sbin目录

在Linux中,大多数可执行文件都是保存在/bin、/sbin、/usr/bin、/usr/sbin目录下。

  • /bin(binary)是二进制执行文件目录,主要用于具体应用。
  • /sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理。
  • /usr/bin (user commands for applications )user用户后期安装的一些软件
  • /usr/sbin (super user commands for applications )超级用户的一些管理程序

which命令

image-20240326100922299

通过上图,我们可以看到,首先我们可以通过which去查询到相应的指令路径,然后再通过ls -ls +路径去查看到相应的权限权限,如果是红色与绿色文件夹路径显示的,就是可以执行的指令。

su命令的使用说明

su 命令在Linux和其他类Unix操作系统中是一个非常基础且重要的命令,主要用于切换当前用户身份到其他用户身份。以下是对su命令的使用说明:

基本语法:

su [选项] [用户名]

常用选项及其含义

  • -(减号):不带任何用户名参数时,单独使用 - 表示切换到根(root)用户。如果当前用户已经是root,则保持不变,但会重新加载环境变量。
  • -c command:在切换用户后执行指定的命令,并在命令执行完毕后自动返回到原先的用户身份。-(减号)同步表示切换用户的时候,同步切换当至该用户的家目录
  • -f--fast:快速切换,不加载用户的环境变量(例如 .bashrc.bash_profile 等)。这对于某些脚本或不需要完整交互式环境的情况有用。
  • -l--login:模拟完整的登录过程,除了切换用户之外,还会重置环境变量(如HOMESHELL等)以及更新PATH,并且会打开一个新的shell。
  • -m--preserve-environment:切换用户时保留当前环境变量设置,不加载目标用户的环境初始化文件。
  • -s shell--shell=shell:指定要使用的shell程序,而不是目标用户的默认shell。
  • -p--preserve-credentials:在Solaris系统中使用,与-m类似,保持当前的组ID和附加组ID。

使用举例:

  1. 切换到root用户并获取root权限:

    su -
    
  2. 切换到用户john并执行一条命令后回到原用户:

    su -c 'ls /home/john' john
    
  3. 完全模拟登录为用户mary,加载其环境变量和shell配置:

    su - mary
    
  4. 切换到用户jane但保留当前环境变量:

    su -m jane
    

注意:在大多数情况下,为了安全起见,切换到另一个用户(特别是root用户)时需要提供目标用户的密码。而在一些设置了sudo权限的系统中,用户可以使用sudo命令执行单个命令而不必频繁切换用户身份。

操作如下图

image-20240326103957794

image-20240326104321390

系统相关的命令

  • 时间和日期(不用详细说明

    • date
    • cal
  • 磁盘和目录空间

    • df
    • du
  • 进程信息

    • ps
    • top
    • kill

df及du磁盘和目录空间

编号命令作用
01df-hdisk free 显示磁盘剩余空间
02du-h [目录名]disk usage 显示目录下的文件大小

-h是指以人性化的方式来显示结果

df-h的结果如下

user@test-ubuntu:~$ df -h
Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              791M  1.5M  789M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv   14G  3.0G   10G  23% /
tmpfs                              3.9G     0  3.9G   0% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
/dev/sda2                          2.0G  129M  1.7G   8% /boot
tmpfs                              791M  4.0K  791M   1% /run/user/1000
​

df-h的结果解释如下

  1. tmpfs /run: 这是一个临时文件系统(tmpfs),大小为791MB,已用空间为1.5MB,可用空间为789MB,使用率为1%。它被挂载在/run目录下,用于存储系统运行时的一些临时文件。
  2. /dev/mapper/ubuntu--vg-ubuntu--lv: 这是逻辑卷管理器(LVM)中的一个逻辑卷,大小为14GB,已用空间为3.0GB,剩余可用空间为10GB,使用率约为23%。它被挂载在根目录'/'下,包含了大部分操作系统的主要文件和应用程序。
  3. tmpfs /dev/shm: 这也是一个tmpfs文件系统,大小为3.9GB,当前没有使用任何空间,全部3.9GB都是可用的,被挂载在/dev/shm目录下,用于进程间共享内存。
  4. tmpfs /run/lock: 另一个tmpfs文件系统,大小为5.0M,同样没有任何空间被使用,全部5.0M都是可用的,挂载点为/run/lock,主要用于锁文件,确保多进程访问资源的安全性。
  5. /dev/sda2: 这是系统的一个物理分区,大小为2.0GB,已用空间为129MB,可用空间为1.7GB,使用率约为8%。它被挂载在/boot目录下,用于存放引导加载程序相关的文件。
  6. tmpfs /run/user/1000: 最后一个tmpfs文件系统,大小为791MB,仅使用了4.0K的空间,几乎全部空间都是可用的,挂载在/run/user/1000目录下,通常用来为特定用户(在这个例子中是uid为1000的用户)提供临时的、基于内存的文件存储。

du -h结果就是查看某个目录的结构文件夹大小 情况

user@test-ubuntu:~$ du -h 
4.0K    ./.ssh   #当前文件夹占用4.0K
4.0K    ./.cache    #当前文件夹占用4.0K
28K .   #当前整个指定的文件夹占用28K
user@test-ubuntu:~$ 

ps、top(htop)、kill进程信息

编号命令作用
01ps auxprocess status 查看进程的详细状况
02top动态显示运行中的进程并且排序
05kill [-9] 进程代号终止指定代号的进程,-9 表示强行终止

ps 默认只会显示当前用户通过终端启动的应用程序

选项 :

a 显示终端上的所有进程,包括其他用户的进程

u 显示进程的详细状态

x 显示没有控制终端的进程

提示:使用 kill 命令时,最好只终止由当前用户开启的进程,而不要终止 root 身份 开启的进程,否则可能导致系统崩溃

PS命令的说明

一般情况下,ps命令要配合| grep一起使用,来过滤定位到自己想的结果,如下

user@test-ubuntu:~$ ps aux | grep "sshd: user"
root        1893  0.0  0.1  17188 11128 ?        Ss   Mar25   0:00 sshd: user [priv]
user        1949  0.0  0.0  17320  8076 ?        S    Mar25   0:01 sshd: user@pts/0
user        3190  0.0  0.0   6612  2208 pts/0    S+   07:33   0:00 grep --color=auto sshd: user
user@test-ubuntu:~$ ps aux | grep sshd
root        1712  0.0  0.1  15440  9364 ?        Ss   Mar25   0:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
root        1893  0.0  0.1  17188 11128 ?        Ss   Mar25   0:00 sshd: user [priv]
user        1949  0.0  0.0  17320  8076 ?        S    Mar25   0:01 sshd: user@pts/0
user        3192  0.0  0.0   6480  2304 pts/0    S+   07:33   0:00 grep --color=auto sshd
user@test-ubuntu:~$ 

top(参考)命令的说明

如下为top命令得到的情况

user@test-ubuntu:~$ top
top - 07:35:13 up 1 day,  1:17,  2 users,  load average: 0.08, 0.03, 0.00
Tasks: 224 total,   1 running, 223 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.1 us,  0.1 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7902.4 total,   6912.8 free,    333.1 used,    656.6 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   7264.0 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                       
      1 root      20   0  167584  12904   8184 S   0.0   0.2   0:04.60 systemd                                                       
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.06 kthreadd                                                      
 # 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

这段top命令的输出提供了关于Linux操作系统当前状态的总体概览:

  1. 系统基本信息:

    top - 07:35:13 up 1 day,  1:17,  2 users,  load average: 0.08, 0.03, 0.00
    
    • top - 07:35:13:当前系统时间是07:35:13。
    • up 1 day, 1:17:系统已经连续运行了1天又1小时17分钟。
    • 2 users:当前有2个用户登录到系统。
    • load average: 0.08, 0.03, 0.00:系统的平均负载数据,分别是过去1分钟、5分钟、15分钟的平均负载,这里都非常低,意味着在这三个时间段内,系统的任务队列平均长度非常小,系统几乎无压力。
  2. 任务(进程)统计:

    Tasks: 224 total,   1 running, 223 sleeping,   0 stopped,   0 zombie
    
    • Tasks: 224 total:系统中共有224个进程。
    • 1 running:其中1个进程正在运行(即处于可执行状态)。
    • 223 sleeping:223个进程处于休眠状态(等待事件发生或资源可用)。
    • 0 stopped:没有进程被停止(暂停执行但未结束)。
    • 0 zombie:没有僵尸进程(已终止但其父进程尚未回收其资源)。
  3. CPU使用率:

    %Cpu(s):  0.1 us,  0.1 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    
    • %us: 用户空间(User)CPU使用率为0.1%,即用户进程消耗的CPU资源。
    • %sy: 内核空间(System)CPU使用率为0.1%,即内核进程消耗的CPU资源。
    • %ni: 低优先级用户空间(Nice)CPU使用率为0.0%,指降低优先级的进程使用的CPU资源。
    • %id: 空闲(Idle)CPU使用率为99.8%,表示大部分CPU时间处于空闲状态。
    • %wa: 等待I/O(Wait)CPU使用率为0.0%,表示几乎没有CPU时间在等待I/O操作。
    • %hi: 硬件中断(Hardware IRQ)CPU使用率为0.0%,表明这段时间内硬件中断请求对CPU的影响极小。
    • %si: 软件中断(Software IRQ)CPU使用率为0.0%,同样表示软件中断请求对CPU的影响也很小。
    • %st: 虚拟机窃取(Steal Time)CPU使用率为0.0%,在虚拟化环境下,表示物理主机分配给该虚拟机之外的时间占比也为零。
  4. 内存使用状况:

    MiB Mem :   7902.4 total,   6912.8 free,    333.1 used,    656.6 buff/cache
    
    • MiB Mem:内存总量为7902.4MiB。
    • total:总计7902.4MiB的物理内存。
    • free:空闲内存为6912.8MiB。
    • used:已被使用(包括应用程序直接占用和共享库等)的内存为333.1MiB。
    • buff/cache:缓存和缓冲区占用的内存为656.6MiB,这部分内存虽然在统计数据上列为“used”,但实际上是可以随时供系统分配给应用的。
  5. 交换分区使用情况:

    MiB Swap:      0.0 total,      0.0 free,      0.0 used.
    
    • 这里显示系统的交换空间总量为0MiB,且全部未使用。这意味着系统当前没有启用或者配置交换分区,或者交换分区大小为0。
  6. 可用内存:

    7264.0 avail Mem
    
    • 表示当前系统中可供立即分配给新进程或现有进程扩展使用的内存总量为7264.0MiB。这个值通常等于“free”加上“buff/cache”。

如下得到的表头意思是

 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1 root 20 0 167584 12904 8184 S 0.0 0.2 0:04.60 systemd
 #。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

解释如下

top命令输出的表头和示例进程行提供的是系统中单个进程的详细信息,下面逐项解释:

  1. PID (Process ID): 进程的唯一标识符,每一个进程都有一个唯一的数字编号。

  2. USER: 进程所属的用户名,这里是“root”,表示该进程是由超级用户启动的。

  3. PR (Priority): 进程调度优先级,数值越小表示优先级越高。

  4. NI (Nice Value): 进程的nice值,用来调整进程的相对优先级,负值表示高优先级,正值表示低优先级,默认为0。

  5. VIRT (Virtual Memory Size): 进程使用的虚拟内存总量,包括进程本身代码、数据段、堆栈以及共享库等映射的内存,单位通常是KiB。

  6. RES (Resident Memory Size): 进程当前在物理内存中占用的空间,即常驻内存大小,不包含交换空间,单位同样是KiB。

  7. SHR (Shared Memory Size): 进程使用的共享内存大小,这部分内存可以被多个进程同时访问和使用。

  8. S (Status): 进程状态,字母表示不同的状态,例如:

    • S:表示进程处于可中断的睡眠状态(Sleeping),即进程正在等待某些事件的发生。
    • 其他状态还包括:R(运行)、D(不可中断的睡眠,比如等待IO)、Z(僵尸进程)、T(停止状态)等。
  9. %CPU: 进程在过去一段时间内占用CPU的百分比。

  10. %MEM: 进程占用的物理内存占整个系统物理内存的百分比。

  11. TIME+ : 进程自启动以来累计消耗的CPU时间,格式可能包括用户模式时间和系统模式时间,单位通常是秒。

  12. COMMAND: 启动进程所使用的命令名称或全路径名,这里是“systemd”,表示该进程是由systemd守护进程启动的。

htop命令

htop命令会更好用一点,但我们先说一下top命令

image-20240326155659381

非常好用的htop工具,而且支持自定义设置及过滤,查询、设置优先级等

kill [-9] 进程代号

可以直接使用kill [-9] 进程代号结束掉进程就可以,配合ps aux | grep进行查找进程的情况