您的位置:首页 > 运维架构 > Linux

【Linux】重要命令总结

2017-11-04 15:03 169 查看
下文我们主要要介绍如下命令:

du、df、top、free、pstack、su、sudo(sudo -, sudo -s)、useradd、password 。

(1)du

在Linux下du命令是查看使用空间的命令,和df功能类似,但是不同的是du命令是对文件和目录磁盘使用的空间进行查看。

格式

du [选项] [文件]

功能

查看每个文件和目录的磁盘使用空间。

选项

选项含义
zebra stripesare neat
-a或-all显示目录中个别文件的大小。
-b或-bytes显示目录或文件大小时,以byte为单位。
-c或–total除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或–dereference - args显示指定符号链接的源文件大小。
–exclude = <目录或文件>略过指定的目录或文件。
-h或–human - readable以K,M,G为单位,提高信息的可读性。
-H或–si 与 - h参数相同,但是K,M,G是以1000为换算单位。
-l或–count - links重复计算硬件链接的文件。
-k或–kilobytes以KB(1024bytes)为单位输出。
-L<符号链接>或–dereference<符号链接>显示选项中所指定符号链接的源文件大小。
-m或–megabytes以MB为单位输出。
-s或–summarize仅显示总计,只列出最后加总的值。
-S或–separate - dirs显示个别目录的大小时,并不含其子目录的大小。
-x或–one - file - xystem以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件>或–exclude - from = <文件>在<文件>指定目录或文件。

运行截图



注意:

最左边的列显示的是每一个目录的大小,最后的196是当前目录的大小。

(2)df

df命令是用来查看Linux服务器的文件系统的磁盘占用情况(du是查看目录)可以用此命令来获取硬盘被占用了多少空间,目前还剩下多少空间。

格式

df [选项] [文件]

功能

显示目前在Linux系统上的文件系统的磁盘使用情况统计。默认情况下将以1KB为单位进行显示。

选项

选项含义
-a全部文件系统列表
-h方便阅读方式显示
-H等于“ - h”,但是计算式,1K = 1000,而不是1K = 1024
-i显示inode信息
-k区块为1024字节
-l只显示本地文件系统
-m区块为1048576字节
–no - sync忽略 sync 命令
-P输出格式为POSIX
–sync在取得磁盘信息前,先执行sync命令
-T文件系统类型
–block - size = <区块大小>指定区块大小
-t<文件系统类型>只显示选定文件系统的磁盘信息
-x<文件系统类型>不显示选定文件系统的磁盘信息
–help 显示帮助信息
–version 显示版本信息

运行截图



注意

第一列是指定文件系统的名称,第二列给出分区包含的数据块(1024字节)的数目;第三、四列分别表示已用的和可用的数据块数目(第三列第四列块数之和不等于第二列的数值)。

(3)top

top命令是Linux系常用的性能分析工具,能够显示系统中各个进程资源占用的情况(类似于windows中任务管理器),这是必须要掌握的命令

格式

top [参数]

功能

显示系统中各个进程资源占用的情况等信息。

选项

选项含义
-b批处理
-c显示完整的治命令
-I忽略失效过程
-s保密模式
-S累积模式
-i<时间>设置间隔时间
-u<用户名>指定用户名
-p<进程号>指定进程
-n<次数>循环显示的次数

运行截图



注意

我们观察到其中的数据有的会变,因为是实时显示的内容,所以当然会变。

内容分析

第一行:

23:14:36 up 1 day, 10:44, 2 users, load average: 0.00, 0.00, 0.00

23:14:36 :系统当前时间

1 day, 10:44:系统开机到现在经过了多少时间

load average: 0.00, 0.00, 0.00:系统1分钟、5分钟、15分钟4. 的CPU负载信息

第二行:

Tasks: 139 total, 1 running, 138 sleeping, 0 stopped, 0 zombie

Tasks:任务;

139 total:很好理解,就是当前有139个任务,也就是139个进程。

1 running:1个进程正在运行

138 sleeping:138个进程睡眠

0 stopped:停止的进程数

0 zombie:僵死的进程数

第三行:

Cpu(s): 1.0%us, 0.3%sy, 0.0%ni, 98.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Cpu(s):表示这一行显示CPU总体信息

1.0%us:用户态进程占用CPU时间百分比,不包含renice值为负的任务占用的CPU的时间。

0.3%sy:内核占用CPU时间百分比

0.0%ni:改变过优先级的进程占用CPU的百分比

98.7%id:空闲CPU时间百分比

0.0%wa:等待I/O的CPU时间百分比

0.0%hi:CPU硬中断时间百分比

0.0%si:CPU软中断时间百分比

注:这里显示数据是所有cpu的平均值,如果想看每一个cpu的处理情况,按1即可;折叠,再次按1;

第四行:

Mem: 1030528k total, 833804k used, 196724k free, 120792k buffers

Men:内存的意思

1030528k total:物理内存总量

833804k used:使用的物理内存量

196724k free:空闲的物理内存量

120792k buffers:用作内核缓存的物理内存量

第五行:

