首页 > 系统相关 >linux用户及用户组管理,目录或文件权限管理

linux用户及用户组管理,目录或文件权限管理

时间:2024-06-13 17:59:42浏览次数:24  
标签:文件 管理 用户组 sudo alice 用户 linux home 权限

在 Linux 系统中,用户及用户组管理,以及目录或文件权限管理是系统管理员的基本任务。以下是一些基本和常用的操作指南。

一、用户和用户组管理

添加用户

1.添加用户

sudo adduser username

这条命令会创建一个新的用户,并为该用户创建一个主目录,并提示你设置密码及其他信息。

2.为用户设置密码

sudo passwd username

删除用户

1.删除用户

sudo deluser username

这条命令会删除用户,但保留其主目录。

2.删除用户及其主目录

sudo deluser --remove-home username

添加用户组

1.添加用户组

sudo addgroup groupname

将用户添加到组中

1.将用户添加到组中

sudo usermod -aG groupname username

-a 表示追加,-G 表示组名列表

删除用户组
sudo delgroup groupname

目录或文件权限管理

在 Linux 中,每个文件和目录都有一组权限标记,用于控制不同用户和用户组对该文件或目录的访问权限。这些权限分为三种:读 (r)、写 (w) 和执行 (x)。

查看权限

使用 ls -l 来查看文件或目录的权限。

ls -l filename

输出示例:

-rwxr-xr-- 1 user group 4096 Jun 13 09:32 filename

解释:

  • -rw-r--r-- 表示文件类型和权限。
    • 第一个字符 - 表示这是一个普通文件(d 表示目录)。
    • 接下来的三个字符 rwx 表示所有者的权限:读 (r)、写 (w)、执行 (x)。
    • 中间的三个字符 r-x 表示组的权限:读 (r)、无写权限 (-)、执行 (x)。
    • 最后的三个字符 r-- 表示其他用户的权限:读 (r)、无写权限 (-)、无执行权限 (-)。
修改权限

使用 chmod 命令修改文件或目录的权限。

  1. 使用符号模式

    chmod u+rwx,g+rx,o+r filename

    这条命令将文件的权限设置为所有者可读、可写、可执行,组成员可读、可执行,其他人可读。

  2. 使用八进制模式

    chmod 755 filename

    这里的 755 等价于 rwxr-xr-x,即所有者有所有权限,组成员和其他人只有读和执行权限。

修改所有者和组

使用 chown 命令修改文件或目录的所有者和组。

  1. 修改所有者

    sudo chown newowner filename
  2. 修改组

    sudo chown :newgroup filename
  3. 同时修改所有者和组

    sudo chown newowner:newgroup filename
修改文件的默认权限掩码

使用 umask 设置新创建文件和目录的默认权限。

  1. 查看当前 umask

    umask
  2. 设置 umask

    umask 022

    这条命令将新创建文件的默认权限设置为 755(目录)和 644(文件)。

实战示例

以下是一个综合示例,包括用户和组的创建、文件权限的设置以及所有者和组的修改。

1.创建新用户和组

sudo adduser alice sudo addgroup projectgroup sudo usermod -aG projectgroup alice

2.创建一个文件并修改权限和所有者

touch /home/alice/projectfile.txt

sudo chown alice:projectgroup /home/alice/projectfile.txt

sudo chmod 664 /home/alice/projectfile.txt

3.设置目录权限

mkdir /home/alice/projectdir

sudo chown alice:projectgroup /home/alice/projectdir

sudo chmod 775 /home/alice/projectdir

实验步骤实例:

1. 登录到 Linux 系统

使用管理员账户登录到 Linux 系统。

2. 创建新用户和组
  1. 创建新用户

    sudo adduser alice
  2. 创建新用户组

    sudo addgroup projectgroup
  3. 将用户添加到新的用户组中

    sudo usermod -aG projectgroup alice
3. 创建文件和目录
  1. 切换到新用户的主目录

    cd /home/alice
  2. 使用 touch 命令创建一个文件

    touch projectfile.txt
  3. 使用 mkdir 命令创建一个目录

    mkdir projectdir
4. 设置文件和目录权限
  1. 设置文件的所有者和组

    sudo chown alice:projectgroup /home/alice/projectfile.txt
  2. 设置目录的所有者和组

    sudo chown alice:projectgroup /home/alice/projectdir
  3. 设置文件权限 (664)

    sudo chmod 664 /home/alice/projectfile.txt
  4. 设置目录权限 (775)

    sudo chmod 775 /home/alice/projectdir
