linux命令行(三)常用日常系统管理

1.磁盘信息

1.1磁盘利用率:du

du [options] 按目录确定磁盘利用率

选项 说明
-c 在运行结束时生成一个总计(count)
-h 以易读的格式打印大小
-k 以KB为单位打印大小,而不使用块大小
-s 只打印每个参数的总表
-a 列出所有的文件和目录容量大小,而不仅仅列出目录容量大小

du 命令后不接目录时,打印当前目录的磁盘信息,接目录时打印指定目录的磁盘信息。

如:du -sh 列出当前目录下磁盘总计

du -a /home/username | sort -n -r | head -n 12 列出12个占用最大空间的文件和目录

1.2盘释放:df

df程序显示已挂载文件系统上可用的空闲空间容量,文件系统可以是驱动器、卷、分区、网络共享。

如:

文件系统          1K-块     已用     可用 已用% 挂载点
tmpfs            398264     1796   396468    1% /run
/dev/sda3      61091660 10930152 47025816   19% /
tmpfs           1991312        0  1991312    0% /dev/shm
tmpfs              5120        0     5120    0% /run/lock
/dev/sda2        524252     5344   518908    2% /boot/efi
tmpfs            398260       96   398164    1% /run/user/1000
/dev/sr0        3043440  3043440        0  100% /media/adins/Ubuntu 21.10 amd64

df [options] 如:df -l 查看所有本地安装驱动器的*空间。

                          df -h  /tmp 以易读格式查看/tmp目录所在文件系统的空闲空间

选项 说明
-h 以易读格式显示容量
-l 只列出本地挂载的文件系统,不显示有关网络挂载文件系统的信息

2.进程管理

2.1列出进程:ps

ps [options]  

2.1.1选项说明

选项 说明
-a 显示所有进程与控制终端,而不只是当前用户的进程
-r 只显示正在运行的进程
-x 显示没有控制终端的进程
-u 显示进程所有者
-f 显示进程之间的父子关系
-l 生成一个长格式的列表
-w 显示进程的命令行参数(最多半行)
-ww 显示进程的命令行参数(不限制宽度)

常用的参数组合,auxww ,显示所有进程(无论是否控制终端),进程的所有者和进程的命令行参数。aurww ,显示正在运行的进程。

如:ps auxww | head    , ps aurww

2.1.2头部信息说明

ps 返回信息的标题栏头部说明:

ps 列 说明
USER 进程的所有者
PID 进程识别号
%CPU

进程占用CPU的百分比,多cpu时可能会超过100%

%MEM 进程占用的内存百分比
VSZ 进程占用的虚拟内存量
RSS 进程正在占用的实际(常驻)内存量
TTY

进程的控制终端号,如:pts/0,pts/1..

?表示这个过程不再连接到控制终端

STAT 进程的状态。睡眠(S)、僵尸(Z)、运行(R)、跟踪(T)、高优先级(<)
START 进程的启动日期
TIME 进程再cpu上花费的时间
COMMAND 进程的名称及命令行参数

2.2显示进程的交互式列表:top

top提供动态的进程列表,与ps相似。

top - 10:45:48 up  1:11,  1 user,  load average: 0.05, 0.02, 0.00
任务: 306 total,   2 running, 304 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.5 sy,  0.0 ni, 99.2 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st
MiB Mem :   3889.3 total,   2188.8 free,    933.5 used,    766.9 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   2692.9 avail Mem 

 进程号 USER      PR  NI    VIRT    RES    SHR    %CPU  %MEM     TIME+ COMMAND  
   2531 root      20   0       0      0      0 I   0.3   0.0   0:00.07 kworker+

2.2.1信息解读 

第一行显示的是系统的概况:
当前时间、系统的运行时间、登录的用户数以及系统的平均负载。
平均负载有3个值:最近1分钟的,最近5分钟的,最近15分钟的平均负载。

第二行显示了进程:

top命令的输出中将进程叫作任务(task):
总进程,运行、休眠、停止或是僵化状态(僵化状态是指进程完成了,但父进程没有响应)

第三行显示CPU信息:
top根据进程的属主(用户还是系统)和进程的状态(运行、 空闲还是等待)将CPU利用率分成几类输出。
us【user space】— 用户空间占用CPU的百分比。
sy【sysctl】— 内核空间占用CPU的百分比。
ni【】— 改变过优先级的进程占用CPU的百分比
id【idolt】— 空闲CPU百分比
wa【wait】— IO等待占用CPU的百分比
hi【Hardware IRQ】— 硬中断占用CPU的百分比
si【Software Interrupts】— 软中断占用CPU的百分比

第四行显示内存信息:

total 总内存 free 空闲内存 used 已使用 buff/cache 缓存的内存量

