admin 管理员组文章数量: 886992
第十三章:Linux系统管理技巧
- 13.1监控系统的状态
-
- 13.1.1使用w命令查看当前系统的负载
- 13.1.2用vmstat命令监控系统的状态
- 13.1.3用top命令显示进程所占的系统资源
- 13.1.4用sar命令监控系统状态
-
- ①查看网卡流量 sar -n DEV
- ②查看历史负载 sar -q
- 13.1.5用nload命令查看网卡流量
- 13.1.6用free命令查看内存使用状况
- 13.1.7用ps命令查看系统进程
- 13.1.8用netstat命令查看网络状况
- 13.2抓包工具
-
- 13.2.1tcpdump 工具
- 13.2.2wireshark 工具
- 13.3Linux 网络相关
-
- 13.3.1用ifconfig命令查看网卡IP
- 13.3.2给一个网卡设定多个IP
- 13.3.3查看网卡连接状态
- 13.3.4更改主机名
- 13.3.5设置 DNS
- 13.4Linux 的防火墙
-
- 13.4.1SELinux
- 13.4.2netfilter
-
- ①netfilter的5个表
- ②netfilter的5个链
- ③iptables基本语法
-
- (1)査看规则以及清除规则,其用法如下:
- (2)增加/删除一条规则,其用法如下:
- ④nat表的使用
- ⑤保存和备份iptables规则
- 13.4.3firewalld
- 13.5Linux系统的任务计划
-
- 13.5.1命令crontab
- 13.6Linux系统服务管理
-
- 13.6.1chkconfig 服务管理工具
- 13.6.2systemd服务管理
- 13.7Linux下的数据备份工具rsync
-
- 13.7.1rsync的命令格式
- 13.7.2rsync 常用选项
-
-
- ①建立目录和文件
- ②使用-a选项
- ③使用-L选项
- ④使用-u选项
- ⑤使用--delete选项
- ⑥使用--exclude选项
-
- 13.7.3rsync应用实例
-
- ①通过ssh的方式
- ②通过后台服务的方式
-
- (1)指定密码文件
- (2)在rsync服务端不指定用户
- 13.8Linux 系统日志
-
- 13.8.1/var/log/messages
- 13.8.2dmesg
- 13.8.3安全日志
- 13.9xargs 与 exec
-
- 13.9.1xargs应用
- 13.9.2exec 应用
- 13.10screen工具介绍
-
- 13.10.1使用 nohup
- 13.10.2screen 工具的使用
13.1监控系统的状态
13.1.1使用w命令查看当前系统的负载
[root@zl_cloud ~]# w
22:31:49 up 1 min, 2 users, load average: 0.20, 0.14, 0.06
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 22:30 1:33 0.02s 0.02s -bash
root pts/0 192.168.10.1 22:30 5.00s 0.04s 0.02s w
[root@zl_cloud ~]#
第1行从左到右显示的信息依次为:时间、系统运行时间、登录用户数、平均负载。
第2行开始的行则是当前登录的用户名及其登录地址等。
第一行load average后面的三个数值为:①表示1分钟内系统的平均负载值。②表示5分钟内系统的平均负载值。③表示15分钟内系统的平均负载值。我们着重看第一个值,它表示单位时间段内使用CPU的活动进程数,值越大说明服务器压力越大。一般情况下,这个值只要不超过服务器的CPU数量就没有关系。
查看服务器有几个CPU的方法:
[root@zl_cloud ~]# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
stepping : 10
microcode : 0xb4
cpu MHz : 1800.004
cache size : 6144 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch arat fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xsaves
bogomips : 3600.00
clflush size : 64
cache_alignment : 64
address sizes : 43 bits physical, 48 bits virtual
power management:
[root@zl_cloud ~]#
上例中,/proc/cpuinfo这个文件记录了CPU的详细信息。目前市面上的服务器有很多是2颗多核CPU。在Linux看来,它就是2*n个CPU(这里的n为单颗物理机CPU上有几核)。假如n是4,则查看这个文件时会显示8段类似的信息,而最后一段信息的processor:后面会显示7。
查看当前系统又几个CPU:
# grep -C ‘processor’ /proc/cpuinfo
查看有几颗物理CPU时,则需要查看关键字physical id 即可。
13.1.2用vmstat命令监控系统的状态
命令w查看的是系统整体上的负载,通过看那个数值就可以知道当前系统有没有压力。但它无法判断具体是哪里的(CPU、内存、磁盘等)压力,这就用到了vmstat。
vmstat命令打印结果共分为6部分:
[root@zl_cloud ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 1597852 964 166608 0 0 318 18 102 238 1 3 96 0 0
[root@zl_cloud ~]#
procs显示进程的相关信息。
■r (run):表示运行或等待CPU时间片的进程数。不要误认为等待CPU时间片意味着这个进程没有运行,实际上==某一时刻1个CPU只能有一个进程占用,其他进程只能排着队等着, 此时这些排队等待CPU资源的进程依然是运行状态。==该数值如果长期大于服务器CPU的个数,则说明CPU资源不够用了。
■b (block):表示等待资源的进程数.这个资源指的是I/O、内存等,举个例子.当磁盘读写非常頻繁时,写数据就会非常慢.此时CPU运算很快就结束了,但进程需要把计算的结果写入磁盘,这样进程的任务才算完成,那此时这个进程只能慢慢地等待磁盘了,这样这个进程就是这个b状态。该数值如果长时间大于1.则需要关注一下了。
memory显示内存的相关信息。
■swpd:表示切换到交换分区中的内存数量,单位为KB。
■free:表示当前空闲的内存数量,单位为KB。
■buff:表示(即将写入磁盘的)缓冲大小,单位为KB。
■cache:表示(从磁盘中读取的)缓存大小,単位为KB。
swap显示内存的交换情况。
■si:表示由交换区写入内存的数据量.单位为KB。
■so:表示由内存写入交换区的数据量,单位为KB。
io显示磁盘的使用情况。
■bi:表示从块设备读取数据的量(读磁盘),单位为KB。
■bo:表示从块设备写入数据的量(写磁盘),单位为KB。
system显示采集间隔内发生的中断次数。
■in:表示在某一时间间隔内观测到的毎秒设备的中断次数。
■cs:表示每秒产生的上下文切换次数。
cpu显示CPU的使用状态。
■us:显示用户下所花费CPU的时间百分比。
■sy:显示系统花费CPU的时间百分比。
■id:表示CPU处于空闲状态的时间百分比。
■wa:表示I/O等待所占用CPU的时间百分比。
■st:表示被偷走的CPU所占百分比(一般都为0,不用关注)。
如果磁盘io压力很大,io部分的bi和bo数值会比较高。另外,当si和so两列数值比较高并且不断变化时,说明内存不够了,内存中的数据频繁交换到交换分区中,这往往对系统性能影响极大。
我们使用vmstat查看系统状态时,通常都是使用如下形式:
[root@zl_cloud ~]# vmstat 1 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 1597992 964 166640 0 0 239 14 82 186 1 3 97 0 0
0 0 0 1597976 964 166640 0 0 0 0 26 32 0 0 100 0 0
0 0 0 1597976 964 166640 0 0 0 0 26 32 0 1 99 0 0
0 0 0 1597976 964 166640 0 0 0 0 26 29 0 0 100 0 0
0 0 0 1597976 964 166640 0 0 0 0 30 38 0 1 99 0 0
[root@zl_cloud ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 1597992 964 166640 0 0 230 13 80 180 1 3 97 0 0
0 0 0 1597976 964 166640 0 0 0 0 27 32 0 1 99 0 0
0 0 0 1597976 964 166640 0 0 0 0 26 35 0 1 99 0 0
...
^C
[root@zl_cloud ~]#
表示每隔1秒输出一次状态,共输出5次,如果想一直输出就不要后面次数5就好了。
13.1.3用top命令显示进程所占的系统资源
top命令用于动态监控进程所占的系统资源,每隔3秒变一次。它的特点是把占用系统资源(CPU、 内存、磁盘I/O等)最高的进程放到最前面。 上例中,top命令打印出了很多信息,包括系统负载(load average)、进程数(Tasks)、CPU使用情况、内存使用情况以及交换分区使用情况。这些内容其实可以通过其他命令来查看,用top重点查看的还是下面的进程使用系统资源的详细状况,其中你需要关 注%CPU、%MEM和COMMAND这几项所代表的意义。RES这一项为进程所占的内存大小,而%MEM这一项为使用内存的百分比。
[root@zl_cloud ~]# top
top - 22:40:27 up 10 min, 2 users, load average: 0.00, 0.03, 0.05
Tasks: 347 total, 2 running, 345 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1868660 total, 1596920 free, 103528 used, 168212 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 1603572 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
341 root 20 0 0 0 0 S 0.7 0.0 0:03.54 kworker/0:3
2401 root 20 0 148408 2276 1456 R 0.3 0.1 0:00.17 top
1 root 20 0 44316 6772 4040 S 0.0 0.4 0:02.73 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/0
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/1
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/2
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/3
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/4
14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/5
15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/6
16 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/7
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/8
[root@zl_cloud ~]#
在top状态下,按Shift+m键可以按照内存使用大小排序。按数字1可以列岀所有核 CPU的使用状态,按q键可以退出top。
另外,还经常用到命令top -bnl.它表示非动态打印系统资源的使用情况,可以用在shell脚本中。示例如下:
[root@zl_cloud ~]# top -bn1 | head
top - 22:47:06 up 17 min, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 347 total, 2 running, 345 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.3 us, 1.4 sy, 0.0 ni, 98.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1868660 total, 1596636 free, 103616 used, 168408 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 1603348 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2406 root 20 0 148404 2124 1388 R 5.9 0.1 0:00.02 top
1 root 20 0 44316 6776 4044 S 0.0 0.4 0:02.75 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd
[root@zl_cloud ~]#
和top命令唯一的区别就是,它一次性输出所有信息而非动态显示。
13.1.4用sar命令监控系统状态
sar命令很强大,它可以监控系统几乎所有资源的状态,比如平均负载、网卡流量、磁盘状态、内存使用等。与其他系统状态监控工具不同,它可以打印历史信息,可以显示当天从零点开始到当前时刻的系统状态信息。
如果你的系统没有安装这个命令,请使用命令yum install -y sysstat安装。
# yum install -y sysstat
初次使用sar命令会报错,那是因为sar工具还没有生成相应的数据库文件(无需实时监控,因为不用去查询那个库文件)。它的数据库文件在/var/log/sa/目录下。因为这个命令太复杂,所以只介绍以下两个方面。
①查看网卡流量 sar -n DEV
[root@zl_cloud ~]# sar -n DEV
Linux 3.10.0-327.el7.x86_64 (zl_cloud) 2020年04月12日 _x86_64_ (1 CPU)
23时00分01秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
23时10分01秒 eno16777736 0.28 0.15 0.02 0.02 0.00 0.00 0.00
23时10分01秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
平均时间: eno16777736 0.28 0.15 0.02 0.02 0.00 0.00 0.00
平均时间: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[root@zl_cloud ~]#
这个命令会把当天记录的网卡信息打印出来,每隔10分钟记录一次。 IFACE这一列表示设备名称,rxpck/s这一列表示每秒进入收取的包的数量,txpck/s这一列表示每秒发送出去的包的数量,rxkB/s这一列表示每秒收取的数据量(单位为KB), txkB/s这一列表示每 秒发送的数据量(后面几列不需要关注)。
==如果有一天服务器丢包非常严重,那么你就应该查一下网卡流量是否异常了。==如果txpck/s那一列的数值大于4000,或者rxkB/s那一列的数值大于5000000,很有可能是被攻击了。正常的服务器网卡流 量不会这么高,除非是你自己在复制数据。上例中的命令是查看网卡流量历史的,如果你想实时查看网卡流量,方法如下:
[root@zl_cloud ~]# sar -n DEV 1 5
Linux 3.10.0-327.el7.x86_64 (zl_cloud) 2020年04月12日 _x86_64_ (1 CPU)
23时07分32秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
23时07分33秒 eno16777736 2.00 2.00 0.12 0.22 0.00 0.00 0.00
23时07分33秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
23时07分33秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
23时07分34秒 eno16777736 0.99 0.99 0.06 0.38 0.00 0.00 0.00
23时07分34秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
23时07分34秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
23时07分35秒 eno16777736 0.99 0.99 0.06 0.38 0.00 0.00 0.00
23时07分35秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
23时07分35秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
23时07分36秒 eno16777736 0.99 0.99 0.06 0.38 0.00 0.00 0.00
23时07分36秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
23时07分36秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
23时07分37秒 eno16777736 1.00 1.00 0.06 0.38 0.00 0.00 0.00
23时07分37秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
平均时间: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
平均时间: eno16777736 1.19 1.19 0.07 0.35 0.00 0.00 0.00
平均时间: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[root@zl_cloud ~]#
另外==也可以使用-f选择项查看某一天的网卡流量历史,后面跟文件名。==在Red Hat或者CentOS发行版中,sar的库文件一定在/var/log/sa/目录下,如下所示:
[root@zl_cloud ~]# sar -n DEV -f /var/log/sa/sa12
Linux 3.10.0-327.el7.x86_64 (zl_cloud) 2020年04月12日 _x86_64_ (1 CPU)
23时00分01秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
23时10分01秒 eno16777736 0.28 0.15 0.02 0.02 0.00 0.00 0.00
23时10分01秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
平均时间: eno16777736 0.28 0.15 0.02 0.02 0.00 0.00 0.00
平均时间: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[root@zl_cloud ~]#
说明:这样就可以查看23号当天的网卡浏量了,不过为什么只有这么一点点呢?这是因为我只在这个时间段开机使用该虚拟机了,正常应该是会记录一整天的。
②查看历史负载 sar -q
[root@zl_cloud ~]# sar -q
Linux 3.10.0-327.el7.x86_64 (zl_cloud) 2020年04月12日 _x86_64_ (1 CPU)
23时00分01秒 runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked
23时10分01秒 1 363 0.00 0.01 0.05 0
平均时间: 1 363 0.00 0.01 0.05 0
[root@zl_cloud ~]#
这个命令有助于我们査看服务器在过去某个时间的负载状况。其实介绍sar命令,只是为了让你学会查看网卡流量(这是非常有用的)。如果你感兴趣可以man一下,它的用法还有很多。
13.1.5用nload命令查看网卡流量
sar虽然可以查看网卡流量,但是不够直观,还有一个更好用的工具,那就是nload。系统没有默认安装它,安装方法如下:
# yum install -y epel-release; yum install -y nload
关于上面的命令,也许你有疑问,为什么不直接写两个包呢?这是因为要想安装nload,前提是先安装epel-release包,nload包是在epel这个扩展源里面的。以后在工作中,你一定会经常使用epel扩展源安装一些软件包,非常方便。
安装完之后,直接运行nload命令, 然后回车就会出现如下界面。是动态的哦,很直观对不对?相信你会喜欢上这个工具。
[root@zl_cloud ~]# nload
Device eno16777736 [192.168.10.129] (1/2):
================================================================================
Incoming:
Curr: 1.73 kBit/s
Avg: 1.73 kBit/s
Min: 1.73 kBit/s
Max: 1.73 kBit/s
Ttl: 16.81 MByte
Outgoing:
Curr: 3.53 kBit/s
Avg: 3.53 kBit/s
Min: 3.53 kBit/s
Max: 3.53 kBit/s
Ttl: 277.32 kByte
...
[root@zl_cloud ~]#
最上面一行为网卡名字以及IP地址,按向右箭头可以查看其他网卡的网络流量。输出结果分为两部分,Incoming为进入网卡的流量,Outgoing为网卡出去的流量,我们关注的当然是Curr那行的数据, 其单位也可以动态自动调整,非常人性化。按q退出该界面。
13.1.6用free命令查看内存使用状况
[root@zl_cloud ~]# free
total used free shared buff/cache available
Mem: 1868660 107108 1412116 8848 349436 1588724
Swap: 2097148 0 2097148
[root@zl_cloud ~]#
free命令可以查看当前系统的总内存大小以及使用内存的情况。CentOS 7系统的free命令显示结 果比CentOS 6更加简洁了一些,但大体上的内容是一致的。
- total:内存总大小。
- used:真正使用的实际内存大小。
- free:剩余物理内存大小(没有被分配,纯剩余)。
- shared:共享内存大小,不用关注它。
- buff/cache:分配给buffer和cache的内存总共有多大。关于buffer和cache大家也许有一些疑惑,因为字面意思上两者很相近。一个很容易区分这两者的方法:buffer和cache都是一部分内存,内存的作用就是缓解CPU和IO(如,磁盘)的速度差距的,你可以这样理解: 数据经过CPU计算,即将要写入磁盘,这时用的内存为buffer; CPU要计算时,需要把数据
从磁盘中读出来,临时先放到内存中,这部分内存就是cache。 - available:系统可使用内存有多大,它包含了free。Linux系统为了让应用跑得更快,会预先分配一部分内存(buffer/cache )给某些应用使用,虽然这部分内存并没有真正使用,但也已经分配岀去了。然而,当另外一个服务要使用更多内存时,是可以把这部分预先分配的内存拿来用的。所以还没有被占用的这部分buffer和cache再加上free就是available。
这个free命令显示的结果中,其实有一个隐藏的公式:total=used+free+buff/cacheo另外, available是由free这部分内存和buff/cache还未被占用的那部分内存组成。used那部分内存和 buff/cache被占用的内存是没有关系的。
另外free命令还可以加-m和-g选项,甚至也支持 -h选项,这和CentOS 6版本不同。 - -m:(以MB为单位)打印内存的使用状况;
- -g:(以GB为单位)打印内存的使用状况。
[root@zl_cloud ~]# free -m
total used free shared buff/cache available
Mem: 1824 104 1379 8 341 1551
Swap: 2047 0 2047
[root@zl_cloud ~]#
13.1.7用ps命令查看系统进程
在Linux下如何查看系统进程呢?其实使用前面介绍的top命令就可以,但是查看起来没有ps命令方便,它是专门显示系统进程的命令,如下所示:
[root@zl_cloud ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 44316 6796 ? Ss 22:30 0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? S 22:30 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 22:30 0:00 [ksoftirqd/0]
root 7 0.0 0.0 0 0 ? S 22:30 0:00 [migration/0]
root 8 0.0 0.0 0 0 ? S 22:30 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S 22:30 0:00 [rcuob/0]
root 10 0.0 0.0 0 0 ? S 22:30 0:00 [rcuob/1]
root 11 0.0 0.0 0 0 ? S 22:30 0:00 [rcuob/2]
root 12 0.0 0.0 0 0 ? S 22:30 0:00 [rcuob/3]
...
[root@zl_cloud ~]#
下面介绍几个系统进程的参数:
- PID:表示进程的ID,这个ID很有用。在Linux中,内核管理进程就得靠pid来识别和管理某一个进程。比如我想终止某一个进程,则用命令“kill进程的pid”。有时这样并不能终止进 程,需要加-9选项,即“kill -9进程的pid”,但这样有点暴力,严重的时候会丢数据,所 以尽量还是别用。
- STAT:进程的状态。进程状态分为以下几种(不要求记住,但要了解)。
■D:不能中断的进程(通常为IO )。
■R (run):正在运行中的进程,其中包括了等待CPU时间片的进程。
版权声明:本文标题:4.10 第十三章:Linux系统管理技巧 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1732052544h1519230.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论