Id

Finger

Pwck

检查/etc/passwd配置文件内的信息与实际主文件夹是否存在,还可比较/etc/passwd和/etc/shadow的信息是否一致,另外如果/etc/passwd中的数据字段错误也会提示。

Grpck

和pwck功能相近,这是检查用户组的。

Groups

newgrp

useradd

usermod

usermod 不仅能改用户的SHELL类型,所归属的用户组,也能改用户密码的有效期,还能改登录名。usermod 如此看来就是能做到用户帐号大转移;比如我把用户A改为新用户B;

usermod  [-u uid [-o]] [-g group] [-G group,...]

[-d 主目录 [-m]] [-s shell] [-c 注释] [-l 新名称]

[-f 失效日] [-e 过期日] [-p 密码] [-L|-U] 用户名

usermod 命令会参照你命令列上指定的部份修改系统帐号档。下列为usermod可选用的参数。

-c comment

更新用户帐号password档中的注解栏,一般是使用chfn(1)来修改。

-d home_dir

更新用户新的登入目录。如果给定-m选项,用户旧目录会搬到新的目录去,如旧目录不存在则建个新的。

-e expire_date 加上用户帐号停止日期。日期格式为MM/DD/YY.

-f inactive_days 帐号过期几日后永久停权。当值为0时帐号则立刻被停权。而当值为-1时则关闭此功能。预设值为-1。

-g initial_group 更新用户新的起始登入用户组。用户组名须已存在。用户组ID必须参照既有的的用户组。用户组ID预设值为1。

-G group,[...] 定义用户为一堆groups的成员。每个用户组使用","区格开来,不可以夹杂空白字元。用户组名同-g选项的限制。如果用户现在的用户组不再此列,则将用户由该用户组中移除。

-l login_name  变更用户login时的名称为login_name。其它不变。特别是,用户目录名应该也会跟着更动成新的登入名。

-s shell  指定新登入shell。如此栏留白,系统将选用系统预设shell。

-u uid用户ID值。必须为唯一的ID值,除非用-o选项。数字不可为负值。预设为最小不得小于/etc/login.defs中定义的UID_MIN值。0到UID_MIN值之间是传统上保留给系统帐号使用。用户目录树下所有的档案目录其userID会自动改变。放在用户目录外的档案则要自行手动更动。

警告:usermod不允许你改变正在线上的用户帐号名称。当usermod用来改变userID,必须确认这名user没在电脑上执行任何程序。你需手动更改用户的crontab档。也需手动更改用户的at工作档。采用NISserver须在server上更动相关的NIS设定。

举个简单的例子,我们在前面说了关于useradd的工具,而usermod 工具和useradd的参数差不多;两者不同之处在于useradd是添加,usermod 是修改;

[root@localhost ~]# usermod -d /opt/linuxfish -m   -l fishlinux -U linuxfish

注:把linuxfish 用户名改为fishlinux ,并且把其家目录转移到 /opt/linuxfish ;

[root@localhost ~]# ls -la /opt/linuxfish/   注:查看用户fishlinux的家目录下的文件及属主;

总用量 48

drwxr-xr-x   3 fishlinux linuxfish 4096 11月  5 16:46 .

drwxrwxrwx  29 root      root      4096 11月  5 16:48 ..

-rw-r--r--   1 fishlinux linuxfish   24 11月  5 16:46 .bash_logout

-rw-r--r--   1 fishlinux linuxfish  191 11月  5 16:46 .bash_profile

-rw-r--r--   1 fishlinux linuxfish  124 11月  5 16:46 .bashrc

-rw-r--r--   1 fishlinux linuxfish 5619 11月  5 16:46 .canna

-rw-r--r--   1 fishlinux linuxfish  438 11月  5 16:46 .emacs

-rw-r--r--   1 fishlinux linuxfish  120 11月  5 16:46 .gtkrc

drwxr-xr-x   3 fishlinux linuxfish 4096 11月  5 16:46 .kde

-rw-r--r--   1 fishlinux linuxfish    0 11月  5 16:46 mydoc.txt

-rw-r--r--   1 fishlinux linuxfish  658 11月  5 16:46 .zshrc

[root@localhost ~]# more  /etc/passwd |grep fishlinux  注:查看有关fishlinux的记录;

fishlinux:x:512:512::/opt/linuxfish:/bin/bash

通过上面的例子,我们发现文件的用户组还没有变,如果您想改变为fishlinux用户组,如果想用通过 usermod来修改,就要先添加fishlinux用户组;然后用usermod -g 来修改 ,也可以用chown -R fishlinux:fishlinux /opt/finshlinux 来改;

警告: usermod 最好不要用它来改用户的密码,因为他在/etc/shadow中显示的是明口令;修改用户的口令最好用passwd ;

[root@localhost ~]# usermod -p 123456 fishlinux  注:修改fishlinux的口令是123456 ;

[root@localhost ~]# more /etc/shadow |grep fishlinux  注:查询/etc/shadow文件中fishlinux的口令;我们看到明显是没有加密;

fishlinux:123456:13092:0:99999:7:::

userdel

userdel很简单,只有一个参数可选 -r ;如果加参数-r ,表示在删除用户的同时,一并把用户的家目录及本地邮件存储的目录或文件也一同删除;比如我们现在有两个用户bnnb和lanhaitun,其家目录都位于/home目录中,现在我们来删除这两个用户;

