新建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组、用户命令的更多相关文章
- [转载]linux创建用户命令
原文地址:linux创建用户命令作者:疯狂的核桃 创建用户.设置密码.修改用户.删除用户: useradd testuser 创建用户testuser passwd testuser 给已创建 ...
- 高手查看Linux系统用户命令-测评
一.Linux查看用户命令-测评 查看linux所有的用户 cat /etc/passwd 查看普通用户.系统用户(1-499) root:x:0:0:root:/root:/bin/bash < ...
- Linux su命令参数及用法详解--Linux切换用户命令
建议大家切换用户的时候 使用 su - root 这样,否则可能发现某些命令执行不了 关于su .su - 及 sudo的区别 请往下看 1.命令作用 su的作用是变更为其它使用者的身份,超级用 ...
- Windows与linux添加用户命令
Windows 查看当前存在用户: net user 查看当前用户组: net localgroup 添加用户(以添加用户test密码test1234为例): net user test test12 ...
- Linux创建用户命令
创建用户.设置密码.修改用户.删除用户: useradd testuser 创建用户testuser passwd testuser 给已创建的用户testuser设置密码 说明:新创建的用户 ...
- linux切换用户命令
1. 切换用户的命令为:su +username 2.从普通用户切换到root用户:sudo su 3.退回到原来的用户:exit命令或logout,或者ctrl+d 4.如果要切换到新用户的工作环境 ...
- LINUX查询用户命令
W 可显示开机多久,当前登录的所有用户,平均负载 Who 显示当前登录的所有用户 Last 显示每个用户最后的登录时间 Lastlog 显示每个用户最后的登录时间
- Linux查看用户和组命令
在Linux系统里,我们会经常用Linux查看用户的命令,在这里我们一些命令进行了总结,总共有7个,并做了详细的解释,以便让大家更深入的理解,接下来让我们一起来看看这些命令和具体应用. 一.Linux ...
- 20155327预备作业3:Linux安装及命令入门
20155327预备作业3:Linux安装及命令入门 安装Linux操作系统 由于之前安装过所以这里就不再赘述了 掌握Linux命令的学习方法 学习路径: 常用Ubuntu快捷键: CTRL+ALT+ ...
随机推荐
- Android Activity和Fragment传递数据
1.Activity与Activity传递数据 UserLoginActivity.java: Intent welcomePage = new Intent(); Bundle dataBundle ...
- MFC解决Static控件背景透明时文本覆盖重影
通过映射OnCtlColor消息,而后在该函数中使用pDC->SetBkMode(TRANSPARENT)使Static控件背景透明时会出现:文本覆盖重影的问题,当改变控件的文本就会发生新文本与 ...
- HDU 5769 Substring(后缀数组)
[题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=5769 [题目大意] 在一个串中求出包含字母的子串个数, 只要存在一个字符不相等的子串即可视为不同的 ...
- java list 的 四种遍历方式
在java中遍历一个list对象的方法主要有以下四种: 1. For Loop —— 普通for循环 2. Advanced For Loop —— 高级for循环 3. Iterator Loop ...
- move.js
function startMove(obj,json,fn){ var flag=true;//标志所有运动是否到达目标值 clearInterval(obj.timer); obj.timer=s ...
- 基于thinkphp的uploadify上传图功能
php Action server端 <?php /* * To change this template, choose Tools | Templates * and open the ...
- 远程登录阿里云上的MySQL
近期对云和server之类的感兴趣,想要将自己的数据什么的保存到远端server.研究了阿里云和百度云.今天算是有点进步吧. 我在阿里云上申请了个免费的云server(ECS),非常可惜仅仅能用5天. ...
- (译)Node.js的 EventEmitter 教程
原文标题:Node.js EventEmitter Tutorial 原文链接:http://www.hacksparrow.com/node-js-eventemitter-tutorial.htm ...
- C# 委托和方法
委托是一种特殊的引用类型,它将方法也作为特殊的对象封装起来,从而将方法作为变量或参数进行传递 using System; using System.Collections.Generic; using ...
- C++ typedef
C++ typedef 作用:用来定义类型的同义词,用作类型的说明符. 用法:typedef typeName myTypeName; 使用目的:1. 为了隐藏特定类型的实现,强调使用类型的目的.2. ...