linux下如何修改用户权限,使每个用户有不同的功能

我接到了个任务是管理网元账户,添加新的账户并做如下的分类:
1. 管理员:最高权限,可增、删、改、查“网元配置”和“用户帐号”
2. 操作员:可增、删、改、查“网元配置”,但不能管理其它“用户帐号”
3. 普通用户:只能查看“网元配置”,不能管理其它“用户帐号”
请问这个能否实现,我在网上搜了一下,我只知道把普通用户改成超级用户,也就是管理员用户。
那这个操作员用户和普通用户又是什么用户?
请各位高人赐教,谢谢

其实一楼已经说得比较详细了。我觉得你先弄清楚几个概念:操作系统用户、系统超级用户、系统普通用户、管理员角色、操作员角色、普通用户角色。
1、首先前面三个是存在于unix或linux上的可用于登录的用户
2、后面三个是逻辑概念,对应到操作系统上可能有多个操作系统用户,比如“我”和“你”可以是管理员,可以同时拥有系统超级用户的密码,但是我们可能都不能直接用系统超级用户远程登录,需要“我”自己的系统用户远程登录后su到超级用户
3、默认系统超级用户可以对其他系统用户进行操作,所以“谁”作为管理员,有两层含义:1)谁拥有超级用户密码;2)他们是否拥有各自的系统用户用于su到超级用户
4、其他非系统超级用户均不能管理其他用户,所以你所说的“操作员”和“普通用户”在linux和unix上就是非系统超级用户。
5、文件的权限靠用户owner和group进行限定和控制

因此你的需求是靠用户组和文件权限来控制,举个例子:
root是超级用户,组是system、dns
root可以作为管理员,该用户密码可以授权给管理员角色,管理员角色可以拥有一个操作系统用户,比如一个普通用户john,他的组是stuff)
普通用户bob 组是dns (可以作为操作员)
普通用户pop 组是stuff (可以作为你所说普通用户)

假如网元配置文件是dns.conf,它的权限是靠管理员角色(拥有john这个用户的人)进行设定的
他登录后进行设定:
$su - root
#chown root:dns dns.conf
#chmod 775 dns.conf
这样设定后,效果如下:
root用户,也即管理员可以修改该文件,可以管理用户bob和pop
bob用户,也即操作员,可以修改该文件,不可以管理root和pop用户,及其他所有用户
pop用户,也即普通用户,仅可以查看该文件,不可以管理用户root和bob用户,及其他所有用户
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-04
在/etc/下
有用户密码验证权限列表文件:
shadow、passwd文件

找到对应userid那一行,将userid那一列你的id改成0,然后强制保存退出。这时候你的这个用户就有超级用户权限了。改用户的groupid也可以这样改。
如果是改某个文件的属性,就比较简单了,直接用chmod命令就可以了,我一般直接后面接数字,如果要给rwx的权限,就给7,rw-,就是6,r--就是4(二进制的,对应x -1,w-2,r -4),比如要给某个文件用户自己rwx权限,用户group内 r-x的权限,其它人r--只读,那么用chmod命令就可以:
# chomd 754 <finename>
修改权限:

1)管理用户(user)的工具或命令;
useradd 注:添加用户
adduser 注:添加用户
passwd 注:为用户设置密码
usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
pwcov 注:同步用户从/etc/passwd 到/etc/shadow
pwck 注:pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;
pwunconv 注:是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;
finger 注:查看用户信息工具
id 注:查看用户的UID、GID及所归属的用户组
chfn 注:更改用户信息工具
su 注:用户切换工具
sudo 注:sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;
visudo 注:visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的;
sudoedit 注:和sudo 功能差不多。
般如果你修改用户本身的权限,也没有太多好改的,一般用户创建用户(useradd)之后,用户就会有一个默认或指定的 userid和groupid. 一般对UNIX系统下的文件,都分为“user自己、usergroup、其它user”可以“读、写、执行”三类,用ls -la可以看到,如:

# ls -l
-rwxr-xr-x 1 root bin 62528 Jan 23 2005 zip
其中r表示可以 read/读,w表示可以 write/写,x表示可以 execute/执行。
userid一般都是唯一的,但你可以修改自己user的group信息,以加入需要的用户组里面访问特定的文件。
groupadd :添加用户组;
groupdel :删除用户组;
groupmod :修改用户组信息
2)管理用户组(group)的工具或命令;
groupadd 注:添加用户组;
groupdel 注:删除用户组;
groupmod 注:修改用户组信息
groups 注:显示用户所属的用户组
grpck
grpconv 注:通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;
grpunconv 注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件。追问

谢谢你,但是可能我说的不是很清楚,如何添加用户并把它改为超级用户我是知道的。
但是现在的问题是如果修改其他两种用户我不是很明白,不知道有没有可能实现。

第2个回答  2013-08-04
什么是网元配置?追问

