Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册

Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册

原创
作者头像
刘大猫
发布于 2025-05-25 02:36:28
发布于 2025-05-25 02:36:28
2150
举报
文章被收录于专栏:JAVA相关JAVA相关

@toc

一、目的

本指导手册为了更加方便使用Centos或者Linux,并在里面创建用户、用户组、并更改指定目录的所有者和访问权限,以限制或授权特定用户对该文件夹目录的访问。指定用户访问文件夹目录意味着你只想让某一个或多个用户(或用户组)对该文件夹目录进行访问,而其他用户则不能访问该目录。

二、操作步骤

在Linux系统下,我们可以使用useradd命令来创建用户,使用passwd命令来为用户设置密码。然后,我们可以使用chown命令来更改文件夹目录的所有者,使用chmod命令来更改文件夹目录的访问权限。同时shell脚本还要求不能弹出设置密码的窗口,直接以设置密码的方式进行。

configure_create_oss.sh

代码语言:java
AI代码解释
复制
#!/bin/bash

# 设置用户名和密码
username1="oss_cm"
password1="oss_cm"
username2="oss_pm"
password2="oss_pm"
username3="oss_hw"
password3="oss_hw"
echo "Set the user name and password completed."

# 创建用户并设置密码
useradd -m "$username1"
echo "$username1:$password1" | chpasswd
useradd -m "$username2"
echo "$username2:$password2" | chpasswd
useradd -m "$username3"
echo "$username3:$password3" | chpasswd
echo "Create a user and set a password completed."

# 创建用户组
groupadd oss_cm_group
groupadd oss_pm_group
groupadd oss_hw_group
echo "Create group completed."

# 将用户添加到对应的用户组
gpasswd -a oss_cm oss_cm_group
gpasswd -a oss_pm oss_pm_group
gpasswd -a oss_hw oss_hw_group
echo "Add user to group completed."

# 打印用户组成员列表
groupmems -g oss_cm_group -l
groupmems -g oss_pm_group -l
groupmems -g oss_hw_group -l
echo "Print a list of user group members completed."

# 创建目录并设置权限
mkdir -p /home/ems/ems_file/cm_hero
mkdir -p /home/ems/ems_file/pm_hero
mkdir -p /home/ems/ems_file/hw_hero
echo "Create a directory and set permissions completed."

chown -R oss_cm:oss_cm_group /home/ems/ems_file/cm_hero
chmod -R 750 /home/ems/ems_file/cm_hero

chown -R oss_pm:oss_pm_group /home/ems/ems_file/pm_hero
chmod -R 750 /home/ems/ems_file/pm_hero

chown -R oss_hw:oss_hw_group /home/ems/ems_file/hw_hero
chmod -R 750 /home/ems/ems_file/hw_hero

echo "OSS configuration completed."

三、最终的效果

