linux的普通用户都什么权限

作者&投稿:昔泻 (若有异议请与网页底部的电邮联系)
linux下普通用户的权限~

你这个问题是不可能的,首先,linux的根目录下的所有文件对其它成员都是有“读”和“执行”权限的,如果你要是想让aa用户对除了自己用户目录外的任何目录文件都没有“rwx”权限,只能以root用户登录,然后# cd /,然后# chmod 700 -R ./。
但是这样一来,你整个系统的文件目录权限都变了。

Linux下的用户可以分为三类:超级用户、系统用户和普通用户。
超级用户的用户名为root,它具有一切权限,只有进行系统维护(例如建立用户等)或其他必要情形下才用超级用户登录,以避免系统出现安全问题。
系统用户是Linux系统正常工作所必需的内建的用户,主要是为了满足相应的系统进程对文件属主的要求而建立的,系统用户不能用来登录,如bin、daemon、adm、lp等用户。
普通用户是为了让使用者能够使用Linux系统资源而建立的,我们的大多数用户属于此类。

linux的文件管理权限分为读、写和执行

文件权限:

-rwxr-xr-x.

共分为五个部分:

-:表示文件类型

rwx:用户属主的权限

r-x:用户属组的权限

r-x:其他用户的权限

.:是否启用facl

权限:
r:readable,读
w:wirteable,写
x:excuteable,执行

权限对文件的作用:
r:可获取文件的数据;
W:可修改文件的数据;
x:可将此文件运行为进程;

权限对目录的作用:
r:可使用ls命令获取其下的所有文件列表;
w:可修改此目录下的文件列表;即创建或删除文件,包括子目录。
x:可cd至此目录中;且可使用ls -l来获取所有文件的详细属性信息;有关Linux命令详细介绍,可根据下图所示进行查询。



Linux的用户在登录(login)之后,就带有一个用户身份(user ID, UID)和一个组身份(group ID, GID)。在Linux文件管理背景知识中,我们又看到,每个文件又有九位的权限说明,用来指明该文件允许哪些用户执行哪些操作(读、写或者执行)。
(参考Linux文件管理背景知识)

一般来说,Linux的用户信息保存在/etc/passwd中,组信息保存在/etc/group中,文件的每一行代表一个用户/组。早期的Linux将密码以名码的形式保存在/etc/passwd中,而现在则多以暗码(也就是加密之后的形式)的形式保存在/etc/shadow中。将密码存储在/etc/shadow中提高了密码的安全性,因为/etc/passwd允许所有人查看,而/etc/shadow只允许root用户查看。

进程权限
但是,在Linux中,用户的指令是在进程的范围内进行的。当我们向对某个文件进行操作的时候,我们需要在进程中运行一个程序,在进程中对文件打开,并进行读、写或者执行的操作。因此,我们需要将用户的权限传递给进程,以便进程真正去执行操作。例如我们有一个文件a.txt, 文件中为一个字符串:
Hello world!

我以用户Vamei的身份登录,并在shell中运行如下命令:
$cat a.txt
整个运行过程以及文件读取如下:

我们可以看到,整个过程中我们会有两个进程,一个是shell本身(2256),一个是shell复制自身,再运行/bin/cat (9913)。图中的fork, exec, PID可参看Linux进程基础。第二个进程总共对文件系统进行了两次操作,一次是执行(x)文件/bin/cat,另外一次是读取(r)文件a.txt。使用$ls -l 查看这两个文件的权限:
$ls -l /bin/cat
-rwxr-xr-x 1 root root 46764 Apr 1 2012 /bin/cat

$ls -l a.txt
-rw-rw-r-- 1 Vamei Vamei 14 Oct 7 09:14 a.txt
从上面可以看到(参考Linux文件管理背景知识),/bin/cat让所有用户都享有执行的权利,而Vamei作为a.txt的拥有者,对a.txt享有读取的权利。

让我们进入更多的细节 (The devil is in the details)。在进行这两次操作的时候,尽管用户Vamei拥有相应的权限,但我们发现,真正做工作的是进程9913。我们要让这个进程得到相应的权限。实际上,每个进程会维护有如下6个ID:
真实身份: real UID, real GID
有效身份: effective UID, effective GID
存储身份:saved UID, saved GID
其中,真实身份是我们登录使用的身份,有效身份是当该进程真正去操作文件时所检查的身份,存储身份较为特殊,我们等一下再深入。当进程fork的时候,真实身份和有效身份都会复制给子进程。大部分情况下,真实身份和有效身份都相同。当Linux完成开机启动之后,init进程会执行一个login的子进程。我们将用户名和密码传递给login子进程。login在查询了/etc/passwd和/etc/shadow,并确定了其合法性之后,运行(利用exec)一个shell进程,shell进程真实身份被设置成为该用户的身份。由于此后fork此shell进程的子进程都会继承真实身份,所以该真实身份会持续下去,直到我们登出并以其他身份再次登录(当我们使用su成为root的时候,实际上就是以root身份再次登录,此后真实身份成为root)。

