1、查看用户和组信息命令:

1.1  cat /etc/passwd

/etc/passwd 存储有关本地用户的信息。

1)username        UID到名称的一种映射,用户名

2)password         保存密码的位置,现在保存在/etc/shadow 中

3)UID                 用户ID

4)GID                 主组ID

5)GECOS             字段存储任意文本,用户注释

6)/home/dir         用户的默认主目录

7)shell                 用户登入后使用的shell名称

1.2  cat /etc/shadow

用户密码存储在/etc/shadow,格式为(以“:”为分割符),由 pwconv 命令根据/etc/passwd中的数据自动产生:

1)用户名

2)加密的密码

3)上次更改密码的日期(从1970-1-1开始)

4)最短密码期限(按天计算,0 = 无最短期限)

5)最长密码期限(按天计算)

6)密码警告期限(按天计算,0 = 未指定警告)

7)密码非活动期限(按天计算)

8)账号到期时间(从1970-1-1开始)

9)保留域

1.3  cat /etc/group

/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录;格式如下:
group_name:passwd:GID:user_list
在/etc/group 中的每条记录分四个字段:
第一字段:用户组名称;
第二字段:用户组密码;
第三字段:GID
第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名。

2、操作用户组命令:

2.1  增加一个新的用户组使用groupadd命令。 其格式如下:
groupadd 选项 用户组
例1:
代码:
# groupadd group1
此命令向系统中增加了一个新组group1,新组的组标识号是在当前已有的最大组标识号的基础上加1。
例2:
代码:
#groupadd -g 101 group2
此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101。
2.2  如果要删除一个已有的用户组,使用groupdel命令, 其格式如下:
groupdel 用户组
例如:
代码:
#groupdel group1
此命令从系统中删除组group1。
2.3  修改用户组的属性使用groupmod命令。 其语法如下:
代码:
groupmod 选项 用户组
例1:
代码:
# groupmod -g 102 group2
此命令将组group2的组标识号修改为102。
例2:
代码:
# groupmod –g 10000 -n group3 group2
此命令将组group2的标识号改为10000,组名修改为group3。
2.4  如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。用户可以在登录后,使用命令newgrp切换到其他用户组,这个命令的参数就是目的用户组。 例如:
代码:
$ newgrp root

3、操作用户命令:

3.1  添加新的用户账号使用 useradd命令,其语法如下: 
useradd 选项 用户名
其中各选项含义如下:
代码:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
用户名 指定新账号的登录名。
例1:
代码:
# useradd –d /home/micheal -m micheal 
此命令创建了一个用户sam,
其中-d和-m选项用来为登录名micheal 产生一个主目录/home/micheal(/home为默认的用户主目录所在的父目录)。
例2:
代码:
# useradd -s /bin/bash -g group –G adm,root micheal
此命令新建了一个用户micheal,该用户的登录Shell是/bin/bash,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
3.2  删除帐号 
如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。删除一个已有的用户账号使用userdel命令,其格式如下:
代码:
userdel 选项 用户名
常用的选项是-r,它的作用是把用户的主目录一起删除。
例如:
代码:
# userdel micheal
此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。
3.3  修改帐号 
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
修改已有用户的信息使用usermod命令,其格式如下:
代码:
usermod 选项 用户名
常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。另外,有些系统可以使用如下选项:
代码:
-l 新用户名

这个选项指定一个新的账号,即将原来的用户名改为新的用户名。
例如:
代码:
# usermod -s /bin/sh -d /home/micheal2 –g developer micheal
此命令将用户sam的登录Shell修改为sh,主目录改为/home/micheal2,用户组改为developer。
3.4  用户口令的管理
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。
指定和修改用户口令的Shell命令是passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:
代码:
passwd 选项 用户名

如果默认用户名,则修改当前用户的口令。
例如,假设当前用户是micheal,则下面的命令修改该用户自己的口令:
代码:
$ passwd
Old password:******
New password:*******
Re-enter new password:*******
如果是超级用户,可以用下列形式指定任何用户的口令:
代码:
# passwd micheal
New password:*******
Re-enter new password:*******

普通用户修改自己的口令时,passwd命令会先询问原口令,验证后再要求用户输入两遍新口令,如果两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时,就不需要知道原口令。

为了系统安全起见,用户应该选择比较复杂的口令,例如最好使用8位长的口令,口令中包含有大写、小写字母和数字,并且应该与姓名、生日等不相同。

为用户指定空口令时,执行下列形式的命令:
代码:
# passwd -d micheal
此命令将用户sam的口令删除,这样用户sam下一次登录时,系统就不再询问口令。

passwd命令还可以用-l(lock)选项锁定某一用户,使其不能登录,例如:
代码:
# passwd -l micheal
 
4、将用户默认的主目录权限赋给该用户:
命令行格式如下:
chown -R 用户:组 文件夹目录
 
5、在用户默认目录下创建.bashrc文件和.profile文件
 
6、添加新增用户的sudo操作权限
配置etc/sudoers文件
首先添加文件修改权限,chmod u+w /etc/sudoers;
修改文件内容,在root ALL=(ALL:ALL) ALL后面添加micheal ALL=(ALL:ALL) ALL保存即可;
修改以后去除文件修改权限,chmod u-w /etc/sudoers。

linux环境新增用户和所属组的更多相关文章

  1. linux下添加用户到sudo组 并禁止sudo用户修改密码

    linux下添加用户到sudo组 创建用户  useradd hanli 为新用户设置密码  passwd hanli 创建用户组  groupadd  op 将用户添加到用户组  usermod - ...

  2. linux中的用户、群组和权限

     linux中的用户.群组和权限   新建用户natasha,uid为1000,gid为555,备注信息为“master”   groupadd -g 555 natasha useradd -u 1 ...

  3. linux下添加用户到sudo组

    #查看当前用户所属组groups #查看指定用户hiuser所属组groups hiuser #添加用户hiuser到sudo组sudo usermod -G sudo hiuser

  4. linux命令之 用户和群组

    一.保存用户信息的文件 1 /etc/passwd root:x:::root:/root:/bin/bash pwftp:x::::/alidata/www/wwwroot/:/sbin/nolog ...

  5. 自学Linux Shell7.1-linux用户账户和组

    点击返回 自学Linux命令行与Shell脚本之路 7.1-linux用户账户和组 linux安全系统的核心是用户账户.每个能进入linux系统的用户都会被分配唯一的用户账户,用户对系统中各对象的访问 ...

  6. Linux基础-3.用户、群组和权限

    1.用户及passwd文件 1)掌握/etc/passwd文件的功能:存储所有用户的相关信息,每一个用户占用一行记录,该文件也被称为用户信息数据库(Database) 2)/etc/passwd文件中 ...

  7. Linux 下新增用户的流程

    一: 新增用户 1.添加新的用户账号使用useradd命令,其语法如下: 代码:useradd 选项 用户名其中各选项含义如下: 代码:-c comment 指定一段注释性描述.-d 目录 指定用户主 ...

  8. linux下把一个用户从某个组中删除,而不删除用户

    查看当前用户/登录用户 基本语法 whoami / who am I 用户组 介绍 类似于角色,系统可以对有共性的多个用户进行统一的管理. 新增组 语法 groupadd 组名 案例演示 添加test ...

  9. Linux系统之用户、群组和权限

    一.用户管理 创建用户时,系统为用户分配一个唯一的编号UID,同时为用户创建一个同名的组,并为组分配一个编号GID,并把该用户加入该组中. 系统规定: uid: 0       特权用户      u ...

随机推荐

  1. Linux/Unix shell 自动发送AWR report

    观察Oracle数据库性能,Oracle自带的awr 功能为我们提供了一个近乎完美的解决方案,通过awr特性我们可以随时从数据库提取awr报告.不过awrrpt.sql脚本执行时需要我们提供一些交互信 ...

  2. linux内核值shmmax问题

    问题:(rac安装过程中grid检测)  Please run the following script on each node as "root" user to execut ...

  3. K2 Blackpearl开发技术要点(Part2)

    转:http://www.cnblogs.com/dannyli/archive/2012/09/14/2685282.html K2 Blackpearl开发技术要点(Part2)  

  4. Android通过代码获取View

    View view = LayoutInflater.from(mContext).inflate(R.layout.song_item_adapter, null); LayoutInflater ...

  5. hdu 3032(博弈sg函数)

    题意:与原来基本的尼姆博弈不同的是,可以将一堆石子分成两堆石子也算一步操作,其它的都是一样的. 分析:由于石子的堆数和每一堆石子的数量都很大,所以肯定不能用搜索去求sg函数,现在我们只能通过找规律的办 ...

  6. 组合 z

    输入a b c d e以及它们对应的数字 比如 a-->1 2 3  b-->2 3 c-->1 d-->3 4 5 e-->1 3 5 输出a b c d e的可用组合 ...

  7. Multi-Device Hybrid Apps for Visual Studio CTP2.0

    http://msdn.microsoft.com/en-us/library/dn771545.aspx http://www.microsoft.com/en-us/download/detail ...

  8. android 深入研究ratingbar自定义

    http://blog.csdn.net/rain_butterfly/article/details/22892879

  9. cocoa NSFileManager

    NSFileManager中包含了用来查询单词库目录.创建.重命名.删除目录以及获取/设置文件属性的方法(可读性,可编写性等等). 每个程序都会有它自己的沙盒,通过它你可以阅读/编写文件.写入沙盒的文 ...

  10. list 容器 排序函数.xml

    pre{ line-height:1; color:#f0caa6; background-color:#2d161d; font-size:16px;}.sysFunc{color:#e54ae9; ...