六、 用户的私有组与登录组
useradd在创建用户的同时也创建了一个同名组。 新用户默认属于自己的组。这个组称为用户私有组。 其他用户也可以成为这个私有组的成员并享受该组成员权利(仅root有权操作)。
/etc/passwd文件中的GID表示的是用户的默认组。 usermod –g命令可以改变用户的默认组,也称登录组: 例:usermod –g z3 l4 修改l4的默认组属于z3 此后用户创建的所有目录与文件的组属性属于新的默认组。
七、 删除用户或组
userdel 删除用户。
例userdel –r w5 删除w5(-r表示同时删除其主目录)
groupdel 删除组 例:groupdel g2
(注意:一些资料上说该命令不能删除非空组,但实验证实在redhat Linux中可以删除非空组,而且该命令没有确认机制,请慎用!)
八、 改变用户设置
usermod命令用于改变用户的账号设置,如UID、GID、注释、
主目录、shell。其参数分别是 -u、-g、-c、-d、-s。
chage命令用于修改口令的有效期。 具体用法请参考系统帮助。
九、 禁止用户账号
修改用户的shell为nologin或false可阻止其登录系统。 例:usermod –s /sbin/nologin 或 usermod –s false
十、 用户的身份转换
su命令可改变用户身份,不仅省却了注销和重新登录过程, 而且在使用root身份无法登录的Telnet网络登录的情况下更 为有用。( su是替代用户(Substitute user)的意思,但常被理 解为super user)。
例:su root 在依提示输入root口令后转为root身份 但这种转换并没有相应地改换系统运行环境,提示符类似: [root@localhost z3]#
用户已是root,但仍运行于z3的运行环境下。这会引起一些程序的运行结果不正常,与真实的root环境是大有区别的(比如就无法执行关机复位等操作)。要想同时获得新用户的环境,应在su与用户名间加-号并空格, 即:su - root
这时系统提示符显示:[root@localhost root]# 十一、 其它
① 执行“id 用户名”命令可列出用户的UID、GID和所有组 ② 与W2K不同,Linux的组不能吸纳其它组为成员。
第六章 Linux
一、 用户分类与文件访问权
? Linux将用户划分为四类;
文件权限
root ; 或所有UID=0的用户,具有至高权限; owner :文件的所有者,默认即文件的创建者; group ;所属组,除owner外同组其他成员有同等权限; world ;除上面三类外的其他普通用户。
自然,Linux的权限管理只针对owner、group、world。
? 访问权限有三种;读、写、执行,分别用r、w、x表示 ls –l 命令显示的结果中第1列的2-10分别表示三类用户对此文件(或目录)的三种访问权限,“-”表示无此权限,例:
-rwxr-x- - - 2 z3 g1 737 oct 7 18:42 a.sh
表示a.sh文件为z3所有,属于g1组,z3具有全部权限,g1组内其他成员具有读和执行权限,其他用户无任何权限。 ? 为便于记忆与交流,专业人员习惯以八进制描述权限,比如 上例文件的访问权限可表示为750。
二、 文件权限与目录权限
文件与目录的访问权限都分为读、写和执行,但作用不同: 文件 目录
读权限
写权限
执行权限 执行
读取文件内容修改该文件 件名
删除文件
列出其中的文在其中创建或进入目录
注意:
⑴在Linux中一个文件是否是可执行文件与其扩展名无关。 其可否执行取决于两个条件:用户是否具有执行权限;该文件是否是可执行文件。 普通的文本文件(非脚本文件)即便被赋予执行权限也无法执行。File命令可查看文件类型。 ⑵Redhat Linux 9.0上的实验表明:若要对目录中的文件名列表或在其中创建与删除文件都必须要对该目录拥有执行权限。这点与很多书籍上的说法存在出入。
三、 改变文件的所有者和所在组
① chown命令:改变文件的所有者
例:chown l4 a.txt 改a.txt文件的所有者为l4 chown l4 mydir 改mydir目录的所有者为l4
chown –R l4 mydir 将mydir目录全部归l4所有 说明:⑴ -R参数表示递归操作,即把mydir及其下的所有
目录与文件的所有者都改为l4。
⑵ 只有root用户有劝执行chown命令。
② chgrp命令:改变文件的所属组
例:chgrp g1 a.txt 改a.txt文件的所属组为g1 chgrp –R l4 mydir 递归改变mydir目录所属组
说明:普通用户也可以执行chgrp命令,但前提条件是该
用户必须同时具备两组的成员身份。
③同时改变所有者和所属组
四、 改变文件的访问权限
? chmod命令用于修改文件或目录的访问权限。命令格式: chmod 权限 文件或目录名
例:chmod 755 /home/l4 修改l4的主目录访问权限为755 (注:如果需要,当然也可以使用递归操作参数-R)
? 还可以使用字符串取代八进制的权限表示: u、g、o、a 分别表示owner、group、world、all r、w、x
分别表示read、write、exec
+、- 分别表示增加、去除权限 例:chmod a+r g+x u+xw /home/l4
使/home/l4对任何人可读、组用户可执行、拥有者可读可执行 又例:chmod +x install.sh
使当前目录下的install.sh文件对任何人可执行。这种用法常用在改变下载文件的权限属性以便其可执行。
注意:
⑴对硬连接的访问权限修改会同时影响到所有相关的硬连接chown newuser.newgroup filename_or_directory 即用点连接新所有者和新组,执行chown命令。 例:chown l4.g1 mydir