linux用户和权限管理

目录:

一、用户相关

配置文件、命令(groupadd、groupmod、groupdel、useradd、usermod、userdel、passwd、gpasswd、newgrp)

二、权限相关

命令(chmod、chown、chgrp、umask),额外(id、su)

三、杂项

随笔记录

用户权限管理单从字面上就能明白是什么,而且大致也就是这么个意思。而只要是从事电脑方面工作的人也都用的到,我想谁也不想自己管理的主机没事多些小东西吧。

用户只是系统上面用来标识一个身份的名称,而身份说白了就是权限。而组也是一样,只不过这是一个容器,可以给予用户一些额外的权限。

在我们的linux主机上面用户分为两类,管理员和普通用户。而普通用户又分为两大类,系统用户和可登录用户。

系统用户一般都是一些服务类程序所使用的,它不能用来登录系统。一个程序使用一个用户,这样可以保证不同的服务程序所拥有的权限都是最小的,防止这个程序会反过来对付我们自己。

而登录用户也就是我们自己用的了。

也分为系统组与普通组,不过其实也没有什么区别,只不过默认的配置文件中对它们的GID的编号起始和结束不同。

站在用户的角度来看,分为基本组和附加组,区别就我个人知道的就只有创建文件的时候,文件属组是基本组。  而对于权限都是一样的,用户加入一个组就拥有了这个组的权限。

在说各种管理权限的命令之前先来看看权限是如何生效的吧。在linux上面一切皆文件,所以文件的权限是至关重要的,那么一个进程对于文件的操作能否生效就取决于这个了(暂时还没有接触过用户的朋友可以先略过去,回头再看这个):

进程安全上下文:

进程的属主与文件的属主是否相同;如果相同,则应用属主权限;
否则,则检查进程的属主是否属于文件的属组;如果是,则应用属组权限;
否则,就只能应用other的权限;

以下是一些个人的理解,如果有错误还请各位朋友或老师提醒一下,先谢谢了。

1、运行中的进程也有其属主和属组的(发起者和所属的基本组,创建文件的时候就是这个属主和属组了),可以用ps ax -opid,user,group,command 来查看命令的属主和属组

2、进程的属主和属组是由这个进程的发起者来决定的。如:sst用户用cat查看一个文件,cat进程的属主和属组就是sst这个用户和所属的基本组。但是访问这个文件的时候权限模型不是这样的。

3、进程对文件所拥有的权限取决于有效的属主和属主所属的所有组。

5、在进程访问这个文件的时候,文件系统会跑出来对比双方的权限:首先进程的属主与文件的属主是否相同;如果相同,则应用属主权限,否则,则检查进程的属主是否属于文件的属组;如果是,则应用属组权限;否则,就只能应用other的权限;(在这里我犯了一个很离谱的错误:在属组部分理解成了进程的属主是否是文件的属组,一个‘属于’一个‘是’真是天壤之别啊)

为了防止我再犯这种错误:

star发起的进程的属主也就是star, 在上面就是star是否属于文件abc123的属组,很显然star是属于abcd这个组的。

一、用户相关:

配置文件


/etc/passwd


用户相关信息


/etc/shadow


用户安全相关信息,包括密码


/etc/group


组相关信息


/etc/gshadow


组安全相关信息,包括密码


/etc/login.defs


Shadown文件中默认的一些设置


/etc/default/useradd


创建用户时的默认的设置,如家目录、shell、邮件、skel(就是下面这个)。useradd  -D的设置就会写入这个文件


/etc/skel/


新创建的用户,家目录中存在的文件默认就是从这个目录复制的。


/etc/shells


当前系统上安全的shell列表。

简单介绍一下前四个文件的内容格式:

1、/etc/passwd

sst:x:4004:4004::/home/sst:/bin/bash

用户名:密码占位符:UID:GID:注释信息:家目录:shell

2、/etc/shadow

abc:!!:16778:0:99999:7:::