最小权限原则
每个进程为什么不简单地只维护真实身份,却选择费尽麻烦地去维护有效身份和存储身份呢?这牵涉到Linux的“最小特权”(least priviledge)的原则。Linux通常希望进程只拥有足够完成其工作的特权,而不希望赋予更多的特权给它。从设计上来说,最简单的是赋予每个进程以super user的特权,这样进程就可以想做什么做什么。然而,这对于系统来说是一个巨大的安全漏洞,特别是在多用户环境下,如果每个用户都享有无限制的特权,就很容易破坏其他用户的文件或者系统本身。“最小特权”就是收缩进程所享有的特权,以防进程滥用特权。

然而,进程的不同阶段可能需要不同的特权。比如一个进程最开始的有效身份是真实身份,但运行到中间的时候,需要以其他的用户身份读入某些配置文件,然后再进行其他的操作。为了防止其他的用户身份被滥用,我们需要在操作之前,让进程的有效身份变更回来成为真实身份。这样,进程需要在两个身份之间变化。

存储身份就是真实身份之外的另一个身份。当我们将一个程序文件执行成为进程的时候,该程序文件的拥有者(owner)和拥有组(owner group)可以被,存储成为进程的存储身份。在随后进程的运行过程中,进程就将可以选择将真实身份或者存储身份复制到有效身份,以拥有真实身份或者存储身份的权限。并不是所有的程序文件在执行的过程都设置存储身份的。需要这么做的程序文件会在其九位(bit)权限的执行位的x改为s。这时,这一位(bit)叫做set UID bit或者set GID bit。

$ls -l /usr/bin/uuidd
-rwsr-sr-x 1 libuuid libuuid 17976 Mar 30 2012 /usr/sbin/uuidd

当我以root(UID), root(GID)的真实身份运行这个程序的时候,由于拥有者(owner)有s位的设定,所以saved UID被设置成为libuuid,saved GID被设置成为libuuid。这样,uuidd的进程就可以在两个身份之间切换。

我们通常使用chmod来修改set-UID bit和set-GID bit:

$chmod 4700 file

我们看到,这里的chmod后面不再只是三位的数字。最前面一位用于处理set-UID bit/set-GID bit,它可以被设置成为4/2/1以及或者上面数字的和。4表示为set UID bit, 2表示为set GID bit,1表示为sticky bit (暂时不介绍)。必须要先有x位的基础上,才能设置s位。


linux用户时间linux用户时间
linux下普通用户怎样才能拥有设置系统时间的权限?普通用户没有权限修改系统时间。下面是Copy过来的。讲的是程序如何获得root权限。最近在移植过程中,需要使用很多命令,而这些命令只能在获得超级用户即root权限才可以运行,于是查了很多资料没有很直白的方法可以实现.结合自己的实践,提出如下步骤,可以实现在任何...

linux怎样给普通用户设置权限
linux与用户权限设置:1、添加用户 首先用adduser命令添加一个普通用户,命令如下:adduser tommy \/\/添加一个名为tommy的用户 passwd tommy \/\/修改密码 Changing password for user tommy.New UNIX password:\/\/在这里输入新密码 Retype new UNIX password:\/\/再次输入新密码 passwd:all authentication token...

linux的普通用户放在哪个目录下
普通用户由普通用户的家目录,如果你在创建时没有指定家目录,普通用户默认是在\/home\/用户名 下面。如果当时指定了家目录,但是你忘了可以 cat \/etc\/passwd下你就会看到当时你指定的家目录。

linux终端中,$表示普通用户 #表示root 这两个符号是可以修改的 该怎么...
这里的人好像都不屑于回答这样的问题,不过作为一个新手,我原意把我的经验告诉给你:你应该在安装redhat linux时就配置好网络设置.如果你那时候没有设置,就进入到root用户,在终端下输入netconfig 回车,进入界面,应该可以看到你熟悉的内容,基本英文你应该懂吧.设置好之后,然后在终端里输入ping ***.***....

linux中root用户和普通用户的区别
root 用户在系统内是属于独一无二的超级管理员,(相当于windows 中的system最高权限)而普通用户在相关的操作中需要ROOT的许可。而root 用户可以拥有所有系统权限。就相当于一个国家的主&席 VS 国家总&理一样, 权限不一样。

在安装完成Linux系统后,系统自动创建管理员帐号是 。
【答案】:C Linux下有两种用户:root用户:超级权限者,系统拥有者,在Linux系统中有且只有一个root用户,它可以在系统中任何操作。在系统安装时所设定密码就是root用户密码。普通用户:Linux系统可以创建许多普通用户,并为其指定相应权限,使其有限地使用Linux系统。

