热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Ubuntu中的用户管理(二)群组管理

群组的设置使得用户管理更加便捷。系统管理员可以通过对群组授权(grant)或撤销权限(revoke)而免去了为每个用户设置权限的繁琐工作。此外,设置群组权限可以为群组中的用户建立公共的工作区,管理他们对外设的使用权限。不同的Linux系统使用不同的理念来设置群组管理。在Ubuntu系统中使用的是UPG(userprivategroup)机制,默认为每个用户设置与用户名同名的群组名。系统中

群组的设置使得用户管理更加便捷。系统管理员可以通过对群组授权(grant)或撤销权限(revoke)而免去了为每个用户设置权限的繁琐工作。此外,设置群组权限可以为群组中的用户建立公共的工作区,管理他们对外设的使用权限。

不同的Linux系统使用不同的理念来设置群组管理。在Ubuntu系统中使用的是UPG(user private group)机制,默认为每个用户设置与用户名同名的群组名。系统中的群组信息保存在/etc/group文件中。

www.linuxidc.com@linuxidc:~$cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:cindy
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:
fax:x:21:
voice:x:22:
cdrom:x:24:cindy
floppy:x:25:
tape:x:26:
sudo:x:27:cindy
audio:x:29:pulse
dip:x:30:cindy
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:
sasl:x:45:
plugdev:x:46:cindy
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
crontab:x:102:
syslog:x:103:
fuse:x:104:
messagebus:x:105:
bluetooth:x:106:
scanner:x:107:
colord:x:108:
lpadmin:x:109:cindy
ssl-cert:x:110:
lightdm:x:111:
nopasswdlogin:x:112:
netdev:x:113:
whoopsie:x:114:
mlocate:x:115:
ssh:x:116:
avahi-autoipd:x:117:
avahi:x:118:
pulse:x:119:
pulse-access:x:120:
utempter:x:121:
rtkit:x:122:
saned:x:123:
cindy:x:1000:
sambashare:x:124:cindy
winbindd_priv:x:125:
mysql:x:126:
sunny:x:1001:


这个文件中是系统中所有群组的列表。可以看到大部分的群组是服务(mail,news等)和设备(floppy,disk等)。如之前提到的例子,这些系统设备群组对与其相关的文件具有所有权和控制权。添加一个常规用户到一个设备的群组,可以使这个常规用户拥有使用这个设备的权限,如果群组管理员授权给这个常规用户。也就是说将用户cindy添加到cdrom群组,那么使得cindy能够使用光驱设备。

 


管理群组的工具

Ubuntu提供了命令行工具来管理群组,也提供了GUI工具来管理群组。相比较而言,命令行工具更为强大和灵活。常用的群组管理命令行工具主要有:

groupadd——创建一个新的群组

groupdel——删除一个现有的群组

groupmod——创建一个群组名或GID,但不添加或删除群组中的成员

gpasswd——创建一个群组密码。每个群组可以有一个群组密码和群组管理员。使用参数-A指定一个用户为群组管理员。

useradd -G——参数-G在创建用户时添加该用户到一个群组

usermod -G——允许你添加一个不在线的用户到群组中

grpck——检查/etc/group文件,防止拼写错误

下面用一个简单的例子来说明群组管理命令行工具的使用方法。现在有一个DVD-RW设备(/dev/scd0),系统管理员希望给予常规用户sunny这个设备的访问权限。可以有以下几步:

1)用groupadd命令创建一个群组dvdrw

sudo groupadd dvdrw

2)用chgrp命令将设备DVD-RW(/dev/scd0)的群组属性更改为dvdrw

sudo chgrp dvdrw /dev/scd0

3)用usermod命令将授权用户添加到这个群组中

sudo usermod -G dvdrw sunny

4)用gpasswd指定sunny为组管理员,这样他可以添加新的用户到这个群组中

sudo gpasswd -A sunny

现在sunny拥有DVD-RW驱动的访问权限,超级用户和sunny都有添加新用户到这个群组的能力,因为sunny是群组管理员。

系统也提供了群组管理的GUI工具,可以在系统设置->用户账户中找到。如下图所示:


推荐阅读
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了使用SSH免密登录的步骤,包括生成公私钥、传递公钥给被登录机、修改文件权限的操作。同时提醒用户注意私钥的传递方式,建议使用U盘等离线方式传递。 ... [详细]
  • 本文介绍了在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一,尤其是在大规模系统中,数据库集群已经成为必备的配置之一。文章详细介绍了主从数据库架构的好处和实验环境的搭建方法,包括主数据库的配置文件修改和设置需要同步的数据库等内容。MySQL的主从复制功能在国内外大型网站架构体系中被广泛采用,本文总结了作者在实际的Web项目中的实践经验。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • PHP函数实现分页含文本分页和数字分页【PHP】
    后端开发|php教程PHP,分页后端开发-php教程最近,在项目中要用到分页。分页功能是经常使用的一个功能,所以,对其以函数形式进行了封装。影视网源码带充值系统,vscode配置根 ... [详细]
  • 本文介绍了在Android Studio中使用命令行build gradle的方法,并解决了一些常见问题,包括手动配置gradle环境变量和解决External Native Build Issues的方法。同时提供了相关参考文章链接。 ... [详细]
  • 本文介绍了在Ubuntu系统中清理残余配置文件和无用内容的方法,包括清理残余配置文件、清理下载缓存包、清理不再需要的包、清理无用的语言文件和清理无用的翻译内容。通过这些清理操作可以节省硬盘空间,提高系统的运行效率。 ... [详细]
  • 本文介绍了在Ubuntu 11.10 x64环境下安装Android开发环境的步骤,并提供了解决常见问题的方法。其中包括安装Eclipse的ADT插件、解决缺少GEF插件的问题以及解决无法找到'userdata.img'文件的问题。此外,还提供了相关插件和系统镜像的下载链接。 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • linux 禁止指定ip访问
    linux中如何禁止指定的ip访问呢?比如被别人暴力破解,被别人使用不同的密码尝试登录:所以我想直接禁用这些ip的访问.怎么办呢?解决方案:修改配置文件etchosts.deny把 ... [详细]
  • Django + Ansible 主机管理(有源码)
    本文给大家介绍如何利用DjangoAnsible进行Web项目管理。Django介绍一个可以使Web开发工作愉快并且高效的Web开发框架,能够以最小的代价构建和维护高 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
author-avatar
手机用户2502892083
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有