最终的效果就是:oss_cm_file目录下只能由oss_cm用户才能访问,oss_hw_file目录下只能由oss_hw用户才能访问,而oss_hw用户想访问oss_cm_file目录时会报错说“权限不够”。类似于下图

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Centos或Linux编写一键式Shell脚本删除用户、组指导手册
注意点1:userdel命令删除该用户时,并不能删除该用户的所有信息,只是删除了/etc/passwd、/etc/shadow、/etc/group/、/etc/gshadow四个文件里的该账户和组的信息。默认情况下创建一个用户账号,会创建一个家目录(在/home/目录以用户名命名)和一个用户邮箱(在/var/spool/mail目录以用户名命名)
刘大猫
2025/05/24
1130
NetExec:一款功能强大的自动化网络安全评估与漏洞测试工具
NetExec是一款功能强大的自动化网络安全评估与漏洞测试工具,该工具可以帮助广大研究人员以自动化的形式测试大型网络的安全,并通过利用网络服务漏洞来评估目标网络的安全态势。
FB客服
2024/02/04
1.3K0
NetExec:一款功能强大的自动化网络安全评估与漏洞测试工具
Linux运维常用shell脚本之用户管理实例
实现要求:创建用户student1到student50,指定组为student组!而且每个用户需要设定一个不同的密码!
菲宇
2022/12/02
3.1K0
使用Docker Compose轻松搭建Samba文件共享服务
家人们啦,今天我将向大家介绍如何使用Docker Compose安装Samba,从而实现便捷的文件共享环境。Samba是一个开源的软件套件,允许不同操作系统之间实现文件和打印机的共享。通过Docker Compose的便利,我们可以快速搭建和管理Samba容器,轻松实现文件共享和访问。废话不多说,让我们开始吧!
修己xj
2023/08/25
3.5K0
使用Docker Compose轻松搭建Samba文件共享服务
linux怎么创建用户和用户组_linux查看用户组
usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
全栈程序员站长
2022/11/01
20.6K0
Linux(二)用户和文件权限
什么是liunx用户 :本质就是可以登录系统并使用系统资源(如运行程序、操作文件)的实体。使用操作系统的人都是用户。
落幕
2025/06/11
1490
Linux(二)用户和文件权限
Linux笔记6.权限及用户
每个用户对其拥有的文件具有控制权,同时,用户又属于由一个或多个用户组成的用户组。用户组成员由文件和目录的所有者授予对文件和目录的访问权限。如此设计可保证每个用户的操作是独立的,不会影响到其他用户。 i
章鱼喵
2018/06/27
8330
Linux嵌入式开发——用户与用户组
Linux是一个多用户操作系统,不同的用户拥有不同的权限。可以查看和操作不同的文件。 Ubuntu有三种用户:
小点点
2023/02/27
8050
Linux嵌入式开发——用户与用户组
Linux创建用户、用户组、授权
root用户登录,创建用户 # 输入创建用户命令 #useradd username useradd october #输入设置october用户密码: #passwd username passwd october #输入密码... #确认密码... #密码短不安全会提示,但root用户下怎么设置都可以 创建一个用户组 #命令窗口输入: #groupadd {group-name} groupadd elk 将用户添加到用户组 #useradd -G {group-name} username userm
用户1409099
2019/05/14
14.5K0
linux 用户及用户组相关指令
Linux用户只有两个等级:root及非root。Linux中还有一部分用户,如:apache、mysql、nobody、ftp等,这些也都是非root用户,即普通用户。Linux的权限实际是上不同用户所能访问的文件的不同产生的假象。而这些假象的造成,还要涉及到另外一个概念:用户组
用户5760343
2022/05/23
11.3K0
linux 用户及用户组相关指令
Linux下用户及用户权限管理
虽然很早就开始接触和使用Linux系列的系统,但是一直都是停留在使用层面,只能作为一个User,而并不是一个Developer,而要真正掌握Linux系列的系统,并以其作为开发环境进行开发,有很多知识是必须要了解的,就比如用户及用户权限管理。 用户和用户组文件 在linux中,用户帐号,用户密码,用户组信息和用户组密码均是存放在不同的配置文件中的。 在linux系统中,所创建的用户帐号和其相关信息(密码除外)均是存放在/etc/passwd配置文件中。由于所有用户对passwd文件均有读取的权限,因此
李郑
2018/03/01
7K0
linux centos 添加创建用户并设置权限
#groupadd eisc # 新建test工作组
eisc
2021/05/10
8.7K0
Python高级应用(3)—— 为你的项
验证码在现在来说,是很常见的东西,可以一定程度的保护网站,比如防止网络爬虫恶意爬取网站数据啊,减少低级的攻击啊什么的。但是高级点的骚操作还是不太好防范,所以现在的验证码平台也在升级强化,为了把人和机器严格分开。但是这东西,永远都是看哪一方技术高低的,谁的技术高级,谁就能干倒另一方了。详细的就不说了,总而言之,验证码可以说是目前所有的面向用户的平台都会用到的,所以这项技能必须得会啊。
py3study
2020/01/17
9740
Linux中的用户组和权限管理
简单概括安全模型为linux系统需要知道登录验证用户的身份,登录用户基于身份会有不同的权限访问系统文件,同时也会有审计功能来知道登录用户在系统什么时间做了什么。
鱼丸葱面
2020/12/22
8.1K0
Linux中的用户组和权限管理
Web基础配置篇(七): Svn与Git的安装及基本使用
SVN(Subversion)是集中式管理的版本控制器,而Git是分布式管理的版本控制器;这是两者之间最核心的区别。
品茗IT
2019/09/12
7520
深入理解 Linux 用户和用户组的基本概念 + 相关命令 (一篇就够)
Linux是一个多用户多任务的操作系统,每个用户都需要一个账户才能登录系统并使用系统的资源
神秘泣男子
2024/06/03
1.2K0
深入理解 Linux 用户和用户组的基本概念 + 相关命令 (一篇就够)
Linux操作系统 中的用户管理,也就是关于用户的相关的操作与理解
超级管理员主要识别是否是root和#这两个必备的条件来确定当前状态下是否为管理员用户
一写代码就开心
2023/12/08
5860
Linux操作系统 中的用户管理,也就是关于用户的相关的操作与理解
用户查询操作权限命令
/etc/gshadow 存储当前系统中用户组的密码信息 Tips:原先只有group和passwd两个文件,但后来考虑到安全性问题就又演变出shadow和gshadow两个文件
全栈工程师修炼指南
2022/09/28
3.6K0
用户查询操作权限命令
linux系统搭建ftp服务器及创建用户——centos7.3「建议收藏」
linux 系统下搭建ftp服务器一点都不难,初次进行配置的时候花了很多时间进行linux命令扫盲,故写下这篇博客。
全栈程序员站长
2022/09/14
5.6K0
linux系统搭建ftp服务器及创建用户——centos7.3「建议收藏」
【知识】Linux用户组权限设置
在Linux系统中,文件和目录的权限是非常重要的概念,它们决定了哪些用户可以对文件或目录执行哪些操作。
小锋学长生活大爆炸
2025/05/24
4810
【知识】Linux用户组权限设置
推荐阅读
相关推荐
Centos或Linux编写一键式Shell脚本删除用户、组指导手册
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档