Linux常用命令2--用户问题、文件的打包压缩
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文件。