我是在linux系统上配置DNS服务器,网元配置就是针对这个DNS服务的配置,可以理解为对于某些相关文件的配置。
想要做的就是分不同的用户,超级用户可以有所有操作权限;操作员用户可以修改这个DNS配置,但是不能管理其他账户;而最低级别的是普通用户,只能查看DNS配置。
是这样的要求,我现在知道如果改为超级用户,但是其他两个我不太清楚应该怎么做。

追答

这种情况,一般是由sudo来实现。通过sudo可以配置指定用户对指定命令或文件访问。具体的sudo用法很长,网络上文章也很多。我就不贴了

linux下命令怎么修改用户
1. 增加当前用户权限:`chmod +wx filename`,这会向指定文件添加写(w)和执行(x)权限。2. 递归更改目录权限:`chmod -R 777 \/upload`,这个命令会将"\/upload"目录及其所有内容的权限设置为所有用户可读写执行。3. 改变文件所属用户组:`chgrp -R foldname zdz`,将指定文件夹foldname的用户...

linux下修改用户权限的方法
一般我们日常碰到要修改用户权限的,往往是要么修改一下用户的gorupid,通过上面命令可以改;要么是把普通用户改成具有超级权限的用户,这个一般自己不能直接改,只能是root或有root权限的用户才能帮你改,在\/etc\/passwd文件里面,找到对应userid那一行,将userid那一列你的id改成0,然后强制保存退出。这...

Linux更改所属用户权限的简易指南linux修改所属用户
首先,介绍一种简单易懂的方法:使用chown命令。chown是一种非常常用的命令,它可以轻松更改文件或文件夹的所有权。其格式为:chown 用户名 文件\/文件夹 以更改对\/tmp\/目录下所有文件的所有权为例:chown user1 \/tmp\/ 其次,介绍一种结合用户组的方式:用户组改变所有者的所有权。用户组的概念大家也是...

linux给用户权限如何给linux用户权限
t保存程序的文本到交换设备上。u与文件属主拥有一样的权限。g与和文件属主同组的用户拥有一样的权限。o与其他用户拥有一样的权限。实例 修改文件可读写属性的方法 例如:把index.html文件修改为可写可读可执行:chmod777index.html 要修改目录下所有文件属性可写可读可执行:chmod777*.把文件夹名称与后...

linux下怎么给用户赋予权限
使用chmod命令修改文件或目录权限;使用chown命令更改文件或目录的所有者;使用usermod命令修改用户属性。通过这些命令,可以为用户赋予相应的权限。详细解释:1. 使用chmod命令修改文件或目录权限:`chmod` 是Linux中用于改变文件或目录权限的命令。通过该命令,你可以设置哪些用户可以读取、写入或执行特定文件或...

linux中怎么样 修改用户权限
只能有一个ROOT帐号。想要普通用户有权限,以ROOT帐号登陆,然后输入chmod o +rw [fileName]。建议你用man chmod看看chmod的详细说明。修改权限:1)管理用户(user)的工具或命令;useradd 注:添加用户 adduser 注:添加用户 passwd 注:为用户设置密码 usermod 注:修改用户命令,可以通过usermod 来...

linux如何给用户分配权限
在linux下给用户分配权限的步骤大致有两步,具体介绍如下:1、添加用户首先要用adduser命令添加一个普通用户,命令如下:#adduser tommy \/\/添加一个名为tommy的用户#passwd tommy \/\/修改密码Changing password for user tommy.New UNIX password: \/\/在这输入新密码Retype new UNIX password: \/\/再次输入...

linux中文件拥有者去掉执行权限,其他用户加上读写权限,同组用户加上...
Linux下权限有三种,用户权限,组权限,其他用户。可以使用ls-lfilename会列出改文件的权限。分别用rwx表示读,写和可执行三种权限,对于目录:r:可以对此目录执行ls以列出内部的所有文件;w:可以在此目录创建文件;x:可以使用cd切换进次目录,也可以使用ls-l查看文件的详细内容;对于文件:r:可读,可以...

linux如何设置用户权限
方法一:修改 \/etc\/sudoers 文件,找到下面一行,把前面的注释(#)去掉 Allows people in group wheel to run all commands wheel ALL=(ALL) ALL 然后修改用户,使其属于root组(wheel),命令如下:usermod -g root tommy 修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得roo...

linux怎么给用户权限linux如何给用户权限
将受限制的用户添加进去,每个用户名一行改完配置文件,不要忘记重启vsFTPd服务器#\/etc\/init.d\/vsftpdrestart5、如果需要允许用户修改密码,但是又没有telnet登录系统的权限:usermod-s\/usr\/bin\/passwdtest\/\/用户telnet后将直接进入改密界面 linux下查看用户的权限的命令是什么?1、连接上相应的linux主机,...

相似回答