用户名:加密后的密码:最近一次修改时间:密码最短使用期限:密码最长使用期限:警告时间:非活动时长:过期时间:保留字段

1.        如果此段是以!开头表示此用户是被锁定的。加密后的密码由三部分组成,由$分隔:

l  1-6的数字表示加密算法(md5,sha1,sha224,sha256,sha384,sha512),从左到右1-6。CentOS5上面好像是md5来着,而6和7用的sha512的。

l  salt,加点盐。加了防止两个用户是一样的密码的情况,这样加密后的字符串也是一样的,一个用户看到另一个用户跟自己的字符串一样,也就知道那个用户的密码了。

l  密码与salt组合在一起加密所生成的字符串。

2.        最近一次修改时间:是从1970年1月1 日到上次修改密码的时间之间所经过的天数,如果为0表示此用户在下次登录的时候必须要修改密码。一般过于创建新用户,让用户登录成功以后修改密码。

3.        密码最短使用期限:表示两次修改密码的最短间隔,可能是为了防止一直修改密码把密码历史转一圈以后再重新使用原来的密码。为0表示不限。

4.        密码最长使用期限:表示两次修改密码的最长间隔。

5.        警告时间:表示在密码快要过期之前的多少天开始警告用户修改密码。

6.        非活动时长:也可以称为宽限时间。表示在密码过期以后,还允许用户登录的时间,只不过在这段时间里登录系统以后就必须要修改密码才能使用系统。

7.        过期时间:表示一个用户的过期时间。主要用于临时用户的,如一个临时用户最多也就使用系统1个月,就可以设置上过期时间,到时自动禁用用户。

3、/etc/group

sst:x:4004:

组名:密码占位符:GID:额外的成员列表。

额外的成员列表是指以此组为附加组的用户,基本组不在这里显示。

4、/etc/gshadow

sst:!::

组名:加密后的密码:用户组管理者:额外的成员列表。

用户相关命令

参数可能有点多,但有些都是通用的,一通百通啊。

1groupadd:创建组

groupadd[options] group

常用选项:

-gGID:指定GID,默认是根据上一个组的GID号加1来计算的。

-r :创建系统组。

例:创建一个mariadb系统组,gid为306。

[[email protected]~]# groupadd -r -g 306mariadb

[[email protected]~]# tail -1 /etc/group

mariadb:x:306:

2groupmod:修改组属性

groupmod[options] GROUP

常用选项:

-gGID:修改GID;

-nnew_name:修改组名;

例:发现系统有mysql组了,想把上面的mariadb组改成apache组,gid也改成80。

[[email protected]~]#  groupmod -n apache -g 80 mariadb

3groupdel:删除组

groupdel[options] GROUP

命令很简单就不多写了。

4useradd:创建用户

常用选项:

-u,--uid UID:指定UID;

-g,--gid GROUP:指定基本组ID,此组得事先存在;

-G,--groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;

-c,--comment COMMENT:注释信息;

-d,--home HOME_DIR:指定家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件;

-s,--shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;

-r,--system:创建系统用户;

-f,--inactive INACTIVE:非活动时间,宽限时长。

例:创建apache用户,组为apache,系统用户,指定UID为80,shell为/sbin/nologin。

[[email protected]~]# useradd -g apache -r -s/sbin/nologin -u 80 apache

[[email protected]~]# id apache

uid=80(apache)gid=80(apache)groups=80(apache)

注意:创建用户时的默认设定在配置文件/etc/login.defs

useradd -D:显示创建用户的默认配置;

useradd-D [options]: 修改默认选项的值;

修改的结果保存于/etc/default/useradd文件中;

[[email protected]~]# useradd -D

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/csh

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes

我这里做实验的时候把shell给改了,现在我想改回/bin/bash,并且把非活动时间启用,值为3天。

[[email protected]~]# useradd -D -s /bin/bash-f 3

[[email protected]~]# useradd -D

