`

Linux-系统管理命令

 
阅读更多

 

系统管理命令:df、top、free、at、lp、adduser、groupadd、kill、crontab

 

1.df

df命令用来检查文件系统的磁盘空间占用情况,使用权限是所有用户。

df [options] 

  -a:显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统。 

  -k 以k字节为单位显示。

  -i 显示i节点信息,而不是磁盘块。

  -t 显示各指定类型的文件系统的磁盘空间使用情况。

  -x 列出不是某一指定类型文件系统的磁盘空间使用情况(与t选项相反)。

  -T 显示文件系统类型。 
  -h:以容易理解的格式印出文件系统大小,例如136KB、254MB、21GB。

  -H:与-h参数相同,不过在根式化的时候,采用1000而不是1024进行容量转换

 

2.top

top命令用来显示执行中的程序进程,使用权限是所有用户。

top [-d] | top [-bnp]

参数:

-d :后面可以接秒数,就是整个程序画面更新的秒数。预设是 5 秒;

-b :以批次的方式执行 top ,还有更多的参数可以使用喔!

通常会搭配数据流重导向来将批次的结果输出成为档案。

-n :与 -b 搭配,意义是,需要进行几次 top 的输出结果。

-p :指定某些个 PID 来进行观察监测而已。

在 top 执行过程当中可以使用的按键指令:

? :显示在 top 当中可以输入的按键指令;

top命令使用过程中,还可以使用一些交互的命令来完成其它参数的功能。这些命令是通过快捷键启动的。 

<空格>:立刻刷新。 
P:根据CPU使用大小进行排序。 

T:根据时间、累计时间排序。 

q:退出top命令。 

m:切换显示内存信息。 
t:切换显示进程和CPU状态信息。 

c:切换显示命令名称和完整命令行。 

M:根据使用内存大小进行排序。 
W:将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法。

 

 

 

 

top - 09:32:45 up 2 days, 23:20,  3 users,  load average: 0.00, 0.00, 0.00
Tasks: 174 total,   1 running, 171 sleeping,   2 stopped,   0 zombie
Cpu(s):  0.1%us,  0.0%sy,  0.0%ni, 99.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%
Mem:   2047732k total,   787016k used,  1260716k free,   105400k buffers
Swap:  3145720k total,        0k used,  3145720k free,   282548k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND        
15851 root      20   0 14940 1236  900 R  0.3  0.1   0:00.03 top            
    1 root      20   0 19236 1432 1156 S  0.0  0.1   0:01.15 init           
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd       
    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.40 migration/0    
    4 root      20   0     0    0    0 S  0.0  0.0   0:00.01 ksoftirqd/0    
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0     
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.25 migration/1    
    7 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1    
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/1     
    9 root      RT   0     0    0    0 S  0.0  0.0   0:00.51 migration/2  

 
top 也是个挺不错的程序观察工具!但不同于 ps 是静态的结果输出, top 这个程序可以持续的监测 (monitor) 整个系统的程序工作状态,例如上面的范例一所示啊! 在预设的情况下,每次更新程序资源的时间为 5 秒,不过,可以使用 -d 来进行修改。 top 主要分为两个画面,上面的画面为整个系统的资源使用状态,基本上总共有六行, 显示的内容依序是:
• 第一行:显示系统已启动的时间、目前上线人数、系统整体的负载(load)。 比较需要注意的是系统的负载,三个数据分别代表 1, 5, 10 分钟的平均负载。 一般来说,这个负载值应该不太可能超过 1 才对,除非您的系统很忙碌。 如果持续高于 5 的话,那么.....仔细的看看到底是那个程序在影响整体系统吧!
• 第二行:显示的是目前的观察程序数量,比较需要注意的是最后的 zombie 那个数值,如果不是 0 ,嘿嘿!好好看看到底是那个 process 变成疆尸了吧?!
• 第三行:显示的是 CPU 的整体负载,每个项目可使用 ? 查阅。需要观察的是 id (idle) 的数值,一般来说,他应该要接近 100% 才好,表示系统很少资源被使用啊! ^_^。
• 第四行与第五行:表示目前的物理内存与虚拟内存 (Mem/Swap) 的使用情况。
• 第六行:这个是当在 top 程序当中输入指令时,显示状态的地方。 例如范例四就是一个简单的使用例子。
至于 top 底下的画面,则是每个 process 使用的资源情况。比较需要注意的是:
• PID :每个 process 的 ID 啦!
• USER:该 process 所属的使用者;
• PR :Priority 的简写,程序的优先执行顺序,越小越早被执行;
• NI :Nice 的简写,与 Priority 有关,也是越小越早被执行;
• %CPU:CPU 的使用率;
• %MEM:内存的使用率;
• TIME+:CPU 使用时间的累加;

 

VIRT:进程占用的虚拟内存值。 

RES:进程占用的物理内存值。 

SHR:进程使用的共享内存值。

S:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。

Command:进程启动的启动命令名称,如果这一行显示不下,进程会有一个完整的命令行。

 

3.free

free命令用来显示内存的使用情况,使用权限是所有用户。

 

参数 
-b -k -m:分别以字节(KB、MB)为单位显示内存使用情况。 

-s delay:显示每隔多少秒数来显示一次内存使用情况。 

-t:显示内存总和列。 

-o:不显示缓冲区调节列。

[root@localhost temp]# free -m
             total       used       free     shared    buffers     cached
Mem:          1999        768       1231          0        103        275
-/+ buffers/cache:        389       1610
Swap:         3071          0       3071

 

 

 

第一行:
total 物理内存总数

used 已经使用的内存数

free 空闲的内存数

shared 当前已经废弃不用,总是0
buffers 即Buffer Cache内存数

cached 即Page Cache内存数

关系:total = used + free

 

第二行:
-/+ buffers/cache的意思相当于:
-buffers/cache 的内存数:(等于第1行的 used – buffers – cached),实际上是应用程序所使用的内存。
+buffers/cache 的内存数:(等于第1行的 free + buffers + cached),是对应用程序来说还剩余的内存。

可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。

第三行是交换分区swap, 列出已使用、空闲的swap.

 

 

 4.at (参考http://www.cnblogs.com/peida/archive/2013/01/05/2846152.html)

at命令用来在指定时刻执行指定的命令序列。

at [-V] [-q x] [-f file] [-m] time

at允许使用一套相当复杂的指定时间的方法。他能够接受在当天的hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。当然也能够使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的 词语来指定时间。用户还能够采用12小时计时制,即在时间后面加上AM(上午)或PM(下午)来说明是上午还是下午。 也能够指定命令执行的具体日期,指定格式为month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年)。指定的日期必须跟在指定时间的后面。 上面介绍的都是绝对计时法,其实还能够使用相对计时法,这对于安排不久就要执行的命令是很有好处的。指定格式为:now + count time-units ,now就是当前时间,time-units是时间单位,这里能够是minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count是时间的数量,究竟是几天,还是几小时,等等。 更有一种计时方法就是直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。
TIME:时间格式,这里可以定义出什么时候要进行 at 这项任务的时间,格式有:
HH:MM
ex> 04:00
在今日的 HH:MM 时刻进行,若该时刻已超过,则明天的 HH:MM 进行此任务。
HH:MM YYYY-MM-DD
ex> 04:00 2009-03-17
强制规定在某年某月的某一天的特殊时刻进行该项任务
HH:MM[am|pm] [Month] [Date]
ex> 04pm March 17
也是一样,强制在某年某月某日的某时刻进行该项任务
HH:MM[am|pm] + number [minutes|hours|days|weeks]
ex> now + 5 minutes
ex> 04pm + 3 days
就是说,在某个时间点再加几个时间后才进行该项任务。

 

在一个指定的时间执行一个指定任务,只能执行一次,且需要开启atd进程(

ps -ef | grep atd查看, 开启用/etc/init.d/atd start or restart; 开机即启动则需要运行chkconfig --level 2345 atd on)

 

命令参数:

-m 当指定的任务被完成之后,将给用户发送邮件,即使没有标准输出

-I atq的别名

-d atrm的别名

-v 显示任务将被执行的时间

-c 打印任务的内容到标准输出

-V 显示版本信息

-q<列队> 使用指定的列队

-f<文件> 从指定文件读入任务而不是从标准输入读入

-t<时间参数> 以时间参数的形式提交要运行的任务 

 

计划任务设定后,在没有执行之前我们可以用atq命令来查看系统没有执行工作任务

 

删除已经设置的任务命令:atrm 7

显示已经设置的任务内容命令:at -c 8

 

    

      

atd 的启动

要使用一次性计划任务时,我们的 Linux 系统上面必须要有负责这个计划任务的服务,那就是 atd 服务。 不过并非所有的 Linux distributions 都默认会把他打开的,所以,某些时刻我们需要手动将atd 服务激活才行。 激活的方法很简单,就是这样:

命令:

/etc/init.d/atd start 

/etc/init.d/atd restart 

配置一下启动时就启动这个服务,免得每次重新启动都得再来一次

命令:

chkconfig atd on

 

5.lp

lp是打印文件的命令,使用权限是所有用户。

格式 
lp [-c][-d][-m][-number][-title][-p] 

参数 
-c:先拷贝文件再打印。 

-d:打印队列文件。 
-m:打印结束后发送电子邮件到用户。 

-number:打印份数。 

-title:打印标题。 
-p:设定打印的优先级别,最高为100。 

 

6.useradd 

useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。

useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。

格式 
useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name

参数 
-c:加上备注文字,备注文字保存在passwd的备注栏中。  

-d:指定用户登入时的启始目录。 

-D:变更预设值。 
-e:指定账号的有效期限,缺省表示永久有效。 

-f:指定在密码过期后多少天即关闭该账号。 

-g:指定用户所属的群组。 

-G:指定用户所属的附加群组。 

-m:自动建立用户的登入目录。 

-M:不要自动建立用户的登入目录。 

-n:取消建立以用户名称为名的群组。 

-r:建立系统账号。 
-s:指定用户登入后所使用的shell。 

-u:指定用户ID号。

 

7.groupadd

groupadd命令用于将新组加入系统。

格式 
groupadd [-g gid] [-o]] [-r] [-f] groupname 

参数 
-g gid:指定组ID号。 

-o:允许组ID号,不必惟一。 

-r:加入组ID号,低于499系统账号。 

-f:加入已经有的组时,发展程序退出。

(/etc/passwd)

 

8.kill

kill命令用来中止一个进程。

格式 
kill [ -s signal | -p ] [ -a ] pid ... 

kill -l [ signal ] 

参数 
-s:指定发送的信号。 

-p:模拟发送信号。 

-l:指定信号的名称列表。

 

kill -9 12345//强制终止进程12345

 

9.crontab 

使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户。

格式 
crontab [ -u user ] 文件 
crontab [ -u user ] { -l | -r | -e } 

参数 
-e:执行文字编辑器来设定定时任务,内定的文字编辑器是vi。 

-r:删除目前的定时任务。 

-l:列出目前的定时任务。

crontab 文件的格式为“M H D m d cmd”。其中,M代表分钟(0~59),H代表小时(0~23),D代表天(1~31),m代表月(1~12),d代表一星期内的天(0~6,0为星期天)。cmd表示要运行的程序,它被送入sh执行,这个Shell只有USER、HOME、SHELL三个环境变量。

例如:*/1 * * * * wall "Hello!",每分钟发送一个Hello!

上面时间分别是:分钟、小时、天、月、星期

 

分享到:
评论

相关推荐

    jdk-8u171-linux-x64.rpm/jdk-8u171-linux-x64.tar.gz

    这两个文件分别对应于两种不同的安装方式,适应于不同类型的Linux系统需求。 首先,`jdk-8u171-linux-x64.rpm`是一个RPM(Red Hat Package Manager)格式的文件,主要用于基于RPM包管理系统的Linux发行版,如Fedora...

    最新-Linux常用命令大全-非常实用

    Linux 操作系统是一个功能强大且灵活的操作系统,拥有众多实用的命令来帮助用户管理和维护系统。下面是 Linux 中一些常用的命令,旨在帮助用户快速掌握 Linux 操作系统。 TTY 控制台终端 在 Linux 中,TTY...

    Linux基础知识与系统管理教学课件-pdf.rar

    4.2.1 Linux常用命令-权限管理命令-权限管理命令chmod 4.2.2 Linux常用命令-权限管理命令-其他权限管理命令 4.3.1 Linux常用命令-文件搜索命令-文件搜索命令find 4.3.2 Linux常用命令-文件搜索命令-其他文件搜索命令...

    Linux运维-2系统管理-15系统管理-167top命令和pstree命令.avi

    Linux运维-2系统管理-15系统管理-167top命令和pstree命令.avi

    jdk-8u144-linux-x64.zip

    描述中提到了"jdk-8u144-linux-x64.rpm",这是Red Hat Package Manager (RPM)格式的安装包,同样代表了JDK 8u144在Linux系统上的64位版本。RPM是一种用于在Linux发行版中安装、升级和管理软件的包管理器。"亲测可用...

    linux-文件系统管理视频教程

    09.2.1 文件系统管理-文件系统常用命令-df、du、fsck、dumpe2fs.mp4 09.2.2 文件系统管理-文件系统常用命令-挂载命令.mp4 09.2.3 文件系统管理-文件系统常用命令-挂载光盘与U盘.mp4 09.2.4 文件系统管理-文件系统...

    云计算-Linux系统管理-Linux常用命令.pdf

    本资料主要介绍了Linux系统中常用的一些命令,这些命令对于Linux系统管理来说至关重要。 首先,命令提示符是Linux用户与系统交互的一个重要界面,它提供了一些有用的信息。通常情况下,提示符会显示当前登录的...

    Linux系统管理-Linux常用命令.pdf

    Linux系统是一种开源的类Unix操作系统,它以其高效、稳定、强大的网络功能和...Linux系统管理员需要熟练运用这些命令来完成文件管理、目录管理、系统状态查看等日常工作,以此来确保系统的稳定运行和服务的正常提供。

    Linux-系统命令大全与详解.doc

    Linux 系统命令是指在 Linux 终端中使用的命令,用于管理和维护 Linux 系统。本文档将详细介绍 Linux 系统命令的使用方法、参数设置、实例演示等内容。 cat 命令 cat 命令是 Linux 中最基本的命令之一,用于查看...

    Linux基础知识与系统管理视频.rar

    4.2.1 Linux常用命令-权限管理命令-权限管理命令chmod 4.2.2 Linux常用命令-权限管理命令-其他权限管理命令 4.3.1 Linux常用命令-文件搜索命令-文件搜索命令find 4.3.2 Linux常用命令-文件搜索命令-其他文件搜索命令...

    Linux操作系统实验报告-常用Linux命令gcc.doc

    1. 文件管理命令 - Cat 命令:将 text1 的内容加上行号输入到 text2 中 - Chmod 命令:将 file 的权限设置为可读、可写、可执行 - Cp 命令:将所有的 C 程序文件复制至 prog 子目录中 - Mkdir 命令:创建子目录 ...

    jdk-8u181-linux-x64.tar.gz

    总的来说,"jdk-8u181-linux-x64.tar.gz"是一个包含Java 8开发工具的压缩包,适用于64位Linux系统。用户需要进行两次解压缩步骤,并正确配置环境变量,以便在Linux环境中使用JDK进行Java开发。这个版本的JDK引入了...

    Linux 命令-系统管理

    这些命令在Linux系统管理中扮演着重要的角色,理解并熟练使用它们能帮助管理员更有效地管理用户账户和系统资源。同时,Linux系统管理还包括其他如文件管理、进程管理、网络配置、软件包管理等多个方面,学习和掌握...

    jdk-8u321-linux-x64.tar.gz

    首先,"jdk-8u321-linux-x64.tar.gz"是Oracle公司发布的针对64位Linux系统的JDK8更新版本321的压缩包。它采用了tar.gz格式,这是一种常见的Linux文件打包压缩方式,可以有效减小文件体积便于传输和存储。 安装步骤...

    Linux-Linux系统操作命令详解

    2. **系统管理命令**: - `kill` 发送特定信号给指定进程,如 `kill -l` 列出所有可用信号。 - `shutdown` 用于关机或重启,如 `shutdown -h now` 立刻关机。 - `uptime` 显示系统运行时间。 - `free` 查看内存...

    jdk-8u231-linux-x64.tar.zip

    总结来说,"jdk-8u231-linux-x64.tar.zip"是一个适用于64位Linux系统的JDK版本,需要通过tar和unzip命令进行解压安装,并进行系统路径配置,以确保Java环境的正常工作。这个压缩包内包含的"jdk-8u231-linux-x64.tar....

    Linux 学习手册--linux命令大全

    文档涵盖了多个基础且重要的命令,如`cd`、`chmod`和`locate`,旨在帮助用户更好地管理和操作Linux系统。 **1. `cd`命令** `cd`是Change Directory的缩写,用于切换当前工作目录。用户可以通过提供绝对路径或相对...

    jdk-8u301-linux-x64

    在标签中,"linux"表示这个话题与Linux操作系统有关,"java"代表讨论的是Java编程语言及其环境,而"rpm"则与RPM包管理器相关。这三者共同构成了在Linux环境下使用RPM安装Java JDK的场景。 在压缩包子文件的文件名称...

    JDK1.8安装包Linux可用(jdk-8u391-linux-aarch64.tar)

    这里的"jdk-8u391-linux-aarch64.tar"是一个针对64位(aarch64架构)Linux系统的归档文件,我们需要对其进行解压并安装。 安装步骤如下: 1. **下载**:首先,你需要将JDK1.8的安装包下载到你的Linux系统中。这...

Global site tag (gtag.js) - Google Analytics