1. useradd
解释:添加新用户,在/etc/password文件中添加一行记录。
参数:
-g 用于添加账户时指定该账户的私有组,如果不指定-g参数,useradd命令会自动创建与该用户同名的组名作为该账户的私有组
-G 用于添加附属组
-D 用于显示或设置useradd命令所使用的默认值
-d 指定用户主目录,如果目录不存在,则同时使用-m来创建主目录
-m 使用者目录若不存在,则自动创建
-u 指定用户的用户号,如果同时有-o选项,则可重复使用其他用户的标示号。
示例:
[[email protected] ~]# useradd -m test -d /home/test -s /bin/shell
2. usermod
解释:可用来修改账号的各种属性,包括主目录,私有组,登录shell等
参数:
-d 修改用户登录的主目录
-e 修改账号的有效期限
-g 修改用户所属群组
-p 修改用户密码
-s 指定用户登录的shell。
示例:
[[email protected] northstar_bundle_2.1.0]# usermod -p 123456 test
3. userdel
解释:删除用户
参数:
-r 删除用户的同时,将/home下的该用户的目录和文件一并删除
示例:
[[email protected] home]# cd /home && ls
admin test
[[email protected] home]# userdel -r test
[[email protected] home]# ls
admin
4. passwd
解释:管理口令,为用户增加/修改密码
参数:
-l 锁定用户口令,即禁止使用该账户
-u 口令解锁
-d 关闭使用者的密码确认功能,使用者在登录时可以不用密码,只有具备root的用户才可以使用
-f 强迫用户下次登录时修改密码
-s 显示的指定使用者的密码认证种类,只有具备root用户的权限的用户才可以使用
示例:
[[email protected] home]# passwd test
Changing password for user test.
New password:
BAD PASSWORD: it is too simplistic/systematic
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.
5. groupadd
解释:可指定组名来建立新的用户组,需要时可以从系统中去的新用户组值
参数:
-g GID 除非使用-o,否则GID必须为唯一数值且不可为负数
-o GID 运行GID不唯一
-r 加入组GID号,且其GID号低于499系统账号
示例:
[[email protected] ~]# groupadd -g 666 test123
[[email protected] ~]# tail -l /etc/group
fuse:x:494:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
sshd:x:74:
tcpdump:x:72:
slocate:x:21:
wandl:x:500:
ricci:x:140:
test123:x:666:
6. groupmod
解释:可指定用户组名称来修改新的用户组号或者用户组名称
参数:
-g GID 用户组指定新的GID
-o GID 重复使用GID
-n 为群组改名
示例:
[[email protected] ~]# groupmod -g 555 test123
[[email protected] ~]# tail -l /etc/group
fuse:x:494:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
sshd:x:74:
tcpdump:x:72:
slocate:x:21:
wandl:x:500:
ricci:x:140:
test123:x:555:
7. groupdel
解释:删除已有用户组名称,如果该用户组中包含某些用户,则必须先删除这些用户
参数:
示例:
[[email protected] ~]# groupdel test123
[[email protected] ~]#
8. ls
解释:列出目录下的文件和子目录的相关信息
参数:
-a 显示指定目录下的所有的子目录与文件,包括隐藏文件
-c 按照文件的修改顺序排序
-l 以长格式来显示文件的详细信息每行列出信息依次是:文件类型与权限,链接数,文件属性,文件属组,文件大小,最近修改时间,名字
-L 若指定的名称为一个符号链接文件,则显示链接所指向的文件
-r 按字母逆序或者最早优先的顺序显示输出结果
-t 按修改时间排序
示例:
[[email protected] ~]# ls -alt
total 228
-rw-------. 1 root root 10784 Mar 10 01:07 .bash_history
dr-xr-xr-x. 27 root root 4096 Mar 9 23:01 ..
drwx------. 2 root root 4096 Jan 15 15:33 .gconfd
-rw------- 1 root root 1127 Jan 15 15:33 .xsession-errors
-rw-r--r-- 1 root root 623 Jan 15 15:32 .imsettings.log
9. cp
解释:将给出的文件或目录复制到另一个文件或目录
参数:
-a 通常在复制目录时使用,他保留链接,文件属性,并递归的复制目录
-d 复制时保留链接
-f 删除已经存在的目标文件而不提示
-i 覆盖目标文件时给出提示
-p 除复制原文件内容外,将修改时间和访问权限也复制到新的文件中
-r 若给出的源文件是目录文件,此时cp将递归的复制该目录下的所有 子目录和文件
-l 不进行复制操作,只是链接文件
示例:
[[email protected] ~]# cp -r Downloads/ /home/test123
10. mv
解释:可将文件或目录从一个位置移动到另一个位置,同时可移动多个文件,还可用于重命名
参数:
-i 交互式操作,如果操作将导致目标文件被覆盖,此时系统询问是否重写
-f 禁止交互式操作,在mv覆盖某个文件时,不给任何提示
示例:
[[email protected] Downloads]# mv -f 12.txt test.txt
11. rm
解释:提供删除文件功能,可以删除目录中一个或多个文件,或删除一个或多个目录
参数:
-f 忽略不存在的文件,不给出提示
-r 指示rm将参数中列出的全部目录和子目录均递归的删除
-i 进行交互式的删除
示例:
[[email protected] ~]# rm -rf Downloads/
12. mkdir
解释:创建目录
参数:
-m 对新建目录设置存取权限
-p 可以是一个路径的名称,若此时路径中某些目录不存在,加上此选项后,系统将自动创建好那些尚不存在的目录
-v 每次创建新目录都显示信息
示例:
[[email protected] ~]# mkdir -pv /root/test1/test2/test3
mkdir: created directory `/root/test1‘
mkdir: created directory `/root/test1/test2‘
mkdir: created directory `/root/test1/test2/test3‘
13. rmdir
解释:可以删除一个或多个目录,在删除目录时,目录必须为空。在删除某一目录时,必须拥有该目录的父目录的写和执行的权限
参数:
-p 递归删除。当子目录删除后,其父目录为空是,也将会一同被删除。
示例:
[[email protected] ~]# rmdir -p test1/test2/test3
14. cd
解释:切换目录
参数:
cd 返回登录目录
cd / 返回根目录
cd .. 向上移动一级目录
cd - 返回上次访问的目录
15. chmod
解释:用于更改文件或目录的访问权限
参数:
u 文件或目录的所有者
g 与文件属主相同的用户
o 其他用户
a 所有用户
+ 添加某个权限
- 取消某个权限
= 赋予给定权限并取消其他所有权限
r 可读
w 可写
x 可执行
示例:
[[email protected] ~]# ls -al test
-rw-r--r-- 1 root root 0 May 7 10:46 test
[[email protected] ~]# chmod u+x,g+x test
[[email protected] ~]# ls -al test
-rwxr-xr-- 1 root root 0 May 7 10:46 test
16. chown
解释:改变文件或目录的属主
参数:
-c 若该文件或目录属主确实已经更改, 才显示其更改动作
-h 改变符号链接文件的属主时不影响该链接所指向的目标文件
-f 若该文件或目录属主无法被更改,也不要显示错误信息
-v 显示属主变更的详细资料
-R 对目录下所有的文件以递归的方式逐个更改
示例:
[[email protected] ~]# chown -R test1:test testdir/test
[[email protected] ~]# ls -al testdir/
total 8
drwxr-xr-x 2 root root 4096 May 7 10:52 .
dr-xr-x---. 25 root root 4096 May 7 10:52 ..
-rwxr-xr-- 1 test1 test 0 May 7 10:46 test
17. find
解释:查找文件
参数:
name 根据文件名查找
perm 根据权限查找
prune 可以不在当前目录查找
user 根据文件属主查找
group 根据文件所属的用户组查找
mtime -n +n 根据文件的更改时间查找,-n表示文件更改时间距今在n天内,+n表示更改时间距今n前。
nogroup 查找无有效所属主的文件
nouser 查找无有效属主的文件
-newer file1 !file2 查找更改时间比文件file1新但比file2 旧的文件
示例:
寻找更改时间距今90天内的文件
[[email protected] testdir]# find . -mtime -90 -print
.
./test
18. date
解释:显示日期
参数:
%A 显示星期几
%H 小时,按24小时显示
%m 月份
%M 分钟
%Y 年份
示例:
[[email protected] testdir]# date +%Y-%m-%d
2016-05-07
19. halt
解释:halt命令用来关闭正在运行的Linux操作系统。halt命令会先检测系统的runlevel,若runlevel为0或6,则关闭系统,否则即调用shutdown来关闭系统。
参数:
-d:不要在wtmp中记录;
-f:不论目前的runlevel为何,不调用shutdown即强制关闭系统;
-i:在halt之前,关闭全部的网络界面;
-n:halt前,不用先执行sync;
-p:halt之后,执行poweroff;
-w:仅在wtmp中记录,而不实际结束系统。
示例:
[[email protected] testdir]# halt -p
20. reboot
解释:用来重新启动正在运行的Linux操作系统
参数:
-d:重新开机时不把数据写入记录文件/var/tmp/wtmp。本参数具有“-n”参数效果;
-f:强制重新开机,不调用shutdown指令的功能;
-i:在重开机之前,先关闭所有网络界面;
-n:重开机之前不检查是否有未结束的程序;
-w:仅做测试,并不真正将系统重新关机,只会把重关机的数据写入/var/log目录下的wtmp记录文件。
示例:
[[email protected] testdir]# reboot -w
21. shutdown
解释:
用来系统关机命令。shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。
参数:
-c:当执行“shutdown -h 11:50”指令时,只要按+键就可以中断关机的指令;
-f:重新启动时不执行fsck;
-F:重新启动时执行fsck;
-h:将系统关机;
-k:只是送出信息给所有用户,但不会实际关机;
-n:不调用init程序进行关机,而由shutdown自己进行;
-r:shutdown之后重新启动;
-t<秒数>:送出警告信息和删除信息之间要延迟多少秒。
示例:
[[email protected] testdir]# shutdown -h now
22. route
解释:用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由
参数:
Add:增加指定的路由记录;
Del:删除指定的路由记录;
Target:目的网络或目的主机;
gw:设置默认网关;
mss:设置TCP的最大区块长度(MSS),单位MB;
window:指定通过路由表的TCP连接的TCP窗口大小;
dev:路由记录所表示的网络接口。
示例:
[[email protected] testdir]# route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
23. ifdown
解释:禁用指定的网络接口
示例:
[[email protected] testdir]# ifdown eth0
24. ifup
解释:启用指定的网络接口
示例:
[[email protected] testdir]# ifup eth0
Determining if ip address 10.0.0.1 is already in use for device eth0...
25. ifconfig
解释:用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在
参数:
add<地址>:设置网络设备IPv6的ip地址;
del<地址>:删除网络设备IPv6的IP地址;
down:关闭指定的网络设备;
mtu<字节>:设置网络设备的MTU;
netmask<子网掩码>:设置网络设备的子网掩码;
up:启动指定的网络设备;
broadcast<地址>:将要送往指定地址的数据包当成广播数据包来处理;
示例:
[[email protected] testdir]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0
26. hostname
解释:显示和设置系统的主机名称
参数:
-v:详细信息模式;
-a:显示主机别名;
-d:显示DNS域名;
-f:显示FQDN名称;
-i:显示主机的ip地址;
-s:显示短主机名称,在第一个点处截断;
-y:显示NIS域名
示例:
[[email protected] testdir]# hostname -i
10.208.131.87
27. domainname
解释:用于显示和设置系统的NIS域名。
参数:
-v:详细信息模式;
-F:指定读取域名信息的文件。
示例:
[[email protected] testdir]# domainname -v
getdomainname()=`(none)‘
(none)
28.last
解释:用于显示用户最近登录信息。单独执行last命令,它会读取/var/log/wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来
参数:
-a:把从何处登入系统的主机名称或ip地址,显示在最后一行;
-d:将IP地址转换成主机名称;
-f <记录文件>:指定记录文件。
-n <显示列数>或-<显示列数>:设置列出名单的显示列数;
-R:不显示登入系统的主机名称或IP地址;
-x:显示系统关机,重新开机,以及执行等级的改变等信息。
示例:
[[email protected] ~]# last -x
root pts/1 10.208.3.135 Sat May 7 12:28 still logged in
root pts/0 10.208.3.135 Sat May 7 10:06 still logged in
root pts/0 10.208.3.135 Fri May 6 16:22 - 19:02 (02:39)
root pts/0 172.29.34.109 Wed Mar 9 23:02 - 01:07 (02:05)
29. logsave
解释: 运行给定的命令,并将命令的输出信息保存到指定的日志文件中.
参数:
-a 追加信息到指定的日志文件中
示例:
[[email protected] ~]# logsave testdir/test ls
30. lastb
解释:用于显示用户错误的登录列表,此指令可以发现系统的登录异常。单独执行lastb命令,它会读取位于/var/log目录下,名称为btmp的文件,并把该文件内容记录的登入失败的用户名单,全部显示出来
参数:
用户名:显示中的用户的登录列表;
终端:显示从指定终端的登录列表。
示例:
[[email protected] ~]# lastb
btmp begins Sun May 1 03:31:01 2016
31.ipcrm
解释:
用来删除一个或更多的消息队列、信号量集或者共享内存标识。
参数:
-m SharedMemory id 删除共享内存标识 SharedMemoryID。与 SharedMemoryID 有关联的共享内存段以及数据结构都会在最后一次拆离操作后删除。
-M SharedMemoryKey 删除用关键字 SharedMemoryKey 创建的共享内存标识。与其相关的共享内存段和数据结构段都将在最后一次拆离操作后删除。
-q MessageID 删除消息队列标识 MessageID 和与其相关的消息队列和数据结构。
-Q MessageKey 删除由关键字 MessageKey 创建的消息队列标识和与其相关的消息队列和数据结构。
-s SemaphoreID 删除信号量标识 SemaphoreID 和与其相关的信号量集及数据结构。
-S SemaphoreKey 删除由关键字 SemaphoreKey 创建的信号标识和与其相关的信号量集和数据结构。
示例:
[[email protected] ~]# ipcs
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 0 root 644 80 2
0x00000000 32769 root 644 16384 2
0x00000000 65538 root 644 280 2
0x00000000 98307 gdm 600 393216 2 dest
0x00000000 131076 gdm 600 393216 2 dest
0x00000000 163845 gdm 600 393216 2 dest
------ Semaphore Arrays --------
key semid owner perms nsems
0x00000000 0 root 600 1
0x00000000 32769 root 600 1
0x000000a7 65538 root 600 1
------ Message Queues --------
key msqid owner perms used-bytes messages
[[email protected] ~]# ipcrm -m 32769
32. w
解释:用于显示已经登陆系统的用户列表,并显示用户正在执行的指令。执行这个命令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行w命令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。
参数:
-h:不打印头信息;
-u:当显示当前进程和cpu时间时忽略用户名;
-s:使用短输出格式;
-f:显示用户从哪登录;
-V:显示版本信息。
示例:
[[email protected] ~]# w
13:26:53 up 58 days, 14:25, 3 users, load average: 0.00, 0.00, 0.00
USER TTY FROM [email protected] IDLE JCPU PCPU WHAT
root pts/0 10.208.3.135 10:06 1:43m 0.08s 0.08s -bash
root pts/1 10.208.3.135 12:28 42:29 0.03s 0.03s -bash
root pts/2 10.208.3.135 13:26 1.00s 0.00s 0.00s w
33. watch
解释:以周期性的方式执行给定的指令,指令输出以全屏方式显示
-n:指定指令执行的间隔时间(秒);
-d:高亮显示指令输出信息不同之处;
-t:不显示标题。
示例:
[[email protected] ~]# watch -t uptime
34. pidof
解释:用于查找指定名称的进程的进程号id号
参数:
-s:仅返回一个进程号;
-c:仅显示具有相同“root”目录的进程;
-x:显示由脚本开启的进程;
-o:指定不显示的进程ID。
示例:
[[email protected] ~]# pidof crond
1974
35. pgrep
解释:以名称为依据从运行进程队列中查找进程,并显示查找到的进程id。每一个进程ID以一个十进制数表示,通过一个分割字符串和下一个ID分开,默认的分割字符串是一个新行。
参数:
-o:仅显示找到的最小(起始)进程号;
-n:仅显示找到的最大(结束)进程号;
-l:显示进程名称;
-P:指定父进程号;
-g:指定进程组;
-t:指定开启进程的终端;
-u:指定进程的有效用户ID。
示例:
[[email protected] ~]# pgrep -lo crond
1974 crond
36. nohup
解释:可以将程序以忽略挂起信号的方式运行起来,被运行的程序的输出信息将不会显示到终端
参数:
示例:
[[email protected] ~]# nohup ls -al > myout 2>&1
37. ipcs
解释:用于报告Linux中进程间通信设施的状态,显示的信息包括消息列表、共享内存和信号量的信息
参数:
-a:显示全部可显示的信息;
-q:显示活动的消息队列信息;
-m:显示活动的共享内存信息;
-s:显示活动的信号量信息。
示例:
[[email protected] ~]# ipcs -a
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 0 root 644 80 2
0x00000000 32769 root 644 16384 2
0x00000000 65538 root 644 280 2
0x00000000 98307 gdm 600 393216 2 dest
0x00000000 131076 gdm 600 393216 2 dest
0x00000000 163845 gdm 600 393216 2 dest
------ Semaphore Arrays --------
key semid owner perms nsems
0x00000000 0 root 600 1
0x00000000 32769 root 600 1
0x000000a7 65538 root 600 1
------ Message Queues --------
key msqid owner perms used-bytes messages
38. service
解释:Redhat Linux兼容的发行版中用来控制系统服务的实用工具,它以启动、停止、重新启动和关闭系统服务,还可以显示所有系统服务的当前状态
参数:
示例:
[[email protected] ~]# service network status
Configured devices:
lo eth0 eth1
Currently active devices:
lo eth0 eth1
[[email protected] ~]# service network restart
Shutting down interface eth0: [ OK ]
Shutting down interface eth1: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: Determining if ip address 10.0.0.1 is already in use for device eth0...
[ OK ]
Bringing up interface eth1: Determining if ip address 10.208.131.87 is already in use for device eth1...
[ OK ]
39. pstree
解释:以树状图的方式展现进程之间的派生关系,显示效果比较直观。
参数:
-a:显示每个程序的完整指令,包含路径,参数或是常驻服务的标示;
-c:不使用精简标示法;
-G:使用VT100终端机的列绘图字符;
-h:列出树状图时,特别标明现在执行的程序;
-H<程序识别码>:此参数的效果和指定"-h"参数类似,但特别标明指定的程序;
-l:采用长列格式显示树状图;
-n:用程序识别码排序。预设是以程序名称来排序;
-p:显示程序识别码;
-u:显示用户名称;
-U:使用UTF-8列绘图字符;
-V:显示版本信息。
示例:
[[email protected] ~]# pstree -u
40. ps
解释:用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的
参数:
-a:显示所有终端机下执行的程序,除了阶段作业领导者之外。
a:显示现行终端机下的所有程序,包括其他用户的程序。
-A:显示所有程序。
-c:显示CLS和PRI栏位。
c:列出程序时,显示每个程序真正的指令名称,而不包含路径,选项或常驻服务的标示。
-C<指令名称>:指定执行指令的名称,并列出该指令的程序的状况。
-d:显示所有程序,但不包括阶段作业领导者的程序。
-e:此选项的效果和指定"A"选项相同。
e:列出程序时,显示每个程序所使用的环境变量。
-f:显示UID,PPIP,C与STIME栏位。
f:用ASCII字符显示树状结构,表达程序间的相互关系。
-g<群组名称>:此选项的效果和指定"-G"选项相同,当亦能使用阶段作业领导者的名称来指定。
g:显示现行终端机下的所有程序,包括群组领导者的程序。 -
G<群组识别码>:列出属于该群组的程序的状况,也可使用群组名称来指定。
h:不显示标题列。
-H:显示树状结构,表示程序间的相互关系。
-j或j:采用工作控制的格式显示程序状况。
-l或l:采用详细的格式来显示程序状况。
L:列出栏位的相关信息。
-m或m:显示所有的执行绪。
n:以数字来表示USER和WCHAN栏位。
-N:显示所有的程序,除了执行ps指令终端机下的程序之外。
-p<程序识别码>:指定程序识别码,并列出该程序的状况。
p<程序识别码>:此选项的效果和指定"-p"选项相同,只在列表格式方面稍有差异。
r:只列出现行终端机正在执行中的程序。
-s<阶段作业>:指定阶段作业的程序识别码,并列出隶属该阶段作业的程序的状况。
s:采用程序信号的格式显示程序状况。
S:列出程序时,包括已中断的子程序资料。
-t<终端机编号>:指定终端机编号,并列出属于该终端机的程序的状况。
t<终端机编号>:此选项的效果和指定"-t"选项相同,只在列表格式方面稍有差异。
-T:显示现行终端机下的所有程序。
-u<用户识别码>:此选项的效果和指定"-U"选项相同。
u:以用户为主的格式来显示程序状况。
-U<用户识别码>:列出属于该用户的程序的状况,也可使用用户名称来指定。
U<用户名称>:列出属于该用户的程序的状况。
v:采用虚拟内存的格式显示程序状况。
-V或V:显示版本信息。
-w或w:采用宽阔的格式来显示程序状况。
x:显示所有程序,不以终端机来区分。
X:采用旧式的Linux i386登陆格式显示程序状况。
-y:配合选项"-l"使用时,不显示F(flag)栏位,并以RSS栏位取代ADDR栏位 。
示例:
[[email protected] ~]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Mar09 ? 00:00:01 /sbin/init
root 2 0 0 Mar09 ? 00:00:00 [kthreadd]
root 3 2 0 Mar09 ? 00:00:00 [migration/0]
root 4 2 0 Mar09 ? 00:00:00 [ksoftirqd/0]
root 5 2 0 Mar09 ? 00:00:00 [migration/0]
root 6 2 0 Mar09 ? 00:00:03 [watchdog/0]
41. crontab
解释:用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务
参数:
-e:编辑该用户的计时器设置;
-l:列出该用户的计时器设置;
-r:删除该用户的计时器设置;
-u<用户名称>:指定要设定计时器的用户名称。
示例:
[[email protected] ~]# crontab -l
no crontab for root
42. chage
解释:修改帐号和密码的有效期限
参数:
-m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M:密码保持有效的最大天数。
-w:用户密码到期前,提前收到警告信息的天数。
-E:帐号到期的日期。过了这天,此帐号将不可用。
-d:上一次更改的日期。
-i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
示例:
[[email protected] ~]# chage -M 60 root
[[email protected] ~]# chage -l root
Last password change : Dec 25, 2015
Password expires : Feb 23, 2016
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 60
Number of days of warning before password expires : 7
43. id
解释:显示真实有效的用户ID(UID)和组ID(GID)。UID 是对一个用户的单一身份标识。组ID(GID)则对应多个UID。id命令已经默认预装在大多数Linux系统中。要使用它,只需要在你的控制台输入id。不带选项输入id会显示如下。结果会使用活跃用户
参数:
-g或--group 显示用户所属群组的ID。
-G或--groups 显示用户所属附加群组的ID。
-n或--name 显示用户,所属群组或附加群组的名称。
-r或--real 显示实际ID。
-u或--user 显示用户ID。
-help 显示帮助。
-version 显示版本信息。
示例:
[[email protected] ~]# id -a
uid=0(root) gid=0(root) groups=0(root)
44. nologin
解释:可以实现礼貌地拒绝用户登录系统,同时给出信息。如果尝试以这类用户登录,就在log里添加记录,然后在终端输出This account is currently not available信息,就是这样。一般设置这样的帐号是给启动服务的账号所用的,这只是让服务启动起来,但是不能登录系统。
参数:
示例:
passwd -l lynn
#锁定lynn用户,使其不能登录。
45. ping
解释:用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常
参数:
-d:使用Socket的SO_DEBUG功能;
-c<完成次数>:设置完成要求回应的次数;
-f:极限检测;
-i<间隔秒数>:指定收发信息的间隔时间;
-I<网络界面>:使用指定的网络界面送出数据包;
-l<前置载入>:设置在送出要求信息之前,先行发出的数据包;
-n:只输出数值;
-p<范本样式>:设置填满数据包的范本样式;
-q:不显示指令执行过程,开头和结尾的相关信息除外;
-r:忽略普通的Routing Table,直接将数据包送到远端主机上;
-R:记录路由过程; -s<数据包大小>:设置数据包的大小;
-t<存活数值>:设置存活数值TTL的大小;
-v:详细显示指令的执行过程。
[[email protected] ~]# ping 10.0.0.2 -i 2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=2.25 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=64 time=0.692 ms
64 bytes from 10.0.0.2: icmp_seq=3 ttl=64 time=0.664 ms
46. netstat
解释:用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况
参数:
-a或--all:显示所有连线中的Socket;
-A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;
-c或--continuous:持续列出网络状态;
-C或--cache:显示路由器配置的快取信息;
-e或--extend:显示网络其他相关信息;
-F或--fib:显示FIB;
-g或--groups:显示多重广播功能群组组员名单;
-h或--help:在线帮助;
-i或--interfaces:显示网络界面信息表单;
-l或--listening:显示监控中的服务器的Socket;
-M或--masquerade:显示伪装的网络连线;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;
-o或--timers:显示计时器;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-r或--route:显示Routing Table;
-s或--statistice:显示网络工作信息统计表;
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-v或--verbose:显示指令执行过程;
-V或--version:显示版本信息;
-w或--raw:显示RAW传输协议的连线状况;
示例:
[[email protected] ~]# netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 localhost:smtp *:* LISTEN
tcp 0 0 *:60007 *:* LISTEN
tcp 0 96 Node1:ssh 10.208.3.135:61008 ESTABLISHED
tcp 0 0 Node1:ssh 10.208.3.135:59606 ESTABLISHED
tcp 0 0 10.0.0.1:44693 10.0.0.3:iscsi-target ESTABLISHED
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:16851 *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 localhost:smtp *:* LISTEN
tcp 0 0 *:38531 *:* LISTEN
47. traceroute
解释:用于追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。
参数:
-d:使用Socket层级的排错功能;
-f<存活数值>:设置第一个检测数据包的存活数值TTL的大小;
-F:设置勿离断位;
-g<网关>:设置来源路由网关,最多可设置8个;
-i<网络界面>:使用指定的网络界面送出数据包;
-I:使用ICMP回应取代UDP资料信息;
-m<存活数值>:设置检测数据包的最大存活数值TTL的大小;
-n:直接使用IP地址而非主机名称;
-p<通信端口>:设置UDP传输协议的通信端口;
-r:忽略普通的Routing Table,直接将数据包送到远端主机上。
-s<来源地址>:设置本地主机送出数据包的IP地址;
-t<服务类型>:设置检测数据包的TOS数值;
-v:详细显示指令的执行过程;
-w<超时秒数>:设置等待远端主机回报的时间;
-x:开启或关闭数据包的正确性检验。
示例:
[[email protected] ~]# traceroute 172.25.152.2
traceroute to 172.25.152.2 (172.25.152.2), 30 hops max, 60 byte packets
1 10.208.128.1 (10.208.128.1) 0.225 ms 0.292 ms 0.345 ms
2 10.208.255.57 (10.208.255.57) 1.281 ms 1.399 ms 1.455 ms
3 10.208.255.99 (10.208.255.99) 1.584 ms 1.584 ms 1.632 ms
4 172.29.125.10 (172.29.125.10) 255.716 ms 255.753 ms 255.795 ms
48. mount
解释:加载文件系统到指定的加载点。此命令的最常用于挂载cdrom
参数:
-V:显示程序版本;
-l:显示已加载的文件系统列表;
-h:显示帮助信息并退出;
-v:冗长模式,输出指令执行的详细信息;
-n:加载没有写入文件“/etc/mtab”中的文件系统;
-r:将文件系统加载为只读模式;
-a:加载文件“/etc/fstab”中描述的所有文件系统。
示例:
mount -t auto /dev/cdrom /mnt/cdrom
49. mke2fs
解释:用于创建磁盘分区上的“etc2/etc3”文件系统
参数:
-b<区块大小>:指定区块大小,单位为字节;
-c;检查是否有损坏的区块;
-f<不连续区段大小>:指定不连续区段的大小,单位为字节;
-F:不管指定的设备为何,强制执行mke2fs;
-i<字节>:指定"字节/inode"的比例;
-N:指定要建立的inode数目;
-l<文件>:从指定的文件中,读取文件西中损坏区块的信息;
-L<标签>:设置文件系统的标签名称;
-m<百分比值>:指定给管理员保留区块的比例,预设为5%;
-M:记录最后一次挂入的目录;
-q:执行时不显示任何信息;
-r:指定要建立的ext2文件系统版本;
-R=<区块数>:设置磁盘阵列参数;
-S:仅写入superblock与group descriptors,而不更改inode able inode bitmap以及block bitmap;
-v:执行时显示详细信息;
-V:显示版本信息。
示例:
mke2fs -q /dev/hda1
50. repqouta
解释:以报表的格式输出指定分区,或者文件系统的磁盘配额信息。
参数:
-a:列出在/etc/fstab文件里,有加入quota设置的分区的使用状况,包括用户和群组;
-g:列出所有群组的磁盘空间限制;
-u:列出所有用户的磁盘空间限制;
-v:显示该用户或群组的所有空间限制
示例:
[[email protected] ~]# repquota -a