GROUP=100

HOME=/home

INACTIVE=3

EXPIRE=

SHELL=/bin/bash

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes

[[email protected]~]# useraddrt            #我这里创建一个用户看看。

[[email protected]~]# grep"^rt\>" /etc/passwd

rt:x:4006:4006::/home/rt:/bin/bash           #shell为/bin/bash。

[[email protected]~]# grep"^rt\>" /etc/shadow

rt:!!:16781:0:99999:7:3::                                   #非活动时间为3

5usermod:修改用户属性

常用选项:

-u,--uid UID:修改用户的ID为此处指定的新UID;

-g,--gid GROUP:修改用户所属的基本组;

-G,--groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖,一般与-a同用。

-a,--append:与-G一同使用,用于为用户追加新的附加组;

-c,--comment COMMENT:修改注释信息;

-d,--home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;一般与-m同用。

-m,--move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;

-l,--login NEW_LOGIN:修改用户名;

-s,--shell SHELL:修改用户的默认shell;

-L,--lock:锁定用户密码;即在用户原来的密码字符串之前添加一个"!";

-U,--unlock:解锁用户的密码;

例:想为apache用户添加一些注释信息,并且添加附加组mysql.

[[email protected]~]# usermod -c "thisis a system user" -a -G mysql apache

[[email protected]~]# id apache

uid=80(apache)gid=80(apache)groups=80(apache),27(mysql)             #附加组mysql,apache原来没有附加组,-a选项可以不用。

[[email protected]~]# grep ‘^apache\>‘/etc/passwd

apache:x:80:80:thisis a systemuser:/home/apache:/sbin/nologin      #注释信息

注意:UID正常情况下不要改,除家目录以外的文件的属主属组不会随用户的修改而修改。

有些修改需要被修改用户退出登录。

6userdel:删除用户

userdel[options]LOGIN

常用选项:

-r:删除用户时一并删除其家目录;

7passwd:用户密码相关设置

passwd [-k][-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays][-iinactivedays] [-S] [--stdin] [username]

使用方式:

(1) passwd:修改用户自己的密码;

(2)passwdUSERNAME:修改指定用户的密码,但仅root有此权限;

常用选项:

-l,-u:锁定和解锁用户;

-d:清除用户密码串;

-e :使某用户密码过期,也就是说用户下一次登录就必须要修改密码了;

-iDAYS:非活动期限;

-nDAYS:密码的最短使用期限;

-xDAYS:密码的最长使用期限;

-wDAYS:警告期限;

--stdin:可获取标准输入,如: echo"密码" | passwd 用户名 --stdin。 一般在脚本中用到。

一般的操作我想朋友们都会,就不多说了。下面就举个不常用到的例子来结束这个命令吧。

例:sst用户的工作安全非常重要,要让sst用户下次登录就必须修改密码,并且最长使用期限设置为10天,警告为过期前4天开始。

原来的信息:

[[email protected]~]# grep ‘^sst\>‘/etc/shadow

sst:$6$wiNNKgmB$uwOpj5oEnRzk.QuiBmVpIg1B4WC9ebFcy8TSwK1T0BjsMNNWXUpfwU1W7/pTVlMM46OlAM9Sq9Mm545L2/xaL/:16781:0:99999:7:3::

修改:很多属不能同时设置,所以下面分开设置了。

[[email protected]~]# passwd -e sst

Expiringpassword for user sst.

passwd:Success

[[email protected]~]# passwd -x 10 sst

Adjustingaging data for user sst.

passwd:Success

[[email protected]~]# passwd -w 4 sst

Adjustingaging data for user sst.

passwd:Success

[[email protected]~]# grep ‘^sst\>‘/etc/shadow

sst:$6$wiNNKgmB$uwOpj5oEnRzk.QuiBmVpIg1B4WC9ebFcy8TSwK1T0BjsMNNWXUpfwU1W7/pTVlMM46OlAM9Sq9Mm545L2/xaL/:0:0:10:4:3::

