Linux命令的格式是:

命令+选项+参数

命令是必须存在的,选项和参数可以不必存在,不写的情况是有默认的参数

Linux 一切皆文件

对于文件而言,只需要对文件进行读写就可以实现对文件内容内容的增删改查

对于存在在磁盘上的文件而言,当编辑器需要对文件操作时,编辑器将文件的内容全部读入内存,文件的修改是发生在内存中,当文件保存时,是内存中的文件把原来磁盘上的内容覆盖。

一、Linux的权限管理

1.1 新建用户natasha,uid为1000,gid为555,备注信息为“master”

如果直接操作useradd -u 1000 -g 555 -d /Nature -c 'master' natasha,会报错错误信息的问题是添加gid 555的时候会出现问题,原因是没有组

所以用groupadd natasha 新建natasha组,在这一步中,通过 -d命令设置家用户的位置是 /Nature

在接下来的操作中没有用 -g 命令报错 ,提示添加 -g命令 useradd -u 1000 -d /Nature -c 'master' natasha,

由于之前已经新建了别的用户,uid 1000已经被占用,所以设置成UID=1004

1.2 查看用户信息配置文件

用户信息配置文件存放在 /etc/passwd

通过tail -1 /etc/passwd查看最后一行,是通过参数 -1来实现的

tail -n 显示最后 n行的内容

1.3 为新建的用户natasha设置密码 123

通过echo命令将123通过管道输出,由 --stdin作为接收,将natasha的用户密码就可以更改为123

$ echo  123 | passwd --stdin   natasha

1.4 用户的密码文件存放在 /etc/shadow

通过tail -1 /etc/shadow 查看最后一行密码

1.5 用户是否允许登录

1.5.1 修改用户配置文件

用户是否允许登录可以在 /etc/passwd 用户配置信息中查看,这里面一共有7段信息,最后一段是是否允许登录

通过cat命令查看可以看到,配置是/bin/bash,此时是允许登录的,当修成/sbin/nologin就能将用户锁定,不能登录

当切换用户的时候,弹出信息无法登录

解锁用户

将配置文件中重新改回

1.5.2 命令锁定 解锁

passwd -l natasha 锁定用户 lock

这条命令必须是在root用户下才能执行

passwd -u natasha 解锁用户 unlock

1.6 新建用户组

groupadd -g 1999 police新建组是在root用户下才能添加

1.6.1 组的配置文件

组的配置文件位于 /etc/group

1.6.2 修改组的成员

tail -1 /etc/group 显示group的最后一行,分为四段,最后一段代表组内的成员,通过 vi 添加natasha

修改成功后natasha的id

1.7 修改用户组组名

groupmod -n 新的用户名 原有的用户名,通过查看gid可知,police的组名已经改成jingcha,但是gid没有变

1.8 删除用户

在删除用户前,可以通过查看用户的家目录,邮件都是存在的

使用userdel -r命令就可以删除用户的家目录以及所有的文件,-r是递归删除的意思,就是能从逐级删除目录和子目录、子文件

实际操作中,命名返回信息,正在由进程使用,通过who没有查看到natasha用户,用kill -s 9 进程号

重新登录root,再执行命令后删除natasha的所有文件

1 .9 删除组

groupdel 组名

二、文件权限

2.1 文件权限

ls -l == ll

2.2 修改其他用户的权限

2.3 修改同组的人没有读写权限

2.4 数字方式修改权限

r = 4

w = 2

x = 1

文件全部都有权限

三、通过操作文件 新建用户

3.1 新建目录

通过chown tom group1 /test/dir 改变原来dir的主和组

3.2 新建Jake用户

此时在/test/dir 下面新建一个文件123.txt ,通过echo向123.txt追加信息,切换另一个终端,登录Jake用户

下面是/test/dir/123.txt的权限,对于其他用户来说,是可读的

登录其他的终端,Jake用户不能对文件进行写操作

3.3 将一个用户添加到另一个用户组

usermod -G group1 jake

jake 最终添加到group中,通过下图可以看出,在配置文件的group1的子组中已经有了Jake

3.4 在root用户下可以查看到其他用户的权限是可读的

通过切换另一个终端,可以看到能够读取

3.5通过修改/test/dir 目录的权限

当dir的权限是770的时候,通过其他用户是是不能进入,当权限是771的时候能够进入

3.6 改变属主 属组权限

改变上层文件的权限

3.7 新建用户并验证其他用户的权限

新建用户rose,切换到rose用户下,验证rose用户对tom.txt的rwx权限

useradd rose

su - rose

现在给tom.txt其他用户的权限0,

通过另一个终端查看rose用户对tom.txt的权限

  • 没有任何权限

  • 增加读的权限

  • 增加写权限

在一个终端追加

在另一个终端中查看,写成功

3.8 将rose加入group1组

useermod -G group1 rose

3.8.1 rose 用户的权限

更改tom.txt的其他用户的权限为0

但是rose用户属于group1组,所以能读写

