新建linux组、用户命令

之前在安装oracle的时候,出现了一个问题:安装Oracle,新建组、用户的时候的一个错误。看这篇博客前,先看这个链接,学习要从解决出现的问题出手。

建立用户组和用户

下面总结一下Linux建立组和用户的时候的命令:

#groupadd oinstall    //建立一个名字为oinstall的组
#groupadd dba    //建立一个名字为dba的组
#useradd -g oinstall -G dba -m tank    //建立一个名字为tank的用户(-m指定),它的主组是oinstall,辅助组为dba

这句话执行结束后,会在/home这个目录下新建一个名字和userID一样的文件件,这个文件夹就是用来存储tank这个用户的配置信息。所以/home/tank就是这个用户的根目录。

但是如果我想自己制定根目录的话,当然也是可以的。可以利用参数-d来指定根目录。但是这里有个问题:

系统添加用户的标准步骤:
1.编辑/etc/passwd与/etc/group
2.创建用户主目录
3.从/etc/skel拷贝文件到目录(主要是三个文件.bashrc、.bash_logout、.bash_profile)
4.让新用户获得其主目录与文件的拥有权限
5.给新用户一个密码

所以这个根目录需要以root身份创建,如果你不创建的话,就会提示不存在这个目录;但是在磁盘上创建的目录的最后一级不能手动创建,要让OS自己创建,然后copy配置文件,不然就会报错说用户目录文件夹已存在(但是在下命令的时候-d参数还是要把目录的最后一级都写上的)。当这些都合理以后,就会在你自己设定的根目录的最后一级建立一个和userID相同的新的文件夹,并用这个文件夹来存储这个用户的配置信息。

 

 删除用户组和用户

#userdel -r tank    //删除tank用户,会把tank的根目录一同删除(-r指定),如果根目录不是tank所有,就只删除用户,不删除目录,因为它没有权限
#groupdel dba    //删除群组

 建立指定根目录用户的例子:

[root@oracle /]# mkdir -p /u01/u02    //创建用户的根目录,不包含最后一级
[root@oracle /]# useradd -g oinstall -G dba -d /u01/u02/tank -m tank    //创建用户,指定属组,根目录(要指定最后一级)
Creating mailbox file: File exists
[root@oracle /]# su - tank    //切换用户
[tank@oracle ~]$ pwd    //查看切换后的根目录
/u01/u02/tank
[tank@oracle ~]$ su -
Password:
[root@oracle ~]# cd /u01/u02
[root@oracle u02]# ls -la
total 12
drwxr-xr-x.  3 root   root     4096 Apr 26 20:16 .
drwxr-xr-x. 11 oracle oinstall 4096 Apr 26 20:15 ..
drwx------.  4 tank   oinstall 4096 Apr 26 20:16 tank
[root@oracle u02]# cd tank
[root@oracle tank]# ls -la    //查看Linux拷贝过来的配置文件
total 28
drwx------. 4 tank oinstall 4096 Apr 26 20:16 .
drwxr-xr-x. 3 root root     4096 Apr 26 20:16 ..
-rw-r--r--. 1 tank oinstall   18 Jul 18  2013 .bash_logout
-rw-r--r--. 1 tank oinstall  176 Jul 18  2013 .bash_profile
-rw-r--r--. 1 tank oinstall  124 Jul 18  2013 .bashrc
drwxr-xr-x. 2 tank oinstall 4096 Nov 11  2010 .gnome2
drwxr-xr-x. 4 tank oinstall 4096 Apr 25 04:24 .mozilla

 

注意:

在这个例子中,tank只对/u01/u02/tank这个文件夹有操作权限,也就是说只能在tank这个文件夹下做一些操作,甚至u01和u02它都没有操作的权限。如果想让tank用户能在u01和u02下有操作权限,那就得切换到root用户下利用chown修改权限。

 

最后再看一下/etc/skel这个文件夹中的东西:

posted @ 2015-04-27 10:53  stemon  阅读(1748)  评论(0编辑  收藏  举报