用户、用户组
Linux是多用户操作系统,因此就有了用户、用户组的概念;
正确登录Linux后(无GUI的系统),就会进入一个自己的文件目录中,这个目录一般是/home/[username],其中[username]跟登录的用户名相同,
一般称这个目录为home目录。离开这个home目录后就进入了公共区域,公共区域中普通用户一般都是只读权限;
/etc/passwd文件查看用户
passwd文件用来存放用户的基本信息
// passwd文件 部分内容 root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:adm:/var/adm:/sbin/nologin
文件中每一行代表一个用户;每一行的结构如下:
用户名:密码:UID:GID:用户全名:home 目录:shell
解释:
1.密码用x代表,因为密码存放在/etc/shadow文件中
2.重要的是UID(user id),GID(group id);习惯上,0是给root的;1~499是给系统用户的;500以后是给普通用户的; 系统中第一个被添加的用户的UID,GID都是500
/etc/group文件查看组
group文件保存了文件组的配置信息;
//group 文件部分内容 root:x:0:root bin:x:1:root,bin,daemon
每一行代表一个用户组,结构如下:
组名:用户组密码:GID:用户组内的用户名
解释:
1.密码用x表示,用户组密码存放在/etc/gshadow文件中
2.用户组内的用户名 一个用户组这个可以有多个用户,用逗号分开
管理用户和组
Linux为用户、组的添加、删除、修改,提供了命令;这些命令就是对/ect/passwd和/etc/group文件的操作,
另外加一个/etc/shadow文件专门用来管理用户密码;
1.添加用户useradd( ubuntu中使用adduser比较好 )
useradd username //添加一个用户
password username //设置密码 这个过程没有回显
解释:
1.1执行命令时,系统会默认创建许多设置;
比如:UID,GID; 在/home目录下创建一个与用户名同名的目录; 设置shell为/bin/bash;
2.删除用户userdel
sudo userdel -r username //删除用户
解释:
2.1参数-r表示删除用户时,将/home/[username]目录也删除
3.修改信息usermod
用户组管理使用的命令是:groupadd,groupdel,groupmod,使用方法和用户管理相似;具体可以查看man;
sudo和su
1.sudo 普通用户具备一定的root特权
2.su 临时切换用户
su [usename] //不指定用户名,默认切换到root su username - //更改当前目录为目标用户目录 解释:
2.1如果su后面不加任何参数,默认root;
2.2输入密码时,输入的密码是目标用户的登录密码;
2.3参数-表示切换用户时,将当前所在目录也切换到对象用户的目录下;
3.根用户root的密码
在安装系统时(以Ubuntu为例),并没有指定root用户的密码;
在系统安装完成后,需要设置root密码;root默认密码是随机的,每次开机时都会随机产生一个;使用password命令设置密码;
sudo password root //设置root密码 su root //设置完成后,使用su命令切换到root用户下