列表头部信息:
PR:进程的优先级。
NI:进程的谦让度值。
VIRT:进程占用的虚拟内存总量。
RES:进程占用的物理内存总量。
SHR:进程和其他进程共享的内存总量。
S:进程的状态(D代表可中断的休眠状态,R代表在运行状态,S代表休眠状态,T代表跟踪状态或停止状态,Z代表僵化状态)。
%CPU:进程使用的CPU时间比例。
%MEM:进程使用的内存占可用内存的比例。
TIME+:自进程启动到目前为止的CPU时间总量。
COMMAND:进程所对应的命令行名称,也就是启动的程序名。

2.2.2交互命令

在top基本视图中,按数字键盘1 可监控每个逻辑CPU的状况。

h 显示帮助画面,给出一些简短的命令总结说明
k 终止一个进程。
i 忽略闲置和僵死进程。这是一个开关式命令。
q 退出程序
r 重新安排一个进程的优先级别
S 切换到累计模式
s 改变两次刷新之间的延迟时间(单位为s
f或者F 从当前显示中添加或者删除项目
o或者O 改变显示项目的顺序
l 切换显示平均负载和启动时间信息
m 切换显示内存信息
t 切换显示进程和CPU状态信息
c 切换显示命令名称和完整命令行
M 根据驻留内存大小进行排序
P 根据CPU使用百分比大小进行排序
T 根据时间/累计时间进行排序

W 将当前设置写入~/.toprc文件中

2.3给进程发信号:kill

kill [options] PID  其中PID是从ps命令派生的进程标识号。

                kill命令并不仅是用于杀死进程,它所做的是向进程发送信号。

可选参数 -n, n代表信号数。不选时默认发送15,安全终止进程。

常用的有挂断信号(SIGHUP)1,如应用程序需要重新读取配置文件;终止信号(SIGKILL)9,强制终止进程;kill信号(SIGTERM)15,发送终止信号,由操作系统安全的终止进程。

如:kill 205688 安全终止, kill -9 595959 强制关闭进程, 

注:也可以使用信号的名称来发送信号,如 kill -SIGHUP 与 kill -1 等价,可以使用kill -l 查看数字和信号的对应。

3.常用系统信息

3.1显示系统信息:uname 

uname -a 获取系统的名称、发行版、系统主机名和内核发行版本。

注:另一个提供系统信息的是:lsb_release -a

3.2谁以登陆:who和w

who 命令显示所有登录用户以及其他有用的统计信息

w 是 who 命令的一个变体, 显示的信息比 who 更多,包括登录者,登录终端,地点,登录了多长时间,空闲了多长时间,cpu利用率。

4.用户管理

4.1切换用户su

su [options]  su单独使用时,切换到root用户。切换到其他用户使用 su -username。在命令之前添加sudo可以不登陆root用户使用root权限,更加安全。

4.2创建用户并配置

两类命令:

adduser: 会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。

useradd:需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密码、无主目录、没有指定shell版本。

4.2.1adduser

默认情况下:

adduser在创建用户时会主动调用  /etc/adduser.conf;

在创建用户主目录时默认在/home下,而且创建为 /home/用户名  

如:adduser project4 ******

常用选项:

--home:                       指定创建主目录的路径,默认是在/home目录下创建用户名同名的目录,这里可以指定;如果主目录同名目录存在,则不再创建,仅在登录时进入主目录。

--quiet:                        即只打印警告和错误信息,忽略其他信息。

--debug:                     定位错误信息。

--conf:                         在创建用户时使用指定的configuration文件。

--force-badname:     默认在创建用户时会进行/etc/adduser.conf中的正则表达式检查用户名是否合法,如果想使用弱检查,则使用这个选项,如果不想检查,可以将/etc/adduser.conf中相关选项屏蔽。

4.2.2useradd

1.注意: 在使用useradd命令创建新用户时,不会为用户创建主目录,不会为用户指定shell版本,不会为用户创建密码。

如:useradd project3

2.使用参数创建有主目录,shell版本的用户,

如:sudo  useradd  -d  "/home/project3"   -m   -s "/bin/bash"   project3

常用命令行选项:

(1) -d:           指定用户的主目录

(2) -m:          如果存在不再创建,但是此目录并不属于新创建用户;如果主目录不存在,则强制创建; -m和-d一块使用。

(3) -s:           指定用户登录时的shell版本

(4) -M:           不创建主目录

2.1修改密码:sudo passwd project3

4.3删除用户

userdel

只删除用户:sudo   userdel   用户名

连同用户主目录一块删除:sudo  userdel   -r   用户名

4.4etc下相关文件

        /etc/passwd - 使 用 者 帐 号 资 讯,可以查看用户信息
       /etc/shadow - 使 用 者 帐 号 资 讯 加 密
       /etc/group - 群 组 资 讯
       /etc/default/useradd - 定 义 资 讯
       /etc/login.defs - 系 统 广 义 设 定
       /etc/skel - 内 含 定 义 档 的 目 录

上一篇:Linux下软件包的分类及deb、rpm、tar.gz的区别


下一篇:PHP坐标系转换 WGS、BD09、GCJ-02