文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>我的LINUX复习笔记(二)

我的LINUX复习笔记(二)

时间:2006-09-08  来源:白天的影子

最近这段时间穷忙了一阵,都是给些所谓的朋友帮忙,结果是人家开心了,我有苦难咽,不管怎么样,暂时是有空了,继续总结前面快忘记了的LINUX复习笔记。 对了这些天又明白两个道理: 1.朋友的忙在没有仔细考虑到各种情况之前,绝对不要帮,否则,第一是自己倒霉,第二是朋友都做不成,可能反目成仇哦。 2.女人,毒蛇和狗,男人是绝对不能去可怜的。   下面转入正文。。。。。。。。。。。。。。。。。。。。。。。。。   今天主要是LINUX的用户管理和文件权限的内容   OK。。。GO   一。LINUX用户管理 useradd jenny 增加用户帐号jenny passwd jenny 为用户jenny设置口令   useradd命令将做下面几件事情:1.在/etc/passwd文件中增添一个入口;2,在/home目录下创建新用户的主目录,并将/etc/skel目录中的文件COPY到该目录中去。 passwd命令后面如果不带任何参数,将给root设置口令。   useradd命令的其他选项: -u 手工设置用户的UID; -g 手工设置用户的GID -d 设置用户的主目录; -G 使用户成为其他组的成员 例如:useradd jenny -u 600 -g users -d /home/david -G user     groupadd devteam 建立新组devteam groupadd的其他选项: -g 指定用户组的GID,比如:groupadd -g 600 devteam -r 创建系统级组,如:groupadd -r -g 300 devteam   一般来说,系统添加的用户的UID都小于500,用户自己添加的UID都大于500,而UID0十分特别,任何以UID 0运行的程序或UID为0的用户都是有特权的。和UID一样,系统也是通过组的GID来标识一个组的,组的GID如果在0和499之间,表示该组是root、mail、bin这样的系统级帐号。在添加用户的时候,不允许用户名重复,但是用户的UID可以是重复的,同样,系统也不允许有两个组具有相同的名字。系统是通过用户的UID和组的GID来标识一个组的,UID和GID比用户名和组名更重要。   用户私有组:在使用useradd命令创建新帐号的时候,系统还为用户创建了一个与用户名同名的组,被称为用户私有组,这个组是用户的登录组。创建这个组的目的在于让新用户和其他用户隔离,保护了新用户的文件。 登录组:当创建一个新用户的时候,系统默认的把用户的私有组和登录组都设为了同一个。但是当把用户加入到其他组中以后,该用户就具有了多个组成员的身份。当一个文件或目录被创建的时候,该文件或目录的组属性取决于登录组。比如david把devteam作为登录组,那么此时david创建的所有文件和目录的组权限都是devteam。这意味着devteam组的其他成员(如jenny)就能够按照所赋予的权限访问该文件。用户david创建的文件和目录对于登录组的其他用户就是公开的了。而如果david以私有组为登录组的话,则那些文件的目录都属于david组。david组是私有组,里面只有一个成员david就是文件或目录的创建者,在明确使用命令改变权限之前,是没有人能够访问到david创建的文件和目录的。   使用用户私有组的好处在于,用户不必考虑其他的用户是否有访问用户文件的权利,当用户使用私有组时,一个用户不可以读写属于其他用户的文件。用户同样也不能把文件存储在除了自己的主目录中的其他目录中。但是这些默认权限可以被系统管理员或者在相同文件、目录级的用户所改变。 使用用户私有组并不改变用户所在其他组的基本属性。所以一个属于不同组的用户可以自由读写属于这些组的文件。     usermod -u 修改用户的UID,如:usermod -u 601 david 此时用户主目录的文件和子目录中该用户所拥有的文件将自动修改UID。但是在主目录以外该用户的文件不能自动更新,必须要用户使用chown命令来修改。   usermod -g 修改用户默认组GID 如:usermod -g devteam david 将david的默认组从david改变为devteam 也可能用GID来代替命令中的组名,如usermod -g 601 david   usermod -d 修改主目录的设置 usermod -d -m 将原来主目录中的内容COPY到新目录中 如:usermod -d /home/davidhome david将david的主目录从/home/david改为/home/davidhome 如果重新指定的目录不存在,该命令也能执行成功,但下次登录的时候,系统将提示“无目录/home/davidhome”,从而将根目录(/)作为david的主目录。因此要确保重新指定的主目录存在。如果不存在,使用mkdir命令创建之,并且注意要改变目录的所属权和权限。 重新指定主目录后,原来主目录中的内容并不COPY到新目录中去,因此要再加上-m选项,如usermod -d -m /home/davidhome david     usermod -s 修改用户shell设置 如果是普通用户修改自己的shell设置,在命令中就不用指定用户名了,系统默认会修改当前用户的SHELL设置。比如david要把SHELL设置为/etc/sh: usermod -s /etc/sh [david] 如果要使用户登录以后能进入系统,则添加或修改的SHELL必须是/etc/shells文件中列出的才行,否则用户将无法登录。 除了使用usermod命令修改SHELL设置外,还可以使用chsh命令,上面的命令等价于chsh /etc/sh   usermod -e 更改口令时效信息,等价于chage命令。 比如要限制david的口令有效期到2006年12月31日为止:usermod -e 12/31/06 david。和修改用户SHELL设置一样,普通用户可以不加用户名运行上面的命令,以改变自己的口令有效期。 当调用chage命令时,至少应该指定用户名称。如果只指定了用户名,chage命令将会以和指定用户交互的形式调用,并提示输入各个参数。如果使用-l选项调用,chage将会为指定用户列出时效信息。   userdel 删除和禁止用户帐号 userdel -r 彻底删除一个用户,包括主目录 用不带任何参数的方式删除一个用户时,只是从/etc/passwd和/etc/group文件删除与用户名相关的内容,没有删除用户的主目录。 当被删除的用户正在登录使用系统时,是不能删除该用户的。此时可以通过使用write username命令提醒该用户退出系统。 如果要禁止一个用户的登录,而又不删除他的帐号,有两个方法: 1.修改/etc/passwd文件该帐号行中的最后一个域为false。false不执行任何动作,它仅返回一个错误信息,由于没有明确指定一个SHELL,将阻止用户登录进系统; 2.使用usermod -e MM/DD/YY命令使用户帐号过期,也可以阻止用户登录。     su 用户身份转换 su命令的参数是要转换成为的用户名。如果不带任何参数地使用su命令,系统认为用户要转换成root身份。但是当使用su得到另外一个用户的身份时,系统的环境还是老用户的环境,没有变成新用户应该拥有的SHELL环境,这可能会引起某些程序的不正常。要想获得新用户的系统设置,要在su命令和用户名之间使用"-"连字符号。这个连字符号告诉su程序,不但希望成为那个用户,而且还要获得新用户身份登录时该用户的环境。
相关阅读 更多 +
排行榜 更多 +
儿童着色页面运输

儿童着色页面运输

休闲益智 下载
逃离宇宙穿越空间

逃离宇宙穿越空间

飞行射击 下载
行星火箭轰炸

行星火箭轰炸

飞行射击 下载