#最近一次修改(0)表示用户下此登录必须要修改密码,然后依次是最短期限(0)、最长期限(10)、警告(4)、非活动(3)这里是因为上面我们把默认值给改成3了。

8gpasswd:组管理命令(可以用usermod命令来代替,所以一般过不到):

gpasswd[option] group

gpasswdGROUP 为组设置密码。

常用选项:

-aUSERNAME:向组中添加用户

-dUSERNAME:从组中移除用户,这个可能会用的到。

-r,--remove-password : 移除组密码。

例:添加用户sst到test组。

[[email protected]~]# gpasswd -a sst test

Addinguser sst to group test

[[email protected]~]# id sst

uid=4007(sst)gid=4007(sst)groups=4007(sst),5004(test)

移除:

[[email protected]~]# gpasswd -d sst test

Removinguser sst from group test

[[email protected]~]# id sst

uid=4007(sst)gid=4007(sst)groups=4007(sst)

9newgrp:临时切换指定的组为基本组:

newgrp[-] [group]

-: 会模拟用户重新登录以实现重新初始化其工作环境;

有时候可能会用到,临时的把自己的基本组改成别的。上面给组设置密码的功能,在这就可以用到了。

如果组本来就是用户的附加组,切换成基本组不需要密码。如果用户与某组本来就没有关系,而想要以此组为基本组的话。则需要输入此组的组密码。如果组没有密码是不能切换的,当然了root除外。

[[email protected]~]$ id

uid=4007(sst)gid=4007(sst)groups=4007(sst)context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

[[email protected]~]$ newgrp - test

Password:

[[email protected]~]$ id

uid=4007(sst)gid=5004(test)groups=4007(sst),5004(test)context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

[[email protected]~]$ touch aaa

[[email protected]~]$ ll aaa

-rw-r--r--.1 sst test 0 Dec 12 21:55 aaa

这里直接用id查看当前环境的,如果用id sst看sst用户的基本组还是sst。退出就直接用exit就可以了。

[[email protected]~]$ exit

logout

[[email protected]~]$ touch abcd

[[email protected]~]$ ll abcd

-rw-rw-r--.1 sst sst 0 Dec 12 21:49 abcd

二、权限管理:

权限分三部分,分别对于属主(owner/user)、属组(group)和其它用户(other)而言的,而每一部分也分为3位,分别是读、写、执行。

上面画线的部分就是权限的表示。从左到右分别是属主、属组和其它用户的3位权限。

每一位表示权限的符号,要么为空,要么就是那个符号,不会变成别的。

r:readable, 读

w:writable, 写

x:excutable,执行

对于文件而言各种权限的效果:

r:可获取文件的数据;

w: 可修改文件的数据;

x:可将此文件运行为进程;

目录:

r:可使用ls命令获取其下的所有文件列表;

w: 可修改此目录下的文件列表;即创建或删除文件;

x: 可cd至此目录中,且可使用ls-l来获取所有文件的详细属性信

我们来看看下面这两个文件的。

第一个文件权限也就是属主可读写,属组可读,其它用户可读。第二个文件属主可读写执行,属组可读可写,其它用户可读可写。

因为这个权限只有两种状态,有或没有。所以可以用二进制1或0来表示。上面的权限用二进制排列也就成了:

第一个文件:11_1__1__

第二个文件:1111_11_1

而即然每一部分都是由3位组成,而且互不冲突。我们就可以更简洁的用8进制数来表示每一部分的权限。

r所在位置为4,w所在位置为2,x所在位置为1,我想只要知道二进制转换,这都不用解释。 权限也就可以这样表示了:

第一个文件:644

第二个文件:755

命令相关

1、chmod:修改文件权限

chmod[OPTION]... MODE[,MODE]... FILE...

chmod[OPTION]... OCTAL-MODE FILE...

chmod[OPTION]...--reference=RFILE FILE...