linux中在普通用户中创建的文件在管理员用户用怎么查找?
可以使用 ls 命令和 find 命令进行查询。例如,您可以在管理员用户的命令行中输入以下命令:bashCopy codefind \/home -user <username> 其中,<username> 是普通用户的用户名。此命令会查找 \/home 目录及其子目录中由 <username> 创建的所有文件。或者,您也可以使用 ls 命令,例如:bashCopy codels ...

linux下为普通用户添加root权限
方法原理:修改 \/etc\/sudoers 文件,添加我们普通用户名,即可获得我们的root用户权限 完成之后保存退出 :wq!验证:登录到我们的普通用户 使用以下命令进行查看权限 权限查询详解:在这个过程中需要输入一次密码,用以验证自己的身份

以root用户和普通用户两种不同身份登陆linux,说出其中的不同
root进去后就拥有最高权限,可以修改删除系统文件、可以添加删除其他普通用户等,是拿来进行系统管理用的;普通用户的权限就受到限制,比如前面提到的都不能进行,一般是拿来进行平时日常使用的。基本上都是用普通用户登入系统进行操作,遇到需要特殊权限时,通过su或sudo暂时提升到root,完成任务后再降回普通...

linux 中普通用户访问\/etc\/shadow 的问题
首先你要明白root权限的用户是可以对任何文件进行操作的。这里就假设shadow的属性为r-- --- ---,即任何人对该文件没有操作权限,但是在这里,如果你是root用户,就可以访问。 假设你使用passwd修改命令,按照你说的普通用户可以修改密码(实际上只有root用户才能执行passwd),那么passwd的属性可能就是...

漳州市15215146188: LINUX系统里,我们一般用户的权限是?
贰注东菱: 日常使用的帐号不要放在root组,会有安全问题,只在管理时使用root权限,一般也是在普通用户的命令行里使用su命令来获取root权限,或者通过gksu这种图形化方式使必要的程序以root运行.

漳州市15215146188: 用户对Linux文件或目录都有哪些权限?
贰注东菱: 用户对文件或目录都有哪些权限? 四种:读、写、执行、没有权限 二、如何表示这四种权限? 如果用十进制数字表示,分别为: 4、 2、 1、0;如果用字符表示,分别为...

漳州市15215146188: linux 普通用户sudo 权限有哪些 -
贰注东菱: shell里输入 sudo passwd root 输入密码(密码不显示) 再输入su 即可取得root权限,并以root运行,shell里输入c ~ 回车,即可退回普通用户

漳州市15215146188: 简述RedHat Linux的用户种类和它们的权限. -
贰注东菱: 一般来说分为2类,系统用户和普通用户.默认系统用户:root 下面是建立用户的一点点介绍:./etc/passwd我们使用more查看一下这个文件 我们首先看第一行root这一...

漳州市15215146188: linux超级用户和普通用户 -
贰注东菱: 用最通俗的话来讲,root在linux里面拥有所有的系统权限,可以“畅行无阻”地修改所有系统文件和其他用户的文件,挂载文件系统等等的一系列操作,因为linux内核执行进程的过程中,首先检查进程所属,如果属于root则一切“放行”! 普通用户则有很大的限制,例如不能修改系统关键配置文件,想查看其他用户的文件则需要相应的权限,不能安装软件,甚至关机关机指令(shutdown或poweroff)都需要以root身份执行(sudo)

漳州市15215146188: Linux的几个特殊权限 -
贰注东菱: 1、setuid与setgid讲解 看一下系统中用到它的地方,以/etc/passwd和/usr/bin/passwd为例: 复制代码 代码如下:[root@Salve1 school]# ll /etc/passwd /usr/bin/passwd -rw-r--r-- 1 root root 2005 Apr 23 01:25 /etc/passwd -rwsr-xr-x 1 root root 23420 ...

漳州市15215146188: linux下的各种用户组分别有什么权限?
贰注东菱: 如果是root组,就拥有系统的最高管理权限.添加新用户一般不会加在这个组,而是创建一个和用户名一样名字的组,这样比较好,一般只有使用应用软件和在自己有权限的文件夹下进行文件操作.其实已经足够使用.其他组都是根据特殊需要而设置的不同组,有的权限一样,有的权限不同,不建议随便加新的用户到已经存在的组,除非你明确地知道自己是在做什么.

漳州市15215146188: linux上怎么提升普通用户的权限为管理员? -
贰注东菱: 1、添加用户,首先用adduser命令添加一个普通用户,命令如下:#adduser tommy//添加一个名为tommy的用户#passwd tommy //修改密码Changing password for user tommy.New UNIX password: //在这里输入新密码Retype new ...

漳州市15215146188: linux网站要什么权限 -
贰注东菱: su --是转换为root(前提是你要知道root的密码),sudo命令是普通用户执行root的权限的命令.

漳州市15215146188: linux 中用户权限具体有哪些,如何给新建的用户赋予创建目录的权限?
贰注东菱: 你好, 比如一个目录dir, 你的用户名hengyang, 执行下面命令就可以赋予用户创建目录的权限. 用root用户执行: chown hengyang.hengyang dir

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网