[root@localhost ~]# userdel bnnb  注:删除用户bnnb,但不删除其家目录及文件;

[root@localhost ~]# ls -ld /home/bnnb  注:查看其家目录是否存在;

drwxr-xr-x  14 501 501 4096  8月 29 16:33 /home/bnnb    注:存在;

[root@localhost ~]# ls -ld /home/lanhaitun   注:查看lanhaitun家目录是否存在;

drwx------  4 lanhaitun lanhaitun 4096 11月  5 14:50 /home/lanhaitun   注:存在;

[root@localhost ~]# userdel -r  lanhaitun  注:删除用户lanhaitun,其家目录及文件一并删除;

[root@localhost ~]# ls -ld /home/lanhaitun  注:查看是否在删除lanhaitun 用户的同时,也一并把其家目录和文件一同删除;

ls: /home/lanhaitun: 没有那个文件或目录  注:已经删除;

警告: 请不要轻易用-r参数;他会删除用户的同时删除用户所有的文件和目录,切记;如果用户目录下有重要的文件,在删除前请备份;

其实也有最简单的办法,但这种办法有点不安全,也就是直接在/etc/passwd中删除您想要删除用户的记录;但最好不要这样做,/etc/passwd 是极为重要的文件,可能您一不小心会操作失误;

Groupadd

groupmod

groupdel 是用来删除用户组的;

语法格式:groupdel 用户组

比如:

[root@localhost ~]# groupdel lanhaitun

LINUX用户和用户组操作命令的更多相关文章

  1. Linux 用户和用户组管理

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...

  2. Linux用户与用户组,UID及GID

    以下列出文章: Linux系统下如果查看用户的UID和GID:http://blog.csdn.net/ahangliu/article/details/7567444 Linux的用户和用户组管理: ...

  3. linux用户及用户组操作

    Linux用户.用户组权限管理详解 Linux用户管理三个重要文件详解: Linux登陆需要用户名.密码./etc/passwd 文件保存用户名.登录Linux时,Linux 先查找 /etc/pas ...

  4. 八、Linux 用户和用户组管理

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...

  5. linux用户和用户组管理详解

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...

  6. Linux用户与用户组

    Linux用户与用户组 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助系统管 ...

  7. Linux 用户和用户组管理(useradd userdel groupadd groupdel)

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. Linux系统用户账户的 ...

  8. Linux学习笔记之Linux用户与用户组、文件操作命令、文件权限剖析

    1.用户与用户组 Linux是一个多用户操作系统,通过用户与用户组的概念,可以实现保证安全性和隐私性.任何一个文件都具有User.Group.Others三个权限. 文件拥有者(Linux下所有的东西 ...

  9. linux增加用户并赋予权限/用户和用户组操作命令

    ===============ubuntu================================================== 在Ubuntu13.10下创建一个新的用户:Step1: ...

随机推荐

  1. hdu多校第九场 1006 (hdu6685) Rikka with Coin 暴力

    题意: 有一些1毛,2毛,5毛,1块的钢镚,还有一些价格不同的商品,现在要求你带一些钢镚,以保证这些商品中任选一件都能正好用这些钢镚付账,问最少带多少钢镚. 题解: 对于最优解,1毛的钢镚最多带1个, ...

  2. Oracle sql判断一个字段是否全数字 或含有中文

    update (select length(t.name), t.* -- name,length(name) from g_enterprise_info t where nvl2(translat ...

  3. (转)HashSet<T>类

    转载于:http://www.importnew.com/6931.html HashSet<T>类主要是设计用来做高性能集运算的,例如对两个集合求交集.并集.差集等.集合中包含一组不重复 ...

  4. [转] boost undefined reference to 'pthread_create 问题

    由于是Linux新手,所以现在才开始接触线程编程,照着GUN/Linux编程指南中的一个例子输入编译,结果出现如下错误:undefined reference to 'pthread_create'u ...

  5. (转)在Source Insight中看Python代码

    http://blog.csdn.net/lvming404/archive/2009/03/18/4000394.aspx SI是个很强大的代码查看修改工具,以前用来看C,C++都是相当happy的 ...

  6. Unity 之事件系统

    游戏开发过程中事件是非常多的,可以通过 Messenger 事件系统来解藕,用法如下: 使用方法 例子:在按下拍照按钮后通知刷新好友面板 步骤1.添加事件字段,该字段具有唯一性 在MessangerE ...

  7. CodeForces 1152D Neko and Aki's Prank

    说明 Catalan(i) 表示卡特兰数的第 i 项. 题目链接:http://codeforces.com/problemset/problem/1152/C 题目大意 有 n 个左括号和 n 个右 ...

  8. java.sql.SQLException: validateConnection false

    -- :: --- [Create-] com.alibaba.druid.pool.DruidDataSource : create connection error java.sql.SQLExc ...

  9. HttpWebRequest 基础连接已经关闭: 接收时发生错误 GetRequestStream 因为算法不同,客户端和服务器无法通信。

    在代码行 HttpWebRequest objRequest = (HttpWebRequest)HttpWebRequest.Create(sUrl 前面加上 ServicePointManager ...

  10. 关于__init__.py

    假设程序目录结构如下: ├── checkpoints/ ├── data/ │ ├── __init__.py │ ├── dataset.py │ └── get_data.sh ├── mode ...