Linux常用命令

如何进行用户和群组的创建和更改###

【1】groupadd:用于创建新的群组。

语法:groupadd [-option] 用户名;其常用参数有:-g

groupadd -g 555 team:创建一个GID为555的群组。

【2】groupdel:用于删除已存在的群组。注意:在删除群组前必须先将该群组内的用户删除。

语法:groupdel 群组名

【3】useradd:用于创建用户。

语法:useradd [-option] 用户名;其常用参数有:-u,-g,-G

-u:(UID)设定新增用户的UID,如果不指定,则系统会自动分配,Linux中,0~499是系统预留的编号,用户从500开始。

-g:(GID)指定新增用户的群组名,可以用GID或者群组名,如果不设定,系统则会自动创建一个与用户名同名的群组,并将该用户加入群组中。

-G:用来指定某用户属于其他多个群。**【一个用户可以属于多个群,如果不指定,系统则会自动创建一个群,与用户名同名,要指定群,需要用-g,若要让这个用户属于多个群,则需要用-G】**

-d:设置家目录,这个目录必须不存在,但是它的上级目录得存在。。如果不加-d,则系统默认加目录为/home/用户名

对于创建用户以及所属群组我们可以通过举例来说明:

范例(1):useradd user1:创建用户,用户名为user1,系统自动分配的UID为501,系统默认的群组为user1,系统默认的user1的家目录为/home/user1。

范例(2):useradd -G root user1:创建用户,用户名为user1,系统自动分配的UID为501,指定user1用户既属于root群,也属于user1群,系统默认的user1的家目录为/home/user1。

范例(3):useradd -u 555 -g root -d /user1 user1:创建用户,用户名为user1,指定UID为555,指定user1只属于root群,指定user1的家目录在根目录下的user1目录。

【4】userdel:用于删除用户。

语法:userdel [-option] 用户名,常用参数:-r

 -r:将该账号的家目录和邮件文件一并删除。如果不加-r,则仅删除账户,但是该用户的家目录和邮件文件依然博爱讯,出于减少垃圾文件的目的,我们在使用该命令时一般都使用参数-r。

【5】usermod:用于修改已有用户信息(UID或者GID)

语法:usermod [-option] 用户名;常用参数:-u,-g

 -u:设定用户的UID;

 -g:设定用户的GID。

【6】who:查看当前有哪些登录。

语法:who

用户密码和用户切换###

【1】passwd:用于设定用户的密码。

语法:passwd [username]

如果passwd后面不跟用户名,则表示修改当前用户密码;**注意:只要超级管理员root才能给别的用户指定密码,而普通用户只能修改自己的密码【这里所介绍的passwd命令是指在usr/bin/passwd的二进制可执行文件】

【2】gpasswd:加入某用户。

语法:gpasswd [option] group;常用参数:-a,-d.

例: gpasswd -a user1 root:将user1加入root群。

【3】su:用于切换用户身份。

语法:su - [username]
如果使用-;则表示完整切换到另一个用户的环境;不加-,则表示使用当前的环境。若要返回原来的命令,则用exit命令。

用户查询###

【1】id:用于显示用户的UID、GID以及所拥有的群组。

语法:id [username]

【2】groups:用于显示用户所属群组信息。

语法:groups [username]

【3】cat etc/passwd:用于显示所有的用户信息。

文件与目录权限###

【1】chown:change owner的意思;用于变更文件及目录的所有者和所属组。

语法:chown [-option] user:group;其常用参数有:-R。

-R:连同目录下所有文件及子目录一起变更。

例如:chown -R user3:user1 test1  将test1目录及其目录下的所有文件及子目录的属主全部改为user3 ,属群全部改为user1.

例如:chown usera abc  将abc文件的属主改为usera.

【2】chmod:change mode的意思;用于变更文件及目录的读写执行能力。

语法:chmod [-option] user:group;其常用参数有:-R。

-R:连同目录下所有文件及子目录一起变更。

读写执行权限(rwx)分为3个组;分别为:

第一组:所有者权限(属主权限);用u(user)来表示。

第二组:所在群用户权限(属群权限);用g(group)来表示。

第三组:其他用户权限;用o(other)来表示。