注意:用户仅能修改属主为自己的那些文件的权限;

常用选项:

-R 递归更改子目录和所有文件

(1) MODE表示法:

在第这一种用法中,每一部分所表示的来访者都有一个字母来表示:

a 代表所有用户,u 代表所有者,g 代表属组, o 代表其他用户。 可以直接用 + - = 来给文件添加权限(r,w,x)。

如: chmod g+w,o+wfile1 file2  为属组和其它用户在file1和file2 文件上添加 写权限。

例如:属组用户可读写,其它用户没有权限。我这里因为原来其它用户就只有r权限,所以就直接减去了。

[[email protected]]# chmod g=rw,o-rindex.html

[[email protected]]# ll

total0

-rw-rw----1 root root 0 Dec 12 23:58index.html

如果想让其它用户有读的权限就 o+r就可以了。

(2) 数字表示法(八进制表示法)

这里就用到我们上面说的八进制了。

如:

chmod 777file  属主,属组和其他用户都是读写执行权限,

chmod 755file  属主读写执行,属组和其它用户可读可执行。

例:

[[email protected]]# chmod 644 index.html

[[email protected]]# ll

total0

-rw-r--r--1 root root 0 Dec 12 23:58index.html

(3) 参照其它文件的权限

chmod[OPTION]... --reference=RFILE FILE...

这个也不用多做解释吧。直接上例子。

[[email protected]]# ll

total0

-rwxr-xr-x1 root root 0 Dec 13 00:29dex.html

-rw-r--r--1 root root 0 Dec 12 23:58index.html

例:以index.html做参考,修改dex.html的权限。

[[email protected]]# chmod--reference=index.html dex.html

[[email protected]]# ll

total0

-rw-r--r--1 root root 0 Dec 13 00:29dex.html

-rw-r--r--1 root root 0 Dec 12 23:58index.html

2、chown:文件属主属组修改。

chown[OPTION]... [OWNER][:[GROUP]] FILE...

chown[OPTION]... --reference=RFILE FILE...

注意:仅管理员可以修改文件的属主和属组;

常用选项:

-R 递归修改

使用:

如:把home和所有子目录和文件的属主和属组都改成sst.

chown -R sst:sst/home

只改某个文件的属主:

chownstarfile_name

只改某个文件的属组:

chown :star file_name

中间的:冒号也可以改成.句号(英文标点)

而--reference跟chmod都是一样的使用方式。

3、chgrp:修改属组

chgrp[OPTION]... GROUP FILE...

chgrp[OPTION]... --reference=RFILE FILE...

常用选项:

-R 递归修改。

[[email protected]]# chgrp testindex.html

[[email protected]]# ll

[[email protected]]# ll index.html

-rwxr-xr-x1 root test 117616 Dec 13 00:43index.html

4、umask: 显示和修改umask权限掩码

umask为文件的权限掩码,遮罩码;

创建文件时,所生成的文件权限是由默认最高权限减去权限掩码的权限得出来的。

一般文本文件默认最高权限是0666可读可写,文件默认是不可执行的。如果减得的结果中有执行权限,则需要将其加1;目录是0777可读可写可执行,不可执行的话将打不开目录。

umask:查看当前umask

umask MASK: 设置umask

例如:

[[email protected]]# umask

0022

[[email protected]]# umask 007

[[email protected]]# umask

0007

第一位的0是一种特殊权限,此外不用管它。

注意:此类设定仅对当前shell进程有效,如想永久生效需要放到环境变量中,/etc/profile这个环境文件中有关于umask的设定。

我们来试试umask的作用。

[[email protected]]# umask

0007

[[email protected]]# touch a

[[email protected]]# ll a

-rw-rw----1 root root 0 Dec 13 01:30 a

666的权限去掉007,注意权限可没有负数之说。这只是一种形式,表示去掉其它用户的读写执行权限。以这个掩码创建的应该是660的文件。所以a文件才是属主属组可读写的权限。