Linux命令权限 用户权限 组权限 文件、目录权限的更多相关文章

  1. Linux命令整理,用户管理,用户组管理,系统管理,目录管理常用命令

    知识点梳理 Linux课堂笔记 学习目标 能够知道什么是Linux系统以及它的应用场景 能够独立完成安装VMware虚拟机和网络配置 能够独立完成安装CentOS以及远程终端SecureCRT 能够熟 ...

  2. Linux命令之用户与组管理

    介绍 Linux操作系统中,任何文件都归属某一特定的用户,而任何用户都隶属至少一个用户组.用户是否有权限对某文件进行访问.读写以及执行,受到系统严格约束的正式这种清晰.严谨的用户与用户组管理系统.在很 ...

  3. linux学习之(四)-用户、组的操作,给文件文件夹设置组,更改目录权限、文件权限

    命令帮助查看: man 命令(查看一个命令的详细帮助信息) 例:man useradd 或者用  -h   格式   命令 -h(查看一个命令的简要帮助) 例:useradd -h 用户: 在user ...

  4. Linux下的用户、组和权限

    目录 一:用户和组信息的查看 查看用户信息 查看密码信息 查看组信息 特殊组wheel 二:用户和组信息的管理 用户管理 组管理 三:文件权限 文件权限的查看 文件权限的修改 ACL控制权限 setf ...

  5. Linux文件/目录权限设置命令:chmod

    文件/目录权限设置命令:chmod 这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限.该命令有两种用法: 用包含字母和操作符表达式的文字设定法 其语法格式为:chmod [w ...

  6. Gitlab用户在组中有五种权限:Guest、Reporter、Developer、Master、Owner

    Gitlab权限管理Gitlab用户在组中有五种权限:Guest.Reporter.Developer.Master.Owner Guest:可以创建issue.发表评论,不能读写版本库Reporte ...

  7. Gitlab用户在组中有五种权限

    Gitlab用户在组中有五种权限:Guest.Reporter.Developer.Master.Owner Guest:可以创建issue.发表评论,不能读写版本库 Reporter:可以克隆代码, ...

  8. 木马suppoie 处理的几个思路 木马文件的权限所有者 属主数组 定时任务 目录权限

    木马suppoie 处理的几个思路  木马文件的权限所有者  属主数组  定时任务   目录权限

  9. Linux系统下用户与组的管理

    Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...

  10. Linux 系统的用户和组

    目录 1. 用户及组相关文件 2. 用户相关查询 2.1 直接通过cat文件查看用户及组文件内容 2.2 使用下面查询命令查看 3. 使用操作命令修改用户及组相关文件 3.1 专有编辑命令(仅限高级用 ...

随机推荐

  1. HDU - 3345 War Chess 广搜+优先队列

    War chess is hh's favorite game: In this game, there is an N * M battle map, and every player has hi ...

  2. [Xcode 实际操作]一、博主领进门-(12)代码重构

    目录:[Swift]Xcode实际操作 本文将演示如何重构代码. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] [快速更改同名变量或常量] 在代码编辑区域,点击需 ...

  3. IT兄弟连 JavaWeb教程 JSP经典案例

    案例需求:定义一个javaBean叫XdlUser,有四个字段int id.String name.int age.double salary.写一个jsp页面,在页面中构建一个列表对象,里面存放几个 ...

  4. MySQL中group by 与 order by 一起使用排序问题

    假设有一个表:reward(奖励表),表结构如下: CREATE TABLE test.reward ( id ) NOT NULL AUTO_INCREMENT, uid ) NOT NULL CO ...

  5. 01 | VIM基础攻略

    启动 vim 后,vim 处于 normal 模式. Step One: "i" -> insert 模式, ESC -> normal 模式: "x&quo ...

  6. Mysql的跨服务器操作

    1.查询FEDERATED功能是否开启: show ENGINES; 2.如果状态为NO则需修改my.ini文件,增加一行federated配置: my.ini配置文件的默认路径 C:\Program ...

  7. [洛谷P2186] 小Z的栈函数

    题目链接: 传送门 题目分析: 大模拟,先得存操作,然后再处理每个数-- 有一个小优化,在处理操作的时候顺便判一下最后栈里是不是有且仅有一个数,但A完了才想起来,所以就算了-- 总之就是个模拟题--没 ...

  8. CentOS7下使用Docker容器化.net Core 2.2

    一.使用 yum 安装(CentOS 7下) Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . 通过 una ...

  9. HashMap的小总结 + 源码分析

    一.HashMap的原理 所谓Map,就是关联数组,存的是键值对——key&value. 实现一个简单的Map,你也许会直接用两个LIst,一个存key,一个存value.然后做查询或者get ...

  10. JavaScript Allongé 第一呷 :基础函数 (3) 未完

    闭包与域是时候来看下一个带函数的函数是如何工作的: (function (x) { return function (y) { return x } })(1)(2) //=> 1 首先,我们使 ...