例如:r-x:表示只有可读可执行权限,没有可写权限。为了表示方便。Linux把这三个属性用二进制进行表示;1表示有,0表示没有,也就是说r-x用二进制表示为101(转换成八进制为5)。

所以对于修改权限我们可以有三种写法:

范例(1):**chmod 761 a.txt** :将当前目录下的a.txt文件的属主、属群、其他用户权限分别改为rwx、rw-、--x。

chmod -R 731 abc :将abc目录及其目录下的所有文件和子目录的属主、属群、其他用户权限分别改为rwx、rw-、--x。

范例(2):chmod u=rwx,g=rw-,o=rw- a.txt  :将当前目录下的a.txt文件的属主、属群、其他用户权限分别改为rwx、rw-、--x。

注意:各个参数之间要用,隔开;-可以省略不写。如果参数有相同的可以进行合并,比如go-rwx:它的意思就是将属群权限和其他用户权限都改为可读可写可执行。

范例(3):chomd u+x,g-x,x-rw a.txt :给当前目录下的a.txt文件的属主权限增加执行权限,属群用户减少执行权限,其他用户减少读写权限。

查看磁盘空间###

【1】df:显示磁盘的空间使用情况。

语法:df [-option],常用参数:-k;-m

-k:使用KBytes显示结果(默认下也是-K);

-m:使用MBytes显示结果。

【2】du:用于显示指定目录下所有文件以及子目录所占用的磁盘空间大小。

语法:du [-option] [目录名称];常用参数:-b,-k,-m,-s

-b:列出的值以bytes输出;

-k:列出的值以kb输出;

-m:列出的值以mb输出;

-s:只列出总值。

【3】fdisk:格式化。

语法:fdisk [-option] [设备名称]

查看内存空间###

free:语法:free [-option] ;常用参数:-b,-k,-m,-t

-b:列出的值以bytes输出;

-k:列出的值以kb输出;

-m:列出的值以mb输出;

-t:显示total(总计)。

设备挂载###

【1】mount:用于挂载存储设备。

语法:mount [-t 类型] 设备名称 挂载点

mount -t type dev dir

例子:mount -t /dev/sro ./DVD:把光盘挂载到D当前目录DVD下

【2】umount:用于卸载已挂载的设备。

语法:umount dev

打包压缩###

【1】tar:把多个文件打包成一个文件。

语法:tar [-option] 打包名 需要打包的文件;常用参数:-c,-v,-f

-c:建立一个包;

-v:打包过程中显示被打包的文件;

-f:需要打包的内容为文件。

-z:同时启用gzip工具进行压缩或解压。

例子:(1)tar -zcvf ab.tar.gz a.txt b.txt:将 a.txt 和b.txt打包压缩成ab.tar.gz文件。

     (2)tar -zxvf ab.tar.gz:解压ab.tar.gz文件。

【2】bzip2:压缩工具,压缩后缀为.bz2.

语法:bzip2 [-option] 文件名;常用参数:-z;-d

-z:压缩指定的文件为.bz2后缀的文件。

-d:解压被压缩的文件(.bz2为后缀的文件,同样可以支持解压后缀为.bz;.tbz 的文件)

例子:(1)bzip2 -z a.txt:压缩a.txt文件,将在当前目录下生成a.txt.bz2文件。

     (2)bzip2 -d a.txt.bz2或者bunzip2 a.txt.bz2:解压a.txt.bz2文件。

【3】gzip:压缩工具。压缩后缀为.gz

语法:gzip [-option] 文件名;常用参数:-d

-d:解压被压缩的文件(.gz为后缀的文件)。

例子:(1)gzip  a.txt:压缩a.txt文件,在当前目录下生成a.txt.gzip文件。
 
     (2)gzip -d a.txt或者 gunzip a.txt:解压a.txt文件。

【4】zip:压缩工具。压缩后缀为.zip。

语法:zip 压缩名 文件列表

例子:(1)zip ab.zip a.txt b.txt:将a.txt 和b.txt文件压缩到ab.zip文件中。

     (2)zip Test.zip Test/*:将Test文件下的所有文件全部压缩。

     (3)unzip ab.zip:解压ab.zip文件。