那么我们再来改一下这个umask试试。

[[email protected]]# umask 035

[[email protected]]# umask

0035

现在这个情况666去掉035结果是631,但是这个结果中属组和其它用户中是有执行权限的,所以属组和其它用户会加1。结果是642。

[[email protected]]# touch b

[[email protected]]# ll b

-rw-r---w-1 root root 0 Dec 13 01:40 b

(我们这里权限有点诡计哈,其它用户可写却不可读,不过我们只是在做实验,实际环境可不会这么诡异。)

其实掩码的功能本来就是为了去掉某些权限,所以这样想的话上面的5就表示读和执行的权限。而去掉读和执行以后就只剩写了。

如果朋友们看着眼晕就只要记住有执行权限就加1就可以了。

额外命令:

id命令:显示用户的真和有效ID;

id[OPTION]... [USER]

-u: 仅显示有效的UID;

-g: 仅显示用户的基本组ID;

-G:仅显示用户所属的所有组的ID;

-n: 显示名字而非ID;

su命令:switch user

登录式切换:会通过读取目标用户的配置文件来重新初始化

su -USERNAME

su-l USERNAME

非登录式切换:不会读取目标用户的配置文件进行初始化

suUSERNAME

注意:管理员可无密码切换至其它任何用户;

常用选项:

-c ‘COMMAND‘:仅以指定用户的身份运行此处指定的命令;

例:这里的 - 相当于以sst重新登录了,如果直接touchfile5,文件会创建到sst的家目录去。

[[email protected]]# su - sst -c"touch /tmp/file5"

[[email protected]]# ll file5

-rw-rw-r--1 sst sst 0 Dec 13 02:02 file5

这里还有一些重要的东西没有写,如:facl, selinux, SUID SGID SBIT, chattr之类的。

以后有机会再加入吧。

三、杂项

1、执行权限,如果没有执行权限,目录是打不开的。

2、对目录有写权限,对文件没有写权限的情况下,用vim可以强制覆盖,相当于是把原文件删除以后又建立了新的文件。(属主属组都会变成新的用户)

如果对原文件可读,VIM在读取文件的时候,数据就已经在内存中的。强制覆盖没有权限的原文件就是相当于拿这些数据新建了原文件。

但是用echo重定向是不可以的,因为它是直接对原文件的操作。

3、在目录只有执行权限的情况下,直接指定打开目录下文件的完整路径,也是可以打开的。

用以记录关于权限的问题。先就这几个,以后可能会再加。

先就这样吧,没有什么深的东西,就是命令多了点,不过参数也就一部分常用到,其它的用到的时候man一下就可以了。

里面难免会有一些错误的地方,如果发现还望朋友可以指导一下,一点点建议也是很大的帮助。谢谢了。

时间: 2024-08-07 17:02:27

linux用户和权限管理的相关文章

linux用户及权限管理

[文件管理.管道.用户及组管理.用户及权限管理]\用户及组管理 用户与组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也可以帮助用户组织文件,并为用户提供安全性保护.每个用户账号都拥有一个惟一的用户名和各自的口令.用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录.实现用户账号的管理

实验03 Linux用户和权限管理

一.实验目的 熟悉Linux的用户和权限管理 二.实验环境 CentOS 6.5系统. 三.实验内容 1. 用户的添加.删除.修改 2. 用户组的添加.删除.组成员管理 3. 文件和目录的权限和权限掩码设置 4. 文件和目录的所有者和属组设置 5. 特殊权限的设置 四.实验步骤: (1) 查看/home目录下各目录的权限,了解普通用户主目录的权限设置特点 命令:_ls –ld /home_ (2) 查看当前用户默认权限掩码 默认权限掩码: _umask(0022)_ (3) 创建文件stufil

Linux用户及其权限管理命令

