最近在用虚拟机,安装了centos,现在想新添加一个用户,在网上找了找方法。【原文链接

# useradd –d /usr/sam -m sam

此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。

假设当前用户是sam,则下面的命令修改该用户自己的口令:

# passwd

Old password:******

New password:*******

Re-enter new password:*******

如果是超级用户,可以用下列形式指定任何用户的口令:

# passwd sam

New password:*******

Re-enter new password:*******

>>参考1====================================

1、添加用户

首先用adduser命令添加一个普通用户,命令如下:
#adduser tommy  //添加一个名为tommy的用户
#passwd tommy   //修改密码
Changing password for user tommy.
New UNIX password:     //在这里输入新密码
Retype new UNIX password:  //再次输入新密码
passwd: all authentication tokens updated successfully.
2、赋予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权限进行操作。

>>参考2====================================

用useradd新增的用户不能直接用ssh远程访问,需要修改ssh相关配置
如下:
vi /etc/ssh/sshd_config
添加

AllowUsers root@192.168.1.32 admin
多个用户用空格隔开

>>参考3====================================
如何让普通用户获得root用户的权限执行操作而不需要知道root用户的密码或向root用户进行切换呢?有一个命令sudo可以实现这个功能.
Sudo的工作流程:
(1)root用户编辑/etc/sudoers文件,添加要分配的普通用户记录,其中有这么一行记录:root ALL=(ALL) ALL,在这行后面添加:Sam ALL=(ALL) ALL
(2) 那么sam用户在执行操作时,如果所执行的操作自己没有权限,则会去/etc/sudoers文件中查找是否有对应的记录,如果有的话则临时获得root权限,执行只有root才能执行的操作.
注意:这里会提示输入密码,但是输入的是sam用户的密码,而不是root用户的密码.例如:
Shell> sudo mkdir –p a/b/c/d
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
Password: #这里的密码是sam用户自己的密码,而不是root的密码
几个操作:
1) 编辑/etc/sudoers文件,使用visudo命令,
Shell> visudo
其实visudo命令也是调用vi去编辑sudoer文件的,但是在保存时会去检查你修改后文件的语法,如果错误是不能保存的,但是如果直接用vi来编辑该文件,强制保存虽然成功,但是如果有语
法错误这里并不能给出提示,也就导致了后面sudo命令的不可用.
2) 记录解析:
Sam ALL=(ALL) ALL
使用者帐户 登入的主机=(可以变换的身份) 可以下达的命令
上述语句的意思是 sam用户可以在任何地方登录,并可切换成任何用户进行任何操作.这里如果(ALL)不写,只写为 sam ALL=ALL,他默认只能切换为root用户.

>>参考4====================================

linux chown命令参数及用法详解--改变档案的所有者:

要更改文件 program.c 的所有者: chown jim program.c
program.c 的用户访问权限现在应用到 jim。作为所有者,jim 可以使用 chmod 命令允许或拒绝其他用户访问 program.c。

要将目录 /tmp/src 中所有文件的所有者和组更改为用户 john 和组 build:chown -R john:build /tmp/src

如: tomcat的安装目录的所有者修改(#chown -R user:group /usr/java/tomcat5.5)

>>参考5====================================

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

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}’

Linux 下添加用户,修改权限的更多相关文章

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

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

  2. linux下添加用户并将文件夹授权给某一个用户

    ### linux下添加用户并将文件夹授权给某一个用户 背景:在做一个项目时,需要外包的前端人员调试测试环境的页面,但是又不能给他服务器的账号信息,就在服务器上新添加一个子账户,再给这个账户项目文件的 ...

  3. linux命令详解之useradd命令使用方法[linux下 添加用户、删除用户、修改用户密码、用户组管理]

    http://www.jb51.net/article/45848.htm Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这 ...

  4. linux下添加用户并赋予root权限

    1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户#passwd tommy   //修改密码Changing pass ...

  5. Linux下添加,删除,修改,查看用户和用户组

      linux下添加,删除,修改,查看用户和用户组 1,创建组 groupadd test 增加一个test组 2,修改组 groupmod -n test2 test 将test组的名子改成test ...

  6. linux ftp 添加用户及权限管理

    Linux下创建用户是很easy的事情了,只不过不经常去做这些操作,时间久了就容易忘记,顺便配置一下FTP.声明:使用Linux版本release 5.6,并以超级管理员root身份运行. 1.创建用 ...

  7. Linux下chmod 777 修改权限

    在linux操作系统下,使用shell命令来操作: 关于权限的问题用chmod命令来修改权限 -rw-r-r-- 1 root root 可参考:http://zhidao.baidu.com/lin ...

  8. kali下添加用户和权限分配

    1.添加用户 useradd -m test #-m的意思是创建用户的主目录 2.为用户test设置密码. passwd test 3.为添加的用户赋予权限(-a 添加 :-G 群组) 如果没有这一步 ...

  9. linux下添加用户到sudo组

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

随机推荐

  1. Hibernate 入门示例

    版权声明:本文为博主原创文章,如需转载请标注转载地址 博客地址:http://www.cnblogs.com/caoyc/p/5593406.html  环境: myelipse2015+Hibern ...

  2. spring bean注册之bean工厂方式

    一般我们在spring中注册一个bean,直接 <bean id="websocket" class="com.sdyy.common.spring.websock ...

  3. 基于Node.js + WebSocket 的简易聊天室

    代码地址如下:http://www.demodashi.com/demo/13282.html Node.js聊天室运行说明 Node.js的本质就是运行在服务端的JavaScript.Node.js ...

  4. mysql union和union all 的差别以及使用

    Union由于要进行反复值扫描,所以效率低.假设合并没有刻意要删除反复行,那么就使用Union All  两个要联合的SQL语句 字段个数必须一样.并且字段类型要"相容"(一致). ...

  5. 悟道—位IT高管20年的职场心经(读书笔记一)

    悟道--一位IT高管20年的职场心经 第一章  修炼! 修炼! 别跟我谈事业,先把工作做好. 别跟我说理想,先把饭碗端好: 志不可天天立.道必须日日修.没有实力,一切皆为妄谈. 修炼是硬道理. 1.1 ...

  6. log4j使用示例

    ### set log levels ### log4j.rootLogger = INFO , D #INFO , C , D , E ### console ### #log4j.appender ...

  7. 利用dd命令制作u盘iso镜像

    现在安装系统都是用u盘安装,那么制作u盘的iso镜像就是必须的了.现在此类工具倒是不少,但是,好用的不多,有的还收费.唉,还是用dd吧,老配方,老味道. 首先:要df -h一下,看看u盘的盘符,类似  ...

  8. 156. Merge Intervals【easy】

    Given a collection of intervals, merge all overlapping intervals.   Example Given intervals => me ...

  9. HDU 1978 How many ways DP问题

    How many ways Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  10. O(1)取Queue中的最大值

    实现原理: 1.利用Stack的先进后出的特性,实现一个MaxStack,MaxStack中用一个Stack记录当前的值,一个Stack记录当前的最大值. 2.用2个MaxStack实现MaxQueu ...