超管和普通用户
默认登录的是普通用户权限
显示 $ 符
超管显示#符
从普通用户切换超级用户权限:
sudo su
从超级用户切换到普通用户
su username
切换用户
su username
退出用户
终端输入exit或logout或使用快捷方式ctrl+d,可以退回到原来用户,其实ctrl+d也是执行的exit命令
查看id
id uesrname
用户组
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。一个用户可以同时存在多个用户组。
切换用户
su 用户名
新增用户组
groupadd 选项 用户组
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
例:groupadd -g 101 group2
此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101。
删除用户组
groupdel 用户组
修改用户组
groupmod 选项 用户组
常用的选项有:
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
例:groupmod –g 10000 -n group3 group2
此命令将组group2的标识号改为10000,组名修改为group3。
与用户账号有关的系统文件
/etc/passwd
# cat /etc/passwd
root:x:0:0:Superuser:/:
daemon:x:1:1:System daemons:/etc:
bin:x:2:2:Owner of system commands:/bin:
其格式和具体含义如下:
用户名:口令:用户标识号(UID):组标识号(GID):注释性描述:主目录:登录Shell
/etc/group
用户组的所有信息都存放在/etc/group文件中
其格式和具体含义如下:
组名:口令:组标识号(GID):组内用户列表
/etc/shadow和/etc/gshadow
影子文件(一个是用户的,一个是用户组的),存放密码
shell区别
三种shell
1./bin/bash
2./usr/sbin/nologin,系统自己创建的用户的shell
3./bin/sh 我们创建用户的时候的shell
bash在命令框会有/home/用户名
sh只有/根目录
cat /etc/shells
查看所有shell
chsh
切换shell
查看用户
whoami 查看当前用户
who 查看初始登录计算机的用户
用usermod修改用户组和shell
usermod -g 用户组名 用户名
修改用户初始组
usermod -G 用户组名1,用户组名2... 用户名
修改用户所有附加组
usermod -s shell名 用户名
修改shell
文件权限管理
权限意义
在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。
当为 d 则是目录
当为 - 则是文件;
若是 l 则表示为链接文档(link file);
若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
若是 c则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。
其中, r 代表可读(read)、 w 代表可写(write)、 x代表可执行(execute)。
对于文件夹来说,r(可以列出目录的内容,仅限名字),w(可以在目录中创建、删除文件),x(可以进入目录、不能查看内容)要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。
用户权限没有但在所属组有权限的话,最后还是有权限的(取最高权限)
修改权限
只有文件所有者和超管可以修改
chmod,数字改变权限
文件的权限字符为: -rwxrwxrwx , 这九个权限是三个三个一组的!
其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下:
r:4 w:2 x:1
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx—
分数则是:
owner = rwx = 4+2+1 = 7 group = rwx = 4+2+1 = 7 others= — = 0+0+0 =0
所以等一下我们设定权限的变更时,该文件的权限数字就是 770。变更权限的指令 chmod 的语法是这样的:
chmod [-R] xyz 文件或目录
:
xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。
-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更
或者:
chmod u+x
,用户增加执行权限
chmod u-x
,用户减少执行权限
符号类型改变文件权限
u, g, o 来代表三种身份的权限,此外a 则代表 all,
我们需要将文件权限设置为 -rwxr-xr-- ,可以使用 chmod u=rwx,g=rx,o=r 文件名来设定:
chmod u=rwx,g=rx,o=r test1
// 修改 test1 权限
修改文件属组和属主
chgrp(change group):更改文件属组
chgrp [-R] 属组名 文件名
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
chown(change owner):更改文件属主,也可以同时更改文件属组
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名