root对普通用户配置root权限的文件的权限是怎么规定的

博客分类:
其实我现在才知道linux系统对于用户权限管理比较严,在ubuntu下系统不允许root权限的用户进入图像界面系统。由于之前没弄过权限这个东西瞬间掉坑了了。
我是想修改一下root下的nginx.conf那个文件,但是我没有权限所以想一劳永逸的解决这个问题所以就想到了该用户权限的为题。
我改的步骤是这样都:
(1)先在终端中进入root用户:sudo su
(2) 然后设置root密码:passwd root , 输入root密码,确认root密码。
(3)在终端中输入命令:sudo gedit /etc/passwd 就能以root用户的权限打开打开 /etc/passwd文件并修改它了。(其实我想打开nginx.conf用这个就行了何苦 费那么大劲啊啊啊啊)
(4)在这个文件的最下面找到你的用户名将两个都改成0即可
比如我的是zhouchang:x:
改完就成立zhouchang:x:1:1
(5)保存注销
然后我就悲剧了
只能以guest登陆了其实这还缺少关键的一部:
(6)终端打开:sudo:sudo gedit /etc/lightdm/lightdm.conf
将这个文件的内容改为:
[seatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
greeter-show-manual-login=ture(这条命令是让你在进入界面的时候输入你的账号的那样就不会被默认的进入guest访问了)
allow-gues=false(这条命令是不允许guest登陆的)
忠告:希望广大群众最好还是不要瞎改/etc/passwd文件的好。
我现在进入不了自己的账号只能一其他方法解决了。
浏览: 7503 次
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'2009年4月 Linux/Unix社区大版内专家分月排行榜第三
2009年4月 总版技术专家分月排行榜第一
2009年11月 Linux/Unix社区大版内专家分月排行榜第一2009年6月 Linux/Unix社区大版内专家分月排行榜第一2009年4月 C/C++大版内专家分月排行榜第一2009年3月 C/C++大版内专家分月排行榜第一2009年3月 Linux/Unix社区大版内专家分月排行榜第一2009年2月 Linux/Unix社区大版内专家分月排行榜第一
2009年5月 Linux/Unix社区大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
用户及文件权限管理.docx 16页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:120 &&
用户及文件权限管理
你可能关注的文档:
··········
··········
用户和文件权限管理
一、用户管理 Linux是一个多用户多任务的分时操作系统,要想进入系统,必须有一个账号。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。 实现用户账号的管理,要完成的工作主要有如下几个方面:  · 用户账号的添加、删除与修改。  · 用户口令的管理。  · 用户组的管理。 1、Linux系统用户账号的管理 ? ? 用户账号的管理工作主要涉及到用户账号的添加、修改和删除。 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用,必须用passwd命令设置密码后方可激活。 ? ?(1)、添加用户帐户: ? ??useradd 选项 用户名 ? ? -c comment 指定一段注释性描述。   -d 目录指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。   -g 用户组指定用户所属的用户组。   -G 用户组,用户组指定用户所属的附加组。   -s Shell文件指定用户的登录Shell。   -u 用户号指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 ? ? 增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。 ? ? 例:# useradd –s /bin/sh –g op –G adm,root –c “new user” –d /home/public –m –u 100 Jack ? ? 添加用户Jack,创建用户主目录/home/public,用户ID为100,用户所属组为op,用户所属的附加组为adm和root,用户登陆shell为/bin/sh。 ? ?(2)、删除用户 ? ? 如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。删除一个已有的用户账号使用userdel命令,其格式如下: ? ??userdel 选项 用户名 ? ? 常用的选项是-r,它的作用是把用户的主目录一起删除。 ? ? userdel –r Jack ? ? 此命令删除用户Jack在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。 ? ?(3)、修改账号 ? ? 修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。 ? ??usermod 选项 用户名 ? ? 常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。 ? ??-l 新用户名??这个选项指定一个新的账号,即将原来的用户名改为新的用户名。 2、用户口令管理 ? ? 用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。   指定和修改用户口令的Shell命令是passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为: ? ??passwd 选项 用户名 ? ? 可使用的选项: ? ? -l 锁定口令,即禁用账号。   -u 口令解锁。   -d 使账号无口令。   -f 强迫用户下次登录时修改口令。   如果默认用户名,则修改当前用户的口令。 3、Linux用户组管理 ? ? 每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。   用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。 ? ? (1)、添加一个用户组 ? ??groupadd 选项 用户组 ? ? 可以使用的选项有: ? ??-g GID 指定新用户组的组标识号(GID)。   -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。 ? ? (2)、删除用户组 ? ??groupdel 用户组 ? ? (3)、修改用户组属性 ? ??groupmod 选项 用户组 ? ? 可以使用的选项有: ? ? -g
正在加载中,请稍后...在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
标签:至少1个,最多5个
由于 linux 是多用户操作系统,所以基于安全的考虑,需要具备保障个人隐私和系统安全的机制。因此在使用 linux 系统的时候,经常会出现权限的问题(比如: 删除文件、安装软件、运行应用等等),期初遇到这些问题的时候,大部分都使用sudo或者是sudo chmod 777 file(后面会讲解这个命令)来解决的。虽然这种方式可以解决问题,但是这样是不安全的,特别是在服务器上操作的时候,因为不是所有的文件和文件夹都可以被其它用户操作的,不是所有的用户都有root权限的,不是所有的应用都可以用root用户启动的。那么我们要如何正确的处理这些权限问题呢?那就让我们来学习一下 linux 权限相关的知识。
用户的权限
要确定一个用户对某个文件或文件夹是否具有相应的操作权限,先要明确该用户与文件或文件夹之间的关系。在 linux 系统中,定义了如下三种关系:
文件或文件夹的所有者 (owner):文件或文件夹的拥有者,开始创建文件或文件夹时为创建者。
组 (group):文件或文件夹所属的组, 开始创建文件或文件夹时为创建者的所属的组。
其他人 (other):除了文件或文件夹的所有者和文件或文件夹所属的组的其他成员,剩下的 linux 的用户。
因为在 linux 下的文件和文件夹都有读取(r)、写入(w)、执行(x)的操作,所以上面描述的每种关系的用户分别都可以赋予这些操作权限。操作权限介绍:
对普通文件的作用
对文件夹的作用
查看文件内容
列出文件夹中的文件(ls)
修改文件内容
在文件夹中删除、添加或重命名文件(夹)
文件可以作为程序执行
cd 到文件夹
文件或文件夹和用户的三种关系的基础操作权限
在 linux 使用ls -la命令可以查看文件夹内文件的属性,下面是我电脑上某个文件夹下文件的属性:
drwxr-xr-x 14 root root
drwxr-xr-x 23 root root
2 05:48 ..
drwxr-xr-x
2 root root
3 07:44 backups
drwxr-xr-x 17 root root
4096 Jul 22
2014 cache
drwxr-xr-x
2 root root
2 04:26 docker-registry
lrwxrwxrwx
1 root root
9 Feb 25 13:31 lock -& /run/lock
drwxrwxr-x 15 root syslog
3 07:44 log
-rw-r--r--
1 root root
3 18:47 test
上面的有九列数据,第一列数据表示和文件或文件夹相应关系用户的操作权限,第二列表示文件夹内文件和文件夹的总数量(包括文件夹本身),第三列表示文件夹或文件的拥有者,第四列表示文件或文件夹的所属的组,第五列表示文件或文件夹的大小,第六、七、八列表示文件或文件夹最后被修改的时间,第九列文件或文件夹的名字。
接下主要分析第一列的数据,在上面的信息中倒数第二行drwxrwxr-x,从左到右第一个字母表示文件系统对象的类别,这里d表示为目录(文件夹)。其它文件系统对象:
-(常规文件)、d(目录)、l(符号链接)、c(字符特殊设备)、b(模块特殊设备)、p(FIFO)、s(套接字)
drwxrwxr-x除出去第一个字母d后的rwxrwxr-x表示的是三种用户关系对文件或文件夹的操作权限。从左到右每三个一组,依次表示所有者权限、组权限、其他用户权限。每组的顺序均为rwx,如果用户有相应的操作权限就用相应的字母表示,如果不具有相应的操作权限就用-表示。比如: rwxrwxr-x表示文件或文件夹的所有者具有rwx(可读,可写,可执行)的操作权限,组用户也具有rwx(可读,可写,可执行)的权限,其他用户具有r-x(可读,可执行,没有可读)的操作权限。
特殊权限SUID、SGID、Sticky
在 linux 系统中还有三种与用户身份无关的三个文件权限属性。即SUID、SGID和Sticky。
SUID(Set User ID, 4):
该属性只对有执行权限的文件有效,对目录无效。执行具有SUID权限的程序时,引发的进程的所有者是程序文件的所有者,而不是启动程序的用户(除非二者是同一个人)。比如,如果一个程序的所有者是root且具有SUID属性,一个普通用户执行此程序时,如同root执行此程序一样。(请注意该属性对Shell脚本程序无效)该属性为一些特殊程序(如lpr)的启动带来了方便。但有时也带来了安全隐患:比如一个具有SUID属性的程序如果在执行时运行了一个shell,那么用户可以籍此得到系统的最高权限。SUID可用s表示,如:
$ ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 47032 Feb 16
2014 /usr/bin/passwd
SGID(Set Group ID, 4):
对于可执行文件,SGID与SUID类似,引发的进程的所有组是程序文件所属的组。对于目录,SGID属性会使目录中新建文件的所属组与该目录相同。SGID也可以用s表示,如:
$ ls -l /var
drwxrwsr-x
2 root staff
4096 Apr 10
2014 local
drwxrwxr-x 15 root syslog
4 19:57 log
Sticky, 1:
仅对目录有效。带sticky属性的目录下的文件或目录可以被其拥有者删除或改名。常利用sticky属性创建这样的目录:组用户可以在此目录中创建新文件、修改文件内容,但只有文件所有者才能对自己的文件进行删除或改名。如系统中的/tmp文件夹。在属性字符串中,通常用t表示。
drwxrwxrwt
8 root root
4 23:57 tmp
修改文件或文件夹对应用户的操作权限
在 linux 系统中,可以使用chmod命令来修改文件或文件夹对应用户的操作权限,chmod命令也有两种方式修改,一种是使用代表相应操作权限的字母简写表示,另一种是使用代表相应操作权限的数字表示。
使用简写字母
chmod语法参数格式: ugoa[rwxst]第一个字符是u、g、 o 或 a 中的一个(分别表示用户、组、其他人和所有人)。还可以选择添加(+)、删除(-)或设置(=)各种不同权限。
给文件或文件夹try的拥有者加可执行权限
$ sudo chmod u+x try
给文件或文件夹try的拥有者和组成员加可读可写权限
$ sudo chmod ug+rw try
给文件或文件夹try的拥有者和组成员除去可写权限
$ sudo chmod ug-r try
使用数字表示(八进制数)
为了简化表述,也可使用八进制数来表示权限。即用一个四位八进制数来表示,其中最高位表示特殊权限,随后的三位依次是所有者权限、组权限和其他人权限。每一个八进制位的权限数值是文件具有的相应权限所对应的数值之后,如:
0755=rwxr-xr-x=0(4+2+1)(4+0+1)(4+0+1)
数值权限的算法,比如rw-其实就是110的二进制,也就是0*2^0 + 1*2^1 + 1*2^2 = 6。有相应的权限就用1表示,没有相应的权限就用0表示。不过这种算法特殊权限不包含在内。
给文件或文件夹try的拥有者加rwx权限,组用户加r-x权限,其他用户r--权限
$ sudo chmod 0754 try
chmod命令也可以递归的修改文件夹下所有的文件的权限,如给 try 文件夹下得所有文件加上 0755 权限
$ sudo chmod -R 0755 try
批量只修改文件或文件夹权限
$ find -type d|xargs chmod 745
// 只修改文件夹权限
$ find -type f|xargs chmod 644
// 只修改文件权限
$ chmod 745 `find 路径 -type d`
// 只修改文件夹权限
$ chmod 644 `find 路径 -type f`
// 只修改文件权限
相应权限的数值:
rwx(7)、rw-(6)、r-x(5)、r--(4)、--wx(3)、-w-(2)、--x(1)、---(0)
suid: 符号s(4)
sgid: 符号s(2)
sticky: 符号t(1)
修改文件或文件夹的拥有者和所属的组
使用chown可以修改文件或文件夹的拥有者和所属的组。
将文件或文件夹try的拥有者修改成aikin,所属的组修改成adm
$ sudo chown aikin:adm try
和chmod一样,-R参数可以起到递归的作用
$ sudo chown -R aikin:adm try
创建组和用户
组相关操作:
创建一个try组
$ sudo groupadd
修改try组的名字为rename-try
$ sudo groupadd -n rename-try try
修改try组的名字为rename-try
$ sudo groupadd -n rename-try try
删除try2组
$ sudo groupdel
查看所有组
$ sudo cat /etc/group
用户相关操作:
创建用户test
在 linux 系统上虽然可以使用useradd或adduser来创建用户,但是这两个命令是有区别的。
使用useradd时,如果后面不添加任何参数选项,例如:$sudo useradd test创建出来的用户将是默认“三无”用户:一无Home Directory,二无密码,三无系统Shell。
使用adduser时,创建用户的过程更像是一种人机对话,系统会提示你输入各种信息,然后会根据这些信息帮你创建新用户。下面创建用户使用的是adduser命令:
$ sudo adduser test
Adding user `test' ...
Adding new group `test' (1002) ...
Adding new user `test' (1001) with group `test' ...
Creating home directory `/home/test' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for test
Enter the new value, or press ENTER for the default
Full Name []: test
Room Number []:
Work Phone []:
Home Phone []:
Is the information correct? [Y/n] y
$ sudo passwd test
// 修改用户密码
$ sudo usermod -d /home/test -G try2 test
// 将test用户的登录目录改成/home/test,并加入 try 组,注意这里是大 G。
$ sudo gpasswd -a test try
// 将用户 test 加入到 try2 组。
$ sudo gpasswd -d test try2
// 将用户 test 从 try 组中移除
删除用户test
$ sudo userdel test
查看所有用户
$ cut -d : -f 1 /etc/passwd
$ cat /etc/passwd |awk -F \: '{print $1}'
  了解 linux 用户操作权限,安全就掌握在手中。
3 收藏&&|&&24
你可能感兴趣的文章
7 收藏,1.2k
6 收藏,1.3k
恩,温习下,谢谢博主
恩,温习下,谢谢博主
分享到微博?
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。增加一个普通权限的用户并设置密码useradd test //*建立用户test*//passwd test //*设置用户test密码*//修改/etc/password文件找到以你建立的用户名开头的如下格式的那一行name:password:uid:gid:comment:home:shell把UID改成数字0保存然后执行service sshd restart
或者增加的时候直接赋予root权限
useradd -u 0 -o -g 0 test //*建一和root权限一样的帐号test*//说明:-u 0 就是建一个uid=0的帐号-o (注意是字母o,不是数字0)就是允许使用重复的id号-g 0 就是建一个gid=0的帐号test就是你建的帐号名
浏览: 242705 次
来自: 长沙
一个比较明显的问题:pwd:Print working dir ...
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
设置好之后打开页面出现undefined字样。需要刷新页面才能 ...
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'

我要回帖

更多关于 普通用户获取root权限 的文章

 

随机推荐