Linux入门:常用命令:用户、组及特殊权限处理
2016-09-29 10:50
288 查看
用户
新用户信息文件
/etc/skel目录下存放着创建一个新用户的所有默认配置文件 #全部是隐藏文件 #手工添加的用户,需要将所有文件copy到用户的宿主目录下
用户默认配置文件
/etc/login.defs #添加新用户密码长度、修改时间等 /etc/default/useradd #添加用户的一些默认信息
登录信息
/etc/motd #banner信息,登录成功才会显示的信息 /etc/issue #banner信息,登录信息就来自于这里
权限位s
/etc/s hadow #shadow只有root有读权限,那普通用户修改密码是怎么写入的,s位是特殊权限位 /usr/bin/passwd #权限位s是:setuid或suid
setUID 4(所属者)
>当一个可执行程序有setuid权限的时候,任何用户执行这个程序的时候以其所有者(root)执行 #给非可执行程序授于setuid时,权限位是大写S,用于提示,表示没有意义 >授于setUID权限【chmod u+s】【4775】 #s的标识位是4,并在第一位 >umask【0022】
setGID 2(所属组)
>当一个可执行程序有setgid权限的时候,任何用户执行这个程序的时候以其所有组(root)执行 >授于setGID权限【chmod g+s】【2775】 #s的标识位是2,并在第一位 >【6755】是同时授于setuid和setgid
粘着位 1(其他人)
>用t表示:如果一个权限为777的目录具有粘着位,每个用户都可以在这个目录下创建文件,但是只能删除自己是所有者的文件 >授于粘着位权限【chmod o+t】【1777】 #t的标识位是1,并在第一位
查找setuid与setgid程序
find / -perm -4000 -o -perm -2000
组
1、groupadd xxx #添加组 2、/etc/groupadd #组文件——组名:密码位:组ID:用户列表 3、groupdel xxx #删除组 4、groupmod -n xxxnew xxx #修改组名xxx为xxxnew 5、gpasswd #管理组内用户 6、grpconv与grpunconv #与passwd和shadow文件转换方法相同【命令为:pwconv与pwunconv】 7、$newgroup xxx #切换到一个组(有可能需要输入密码,当组设置了密码时) 8、groups xxx #查看xxx的所属组 9、id #查看用户的详细信息
将用户添加到组中
usermod -G 组 用户名 #上下命令为:添加用户为所属组 gpasswd -a 用户名 组 #上下命令为:添加用户为所属组
改变文件或目录权限
chmod g+rwx xxx #改变xxx的组权限 chmod u+rwx xxx #改变xxx的用户权限 chmod o+rwx xxx #改变xxx的其它人权限
改变文件或目录的所属组
chgrp 组 xxx #将xxx改变为组中
附
$finger username #显示用户username的信息【有些系统不支持】
$who #显示当前登陆用户 root tty1 2016-07-05 11:09 (:0) root pts/3 2016-09-27 15:33 (10.70.12.249) root pts/4 2016-09-27 16:45 (10.70.12.249)
[root@localhost ~]# who am i #查看当前用户信息 root pts/4 2016-09-27 16:45 (10.70.12.249) [root@localhost ~]# whoami root
[root@localhost ~]# useradd test #添加用户test和同名的组 [root@localhost ~]# passwd test #修改或添加密码 Changing password for user test. New password: BAD PASSWORD: it is too short BAD PASSWORD: is too simple Retype new password: passwd: all authentication tokens updated successfully.
【su与su -的区别】 [root@localhost ~]# su test [test@localhost root]$ #切换到test用户 [root@localhost ~]$ echo $PATH #还是root的path [test@localhost root]$ exit [root@localhost ~]# #切换到root用户 [root@localhost ~]$ su - test #切换用户和环境变量 [root@localhost ~]$ echo $PATH #切换到test的环境变量
【tty与pts】 tty是本地登录 pts是远程登录
相关文章推荐
- Linux socket 初步
- Linux Kernel 4.0 RC5 发布!
- linux lsof详解
- linux 文件权限
- Linux 执行数学运算
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- Scientific Linux 5.5 图形安装教程
- 网易云音乐8亿用户背后的伤疤