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

理论:账号和权限管理

用户账号和组账号概述Linux基于用户身份对资源访问进行控制用户账号超级用户、普通用户、程序用户组账号基本组(私有组)附加组(公共组)UID和GIDUID(UserIDenti

用户账号和组账号概述

Linux基于用户身份对资源访问进行控制



  • 用户账号

    • 超级用户、普通用户、程序用户



  • 组账号

    • 基本组(私有组)

    • 附加组(公共组)



  • UID和GID

    • UID(User IDentity,用户标识号)

    • GID(Group IDentify,组标识号)




用户账号文件

保存用户名称、宿主目录、登录Shell等基本信息



  • 文件位置:/etc/passwd

  • 每一行对应一个用户账号记录
    在这里插入图片描述

保存用户密码、账号有效期等信息

/etc/shadow


添加用户账号

useradd命令
useradd 【选项】 用户名



  • -u:------------------------------------指定UID多少

  • -d:------------------------------------指定宿主目录

  • -e:------------------------------------指定账户失效时间

  • -g:------------------------------------指定用户基本组

  • -G:------------------------------------指定用户附加组,既可以属于用户组也可以属于其他

  • -M:------------------------------------不建立宿主目录

  • -s:------------------------------------指定登录的 shelluser


设置/更改用户口令passwd

passwd命令
passwd【选项】 用户名



  • -d:------------------------------------清空密码

  • -l:------------------------------------锁定账号

  • -s:------------------------------------查看账户是否被锁定

  • -u:------------------------------------解锁用户账户

示例:

passwd tom ##账户设置密码
passwd -l tom ##锁定tom
cat /etc/passwd ##看下tom
passwd -u tom ##解锁tompasswd -l lisi ##会看到shadow lisi有2个锁定的”!“号
usermod -U lisi ##这个命令敲2次可以解锁

修改用户账号的属性usermod

usermod命令

usermod 【选项】用户名



  • -u ------------------------------------修改用户UID

  • -d ------------------------------------修改用户的宿主目录位置

  • -e ------------------------------------修改用户账号失效时间 可以YYYY-MM-DD日期

  • -g ------------------------------------修改用户的基础组名

  • -G ------------------------------------修改用户的附加组名

  • -s ------------------------------------指定用户登录的shell

  • -l ------------------------------------更改用户登录名称

  • -L ------------------------------------锁定账户

  • -U ------------------------------------解锁用户账户

示例:

usermod -l A B ##将B的登录名称改成A
mkdir /data ##创建A新的宿主目录/data
usermod -d /data A ##修改A的宿主目录
usermod -s /sbin/nologin A ##修改A的shell环境为:不能登录

删除用户账号userdel

userdel命令
userdel 【-r】用户名



  • 添加 -r 选项时,表示连用户的宿主目录一并删除

在这里插入图片描述


用户账号的初始配置文件3个重要隐藏文件



  1. .bash_profile --------文件中命令将在该用户每次登录被执行

  2. .bashrc --------文件中命令在每次加载/bin/Bash程序(包括登录)执行

  3. .bash_logout --------文件中的命令将在每次退出登录时执行

.bashrc和.bash_profile都是开机启动,.bashrc要比.bash_profile更加精细
.bash_logout 可以理解,干坏事后擦屁股,擦脚印的。


组账号文件

与用户账号文件相类似



  • /etc/group:保存组账号基本信息

  • /etc/gshadow:保存组账号的密码信息

在这里插入图片描述


添加组账号groupadd

groupadd命令
groupadd【-g GID】组账号名

示例:

groupadd -g 1000 market ##指定GID号

添加删除组成员gpasswd和组账号groupdel

gpasswd命令
gpasswd 【选项】组账号名



  • -a:--------------向组内添加一个用户

  • -d:--------------从组内删除一个用户成员

  • -M:--------------定义组成员列表,以逗号分隔

groupdel命令
groupdel 组账号名

示例:

groupdel market ##删除组账号market

查询账号信息

groups 用户名 ---------------查看用户所属的组
id 用户名 ---------------查看用户信息
finger 用户名---------------查询用户账号的详细信息
w、who、users命令---------------查询已登录到主机的用户信息


文件/目录的权限和归属

访问权限



  • 读取 r:允许查看文件内容、显示目录列表

  • 写入 w:允许修改文件内容,允许在目录中新建、移动删除文件或者子目录

  • 可执行 x :允许允许程序、切换目录

归属(所有权)



  • 属主:拥有该文件或目录的用户账号

  • 属组:拥有该文件或目录的组账号

在这里插入图片描述


设置文件和目录的权限chmod

chmod【选项】权限 目录文件名



  • -R:----------------- 递归修改目录权限

  • u:-----------------user属主

  • g:-----------------group属组

  • o:-----------------other其他

  • a:-----------------all所有

  • +:-----------------增加权限

  • -:-----------------减少权限

  • =:-----------------设置权限


设置文件和目录的归属chown

chown 属主:属组 文件目录 -----------------######设置文件目录的归属
-R-----------------递归修改目录的归属


推荐阅读
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 本文详细解析了Python中的os和sys模块,介绍了它们的功能、常用方法及其在实际编程中的应用。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
author-avatar
SU大肥婆_545
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有