/etc/passwd: 用户名:密码:UID:GID:注释:家目录:默认shell /etc/group: 组名:密码:GID:以此组为其附加组的用户列表 /etc/shadow: 用户名:密码:最近一次修改密码的时间:最短使用期限:最长使用期限:警告时间:非活动时间:过期时间: 用户管理: useradd,userdel,usermod,passwd,chsh,chfn,finger,id,chage,pwck 用户基本信息管理: # useradd [options] USERNAME  

详解Linux用户及权限管理

用户标识(userID):范围是0~65535 管理员:0 普通用户:1~65535 系统用户:1~499(CentOS 6).1~999(CentOS 7) 登录用户:500~60000(CentOS 6).1000~60000(CentOS 7) 人能够快速识别字符,而电脑能够快速识别数字(用户标识),然而系统存在一个名称解析库/etc/passwd.能快速从username转换成userID 登录系统时,需要输入账号和密码.与事先存储的信息做比较.需要在/etc/passwd查找到user

Linux 用户及权限管理

一·什么是用户 用户:是能够获取系统资源的权限的集合 Linux做为一个多任务,多进程的操作系统,必然会出现多个用户同时登陆的情况,做为运维人员来说,用户管理是日常重要的工作内容之一.Linux中用户按照其性质划分可以分为以下几种: 超级用户(root),拥有至高无上的权利,具有使用系统所有权限的能力: 系统用户,为了保障系统运行的用户,一般不提供密码登录系统: 普通用户,即一般用户,其使用系统权限通常受很大限制: UID:系统识别用户的ID标识: 超级用户(root)的UID为0, 系统用户的

linux用户和文件目录管理

Linux用户及权限管理 用户管理 多用户多任务的操作系统 用户类型 管理员用户 root 普通用户 系统用户/程序用户 用户相关的文件: /etc/passwd 用户信息 格式: 用户名:x:UID:GID:说明信息:SHELL UID: 1000---60000 0---999 系统用户 SHELL: /bin/bash 默认 /sbin/nologin 系统用户 /etc/shadow 用户密码信息 用户: 基本组 附加组 用户userA -----> 用户组userA;    caiwu

【linux相识相知】用户及权限管理

linux系统是多用户(Multi-users)和多任务(Multi-tasks)的,这样的目的是为了一台linux主机可以给很多用户提供服务同时运行多种服务,但是我们是怎么区分每个用户呢?作为一个管理员我对linux系统权限有哪些?作为一个普通的用户又可以对linux系统有哪些操作呢?这里就牵扯到了linux的用户类别和权限管理.本次博客就用户和权限管理作出详细的解释. 用户和组类型 在linux系统中,有着用户和组着两个概念,用户是被包含在组里面的. 用户可以分为以下2中类别: 管理员:也就

Linux中的用户及权限管理

用户及权限管理 Linux具有Muliti-task(多任务)Muliti-Users(多用户)的环境. 用户:为了保护所有使用计算机者的权益不受到损害,所以要实现资源的使用隔离机制,为了实现资源的使用隔离机制,就要标识每一个使用者,而这每一个使用者就是用户. 用户ID:每一个使用者的唯一标识,计算机用来识别使用者. 用户密码:用户的认证手段.Authenticationg(认证),Authorization(授权),Auditiong(审计) 3A 用户类别:分为管理员和普通用户,普通用户又分

初学linux的用户和权限管理

为了满足多人在同一台计算机上进行创建,使用及管理文件等操作,计算机系统为每个使用者提供了一个独一的标识,这个标识就是人们常说的用户. 但为了避免多个用户同时使用一个或多个文件而造成文件损坏,系统又为每个登入的用户根据自身需求给予对文件读写和运行的权限设定,系统通过用户登入的ID和密码进行身份认证,审核并授权给用户相对应的权限,于是又将用户分为管理员用户,普通用户和其它用户. 下面我们来看看在linux中管理员用户和普通用户最明显的区别. 如上图中我们以管理员root创建了一个名为cat的用户,也