Swap: 2064376k total, 0k used, 2064376k free, 519520k cached

Swap:交换空间

2064376k total:交换区总量

0k used:使用的交换区量

2064376k free:空闲的交换区量

519520k cached:缓冲交换区总量

进程信息:

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

PID:进程的ID

USER:进程所有者

PR:进程的优先级别,越小越优先被执行

NInice:值

VIRT:进程占用的虚拟内存

RES:进程占用的物理内存

SHR:进程使用的共享内存

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

%CPU:进程占用CPU的使用率

%MEM:进程使用的物理内存和总内存的百分比

TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。

COMMAND:进程启动命令名称

常用top操作命令

q:退出top命令

:立即刷新

s:设置刷新时间间隔

c:显示命令完全模式

t::显示或隐藏进程和CPU状态信息

m:显示或隐藏内存状态信息

l:显示或隐藏uptime信息

f:增加或减少进程显示标志

S:累计模式,会把已完成或退出的子进程占用的CPU时间累计到父进程的MITE+

P:按%CPU使用率排行

T:按MITE+排行

M:按%MEM排行

u:指定显示用户进程

r:修改进程renice值

kkill:进程

i:只显示正在运行的进程

W:保存对top的设置到文件~/.toprc,下次启动将自动调用toprc文件的设置。

h:帮助命令。

q:退出

(4)free

格式

free [选项]

功能

free命令显示系统使用和空闲的内存情况

选项

选项含义
-b以Byte为单位显示内存使用情况。
-k以KB为单位显示内存使用情况。
-m以MB为单位显示内存使用情况。
-g以GB为单位显示内存使用情况。
-o不显示缓冲区调节列。
-s<间隔秒数>持续观察内存使用状况。
-t显示内存总和列。
-V显示版本信息。

运行截图



说明

total:总计物理内存的大小。

used:已使用多大。

free:可用有多少。

Shared:多个进程共享的内存总额。

Buffers/cached:磁盘缓存的大小。

第三行(-/+ buffers/cached):

used:已使用多大。

free:可用有多少。

第四行是交换分区SWAP的,也就是我们通常所说的虚拟内存。

从应用程序的角度来说:

可用内存=系统free memory+buffers+cached。

如本机情况的可用内存为:

836892=196188KB + 121112KB + 519592KB

(5)pstack

格式

pstack pid

功能

-pstack命令可显示每个进程的栈跟踪。pstack 命令必须由相应进程的属主或 root 运行。可以使用 pstack 来确定进程挂起的位置。此命令允许使用的唯一选项是要检查的进程的 PID。

选项

此命令只有一个参数就是pid

应用

(1)使用pstack确定进程挂起的位置。

(2)比如,同一程序的两个不同版本在运行时CPU的使用情况有明显的不同,则可分别收集它们的统计信息,再作比较(如从#0入手),从中找出两者函数调用情况的不同之处等。

(6)su

格式

su

功能

su是切换用户权限的命名,当我们从普通用户切换至超级用户时使用该命令

运行截图



如上图,我们发现当输入su时,会出现”Password:“

这时表示需要我们输入密码,密码是不显示出来的,所以当我们输入回车按键,就可看到用户由admin切换至root用户。

当我们需要退出超级用户时,采用ctrl+d命令推出超级用户。



(7)sudo(sudo -, sudo -s)

格式

sudo [选项] [参数]

功能

sudo命令用来以其他身份来执行命令,预设的身份为root,用户使用sudo时,必须要先输入密码,然后有五分钟有效期,超过期限必须重新输入密码

选项

选项含义
-b在后台执行指令
-h显示帮助
-H将HOME环境变量设为新身份的HOME环境变量
-k结束密码的有效期限,也就是下次再执行sudo时便需要输入密码
-l列出目前用户可执行与无法执行的指令
-p改变询问密码的提示符号
-s执行指定的shell
-u<用户>以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份
-v延长密码有效期限5分钟
-V显示版本信息
关于sudo命令更多的请看http://man.linuxde.net/sudo

(8)useradd

格式

useradd [选项] [参数]

功能

用于在Linux中创建新的系统用户,useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。

选项

选项含义
-c<备注>加上备注文字。备注文字会保存在passwd的备注栏位中
-d<登入目录>指定用户登入时的启始目录
-D变更预设值
-e<有效期限>指定帐号的有效期限
-f<缓冲天数>指定在密码过期后多少天即关闭该帐号
-g<群组>指定用户所属的群组
-G<群组>指定用户所属的附加群组
-m自动建立用户的登入目录
-M不要自动建立用户的登入目录
-n取消建立以用户名称为名的群组
-r建立系统帐号
-s指定用户登入后所使用的shell
-u指定用户id

注意:

后面的参数是要创建的用户名

(9)password

格式

password [选项] [参数]

功能

用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。

选项

选项含义
-d删除密码,仅有系统管理者才能使用
-f强制执行
-k设置只有在密码过期失效后,方能更新
-l锁住密码
-s列出密码的相关信息,仅有系统管理者才能使用
-u解开已上锁的帐号
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: