===============ubuntu==================================================
在Ubuntu13.10下创建一个新的用户:
Step1:添加新用户
useradd -r -m -s /bin/bash 用户名
Step2:配置新用户密码
passwd 用户名
Step3:给新添加的用户增加ROOT权限
vim /etc/sudoers
然后添加:
用户名 ALL=(ALL:ALL) ALL
另外,如果直接用useradd添加用户的话,可能出现没有home下的文件夹,以及shell无法自动补全的显现。出现此问题只要修改/etc/passwd下的/bin/sh为/bin/bash即可。
===============redhat===================================================
useradd hadoop
passwd 123456
这样就增加了一个用户名是hadoop 密码是123456的用户
再修改hadoop用户的权限:
赋予root权限
方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
然后修改用户,使其属于root组(wheel),命令如下:
#usermod -g root tommy
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
方法二:修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
tommy ALL=(ALL) ALL
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
方法三:修改/etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:
tommy:x:500:500:tommy:/home/tommy:/bin/bash修改后如下tommy:x:0:500:tommy:/home/tommy:/bin/bash
保存,用tommy账户登录后,直接获取的就是root帐号的权限。
友情提醒:虽然方法三看上去简单方便,但一般不推荐使用,推荐使用方法二。 以上配置完成以后,验证配置是否成功:
id hadoop
或者groups hadoop
看到root即可
=====================================================================
linux下添加,删除,修改,查看用户和用户组
1,创建组
groupadd test
增加一个test组
2,修改组
groupmod -n test2 test
将test组的名子改成test2
3,删除组
groupdel test2
删除 组test2
4,查看组
a),查看当前登录用户所在的组 groups,查看apacheuser所在组groups apacheuser
b),查看所有组 cat /etc/group
/etc/group 内容具体分析
/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录;格式如下:
group_name:passwd:GID:user_list
在/etc/group 中的每条记录分四个字段:
第一字段:用户组名称;
第二字段:用户组密码;
第三字段:GID
第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名;
c),有的linux系统没有/etc/group文件的,这个时候看下面的这个方法
cat /etc/passwd |awk -F [:] ‘{print $4}’ |sort|uniq | getent group |awk -F [:] ‘{print $1}’
这里用到一个命令是getent,可以通过组ID来查找组信息,如果这个命令没有的话,那就很难查找,系统中所有的组了.
二,用户操作
1,增加用户
查看复制打印?
[root@krlcgcms01 mytest]# useradd –help
Usage: useradd [options] LOGIN
Options:
-b, –base-dir BASE_DIR 设置基本路径作为用户的登录目录
-c, –comment COMMENT 对用户的注释
-d, –home-dir HOME_DIR 设置用户的登录目录
-D, –defaults 改变设置
-e, –expiredate EXPIRE_DATE 设置用户的有效期
-f, –inactive INACTIVE 用户过期后,让密码无效
-g, –gid GROUP 使用户只属于某个组
-G, –groups GROUPS 使用户加入某个组
-h, –help 帮助
-k, –skel SKEL_DIR 指定其他的skel目录
-K, –key KEY=VALUE 覆盖 /etc/login.defs 配置文件
-m, –create-home 自动创建登录目录
-l, 不把用户加入到lastlog文件中
-M, 不自动创建登录目录
-r, 建立系统账号
-o, –non-unique 允许用户拥有相同的UID
-p, –password PASSWORD 为新用户使用加密密码
-s, –shell SHELL 登录时候的shell
-u, –uid UID 为新用户指定一个UID
-Z, –selinux-user SEUSER use a specific SEUSER for the SELinux user mapping
[root@krlcgcms01 mytest]# useradd --help
Usage: useradd [options] LOGIN
Options:
-b, --base-dir BASE_DIR 设置基本路径作为用户的登录目录
-c, --comment COMMENT 对用户的注释
-d, --home-dir HOME_DIR 设置用户的登录目录
-D, --defaults 改变设置
-e, --expiredate EXPIRE_DATE 设置用户的有效期
-f, --inactive INACTIVE 用户过期后,让密码无效
-g, --gid GROUP 使用户只属于某个组
-G, --groups GROUPS 使用户加入某个组
-h, --help 帮助
-k, --skel SKEL_DIR 指定其他的skel目录
-K, --key KEY=VALUE 覆盖 /etc/login.defs 配置文件
-m, --create-home 自动创建登录目录
-l, 不把用户加入到lastlog文件中
-M, 不自动创建登录目录
-r, 建立系统账号
-o, --non-unique 允许用户拥有相同的UID
-p, --password PASSWORD 为新用户使用加密密码
-s, --shell SHELL 登录时候的shell
-u, --uid UID 为新用户指定一个UID
-Z, --selinux-user SEUSER use a specific SEUSER for the SELinux user mappinguseradd test
passwd test
增加用户test,有一点要注意的,useradd增加一个用户后,不要忘了给他设置密码,不然不能登录的。
2,修改用户
usermod -d /home/test -G test2 test
将test用户的登录目录改成/home/test,并加入test2组,注意这里是大G。
gpasswd -a test test2 将用户test加入到test2组
gpasswd -d test test2 将用户test从test2组中移出
3,删除用户
userdel test
将test用户删除
4,查看用户
a),查看当前登录用户
[root@krlcgcms01 ~]# w
[root@krlcgcms01 ~]# who
b),查看自己的用户名
[root@krlcgcms01 ~]# whoami
c),查看单个用户信息
[root@krlcgcms01 ~]# finger apacheuser
[root@krlcgcms01 ~]# id apacheuser
d),查看用户登录记录
[root@krlcgcms01 ~]# last 查看登录成功的用户记录
[root@krlcgcms01 ~]# lastb 查看登录不成功的用户记录
e),查看所有用户
[root@krlcgcms01 ~]# cut -d : -f 1 /etc/passwd
[root@krlcgcms01 ~]# cat /etc/passwd |awk -F \: ‘{print $1}’