新建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
drwxr-xr-x. root root Apr : .
drwxr-xr-x. oracle oinstall Apr : ..
drwx------. tank oinstall Apr : tank
[root@oracle u02]# cd tank
[root@oracle tank]# ls -la //查看Linux拷贝过来的配置文件
total
drwx------. tank oinstall Apr : .
drwxr-xr-x. root root Apr : ..
-rw-r--r--. tank oinstall Jul .bash_logout
-rw-r--r--. tank oinstall Jul .bash_profile
-rw-r--r--. tank oinstall Jul .bashrc
drwxr-xr-x. tank oinstall Nov .gnome2
drwxr-xr-x. tank oinstall Apr : .mozilla

注意:

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

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

新建linux组、用户命令

上一篇:天津*应急系统之GIS一张图(arcgis api for flex)讲解(三)显示地图坐标系模块


下一篇:安装nvm之后node不可用,“node”不是内部或外部命令,也不是可运行的程序或批处理文件(ng)