5. 验证设置是否生效
  1. 查看文件权限和所有者信息

    ls -l /home/alice/projectfile.txt
  2. 查看目录权限和所有者信息

    ls -ld /home/alice/projectdir

你应该看到类似如下的输出:

  • 对于文件:

    -rw-rw-r-- 1 alice projectgroup 0 Jun 13 09:32 /home/alice/projectfile.txt
  • 对于目录:

    drwxrwxr-x 2 alice projectgroup 4096 Jun 13 09:32 /home/alice/projectdir
6. 测试新用户和文件/目录权限
  1. 切换到新用户

    su - alice
  2. 尝试在目录中创建一个新文件

    touch /home/alice/projectdir/newfile.txt
  3. 尝试修改文件内容

    echo "Hello, World!" > /home/alice/projectfile.txt
  4. 尝试删除文件

    rm /home/alice/projectdir/newfile.txt
  5. 退出新用户会话

    exit

通过上述步骤,可以有效地管理Linux系统上的用户、用户组以及文件和目录的权限

标签:文件,管理,用户组,sudo,alice,用户,linux,home,权限
From: https://blog.csdn.net/2301_79908256/article/details/139660386

相关文章

  • 医院设备管理系统的设计与实现 毕业设计-附源码39673
    摘 要随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,医院当然也不能排除在外。医院设备管理系统是以实际运用为开发背景,运用软件工程开发方法,采用SSM技术构建的一个管理系统。整个开发过程首先对软件系统进行......
  • usoclient命令 参数 是一个用于管理 Windows Update 的命令行工具,可以在 Windows 10
    usoclient是一个用于管理WindowsUpdate的命令行工具,可以在Windows10和WindowsServer操作系统中使用。它提供了一种在命令行界面下执行Windows更新任务的方法,从而允许管理员和技术支持人员以更灵活和自动化的方式处理更新。为什么使用 usoclient 命令?自动化更新......
  • (三十九)Vue之集中式的状态管理机制Vuex
    这里写目录标题概念vuex的核心概念State(状态)Getters(获取器)Mutations(突变)Actions(动作)搭建vuex环境基本使用getters的使用上一篇:(三十八)Vue之插槽Slots概念Vuex是一个专为Vue.js应用程序开发的状态管理模式。对vue应用中多个组件的共享状态进行集中式的管理(读/写),也是......
  • 基于微信小程序的警务资源管理系统设计与实现
    ......
  • 基于微信小程序的运动健康管理系统设计与实现
    ......
  • linux部署nginx
    1.情景展示在linux下,使用nginx代理前端代码,如何实现?2.nginx下载下载地址:https://nginx.org/en/download.html下载成功后,将其解压到linux服务器上。(可以通过Xftp实现)3.安装nginx通常安装在usr/local目录下。打开Xshell,切换到nginx-1.26.0.tar.gz所在目录。cd/usr/loca......
  • Linux系统的mysql如何导出表数据
    在Linux系统上,我们可以使用mysqldump命令来导出MySQL数据库中的表数据。mysqldump是一个用于备份数据库的命令行工具,它可以将整个数据库或特定的表导出为SQL脚本文件,以便在其他环境中恢复或迁移数据。本文将介绍如何使用mysqldump命令导出表数据,并提供相关的代码示例和流程图。1......
  • linux 下MySQL命令行导出csv文件格式
    从数据库服务器导出1、登录mysqlmysql-uroot-p2、切换数据库usedatabase3、导出文件命令SELECTid,column1,column2FROMtableINTOOUTFILE'/tmp/mysqlfiles/table.csv'FIELDSTERMINATEDBY','ENCLOSEDBY'"'LINESTERMINATEDBY'n' sel......
  • springboot SSM 宠物医院管理系统(源码+论文)
    绪论1.1计算机管理信息系统的发展情况1958年美国首先提出了“管理信息系统”(即MIS:ManagementInformationSystems),从而也引出了另外一个概念——“管理信息系统”。综合其多种定义以及根据在实际中的应用,管理信息系统可以定义为是一个由人、计算机系统等组成的,能进行......
  • 哪款工程项目管理系统最适合你?一文看懂顶级13款
    国内外主流的13款工程项目管理系统软件:Worktile、中建软件、泛微建筑项目管理软件、LiquidPlanner、Wrike、建文软件、广联达、MicrosoftProject、泛普软件、Procore、Buildertrend、Fieldwire、AutodeskConstructionCloud。在快速变化的工程领域,有效的项目管理是成功的关键......