同时归类到 "Linux学习" 文集中。
一、Linux用户管理
1. 查看当前用户
$ who am i (查看当前用户信息)
$ whoami (仅查看当前用户名)
2. 关于who命令
参数 | 说明 |
---|---|
-a | 打印能打印的全部 |
-d | 打印死掉的进程 |
-m | 与who am i相同 |
-q | 打印当前登录用户数及用户名 |
-u | 打印当前登录用户的信息 |
-r | 打印运行等级 |
3. su、su-、sudo的区别
- su <user>可以切换到用户user(保留当前环境变量),执行时需要输入目标用户的密码(root权限组下则不需要密码)。
- su - <user>命令也是切换用户,同时环境变量也会跟着改变成目标用户的环境变量。
- sudo <cmd>可以以特权级别运行cmd命令,需要当前用户属于sudo组,且需要输入当前用户密码。
注:sudo能运行root的条件是用户属于sudo组。sudoer文件中配置用户有root权限。
显然第二点必须root用户才能完成。也就是说sudo不能凭空产生,而是由root用户创建可以sudo到root的用户。
- sudo su可以切换到root
- exit 或 ctrl+d可以退出当前用户
4. 增加用户
$ sudo adduser lilei 增加一个新用户lilei
增加用户需要sudo权限
$ ls /home 可以查看所有用户目录
5. 用户组
在 Linux 里面每个用户都有一个归属(用户组),用户组简单地理解就是一组用户的集合,它们共享一些资源和权限,同时拥有私有资源,就跟家的形式差不多,你的兄弟姐妹(不同的用户)属于同一个家(用户组),你们可以共同拥有这个家(共享资源),爸妈对待你们都一样(共享权限),你偶尔写写日记,其他人未经允许不能查看(私有资源和权限)。当然一个用户是可以属于多个用户组的,正如你既属于家庭,又属于学校或公司。
- 查看当前属于的用户组
$ groups shiyanlou
回显内容:
shiyanlou : shiyanlou
冒号前为用户名,冒号后表示该用户所属的用户组。
每次新建用户如果不指定用户组的话,默认会自动创建一个与用户名相同的用户组。
- 添加其他用户加入sudo用户组 (需要sudo权限)
$ sudo usermod -G sudo lilei
- 删除用户 (需要sudo权限)
$ sudo deluser lilei --remove-home #同时删除home下对应的目录
二、Linux文件权限
1. 查看文件权限
$ ls -l
- 查看某个目录的属性
$ ls -dl <目录名>
2. 修改文件所有者
$ sudo chown shiyanlou test.c
3. 修改文件权限
$ chmod 700 test.c #二进制法修改权限
或
$ chmod gou-rw #加减赋值操作
#g为group o为others u为user ; + -分别表示增加和去除相应的权限