1. 账户与账户安全

账户和组是操作系统的基本概念,linux的组有基本组和附加组之分,一个用户只可以加入到一个基本组中国,但是可以加入到多个附加组中.创建用户时,系统默认会自动创建同名的组,并设置用户加入该基本组中.

1.1 创建账户和组

    1. useraddm
-c 设置账户描述信息,一般为账户全称
-d 设置账户家目录,默认为/home/用户名
-e 设置账户的失效日期,格式为 YYYY-MM-DD
-g 设置账户的基本组
-G 设置账户的附加组,多个附加组中间用逗号隔开
-M 不创建账户家目录,一般与-s组合使用
-s 设置账户的登录shell,默认为bash
-u 指定账户uuid
useradd test 创建test用户
useradd -c test -d /home/myTest -e 2017-11-11 -g root -G test,hello
创建系统名称为myTest,全名为test,家目录为/home/myTest,失效日期为20171111,账户基本组为test,附加组为test,hello
2. groupadd
-g 设置组id
groupadd tom 增加tom族
groupadd -g 1000 tom 创建tom组并设置id为1000
3. id
id root 显示root账户及相关组信息

1.2 修改账户及组

    1. passwd
passwd #为当前用户设置新密码
echo "test" |passwd --stdin tom #设置tom账户的用户密码为test
passwd -l tom #锁定tom账户
passwd -u tom #解锁账户tom
passwd -d tom #清空账户tom的密码
2. usermod
usermod -d /home/tomcat tom #修改tom的家目录,修改的目录必须存在
usermod -e 2013-10-01 tom #修改失效日期
usermod -g mail tom #修改tom的基本组为mail
usermod -s /bin/bash tom #修改tom的登录shell为bash
usermod -u 1001 tom #修改tom的uid为1001

1.3 删除账户及组

    1. userdel
userdel tom #删除账户tom,但不删除该账户下的文件
userdel -r tom #删除账户tom,并删除相应的家目录
2. groupdel
groupdel jerry #删除组jerry

1.4 账户与组文件分析

    1. 账户信息文件被保存在etc/passwd中
2. 账户密码信息文件被放在etc/shadow
3. 组账户信息放在/etc/group中
4. 组账户密码放在/etc/gshadow中
gpasswd admin #设置组账户密码
gpasswd A mail admin #将mail账户设置为组admin的管理员

1.5 文件及目录权限

linux权限分为读,写,执行三种权限控制 rwx

使用ls -l可以查看文件夹和文件的详细权限信息

    1. chmod
chmod u=rwx,g=rwx,o=rwx hello.txt #修改hello.txt的用户,组,其他的权限位rwx
chmod g -x,o +wx hello.txt #增加hello.txt组x权限,其他wx权限
chmod 700 hello.txt #rwx分别对应421 7表示为rwx权限,0表示权限
2. chown
chown user:mail hello.txt #修改hello.txt的组为mail,用户为user
chown :root hello.txt #修改文件所属组为root
chown root hello.txt #修改文件所属用户为root

1.6 ACL访问控制权限

系统的基本权限是针对文档所有者,所属组或其他账户进行控制,无法针对某个单独的账户进行控制,就有了ACl访问控制列表

    1. getfacl    #查看文档的acl权限
2. setfacl #设置访问控制列表

linux学习系列三的更多相关文章

  1. Linux学习系列八:操作网口

    一些相对高性能的单片机会带以太网接口,网口在MCU里算是比较复杂的外设了,因为它涉及到网络协议栈,通常情况下网络协议栈会运行在一个RTOS中,所以对普通单片机开发者来说网口使用起来相对难度较大一些.在 ...

  2. MyBatis学习系列三——结合Spring

    目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring MyBatis在项目中应用一般都要结合Spring,这一章主要把MyBat ...

  3. scrapy爬虫学习系列三:scrapy部署到scrapyhub上

    系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备:      http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...

  4. DocX开源WORD操作组件的学习系列三

    DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...

  5. RabbitMQ学习系列三-C#代码接收处理消息

    RabbitMQ学习系列三:.net 环境下 C#代码订阅 RabbitMQ 消息并处理 http://www.80iter.com/blog/1438251320680361 http://www. ...

  6. .net reactor 学习系列(三)---.net reactor代码自动操作相关保护功能

    原文:.net reactor 学习系列(三)---.net reactor代码自动操作相关保护功能         接上篇,上篇已经学习了界面的各种功能以及各种配置,这篇准备学习下代码控制许可证. ...

  7. Identity Server4学习系列三

    1.简介 在Identity Server4学习系列一和Identity Server4学习系列二之令牌(Token)的概念的基础上,了解了Identity Server4的由来,以及令牌的相关知识, ...

  8. RabbitMQ学习系列三:.net 环境下 C#代码订阅 RabbitMQ 消息并处理

    上一篇已经讲了Rabbitmq如何在Windows平台安装 不懂请移步: RabbitMQ学习系列二:.net 环境下 C#代码使用 RabbitMQ 消息队列 一.理论 .net环境下,C#代码订阅 ...

  9. C# Redis学习系列三:Redis配置主从

    Redis配置主从 主IP :端口      192.168.0.103 6666 从IP:端口       192.168.0.108 3333 配置从库 (1)安装服务: redis-server ...

随机推荐

  1. 机器学习5—logistic回归学习笔记

    机器学习实战之logistic回归 test5.py #-*- coding:utf-8 import sys sys.path.append("logRegres.py") fr ...

  2. AjaxPro.2.dll AjaxPro.AjaxMethod 前后台交互

    我们需要下载 AjaxPro.2.zip.然后把下载到的 AjaxPro.2.dll 的文件引入到项目. 1.接着,在 Web.config 的 <system.web> 标签下写入以下内 ...

  3. dwr文件上传

    配置FileService映射: dwr.xml <create creator="new"> <param name="class" val ...

  4. onInterceptTouchEvent和onTouchEvent调用时序(转)

    onInterceptTouchEvent和onTouchEvent调用时序 onInterceptTouchEvent()是ViewGroup的一个方法,目的是在系统向该ViewGroup及其各个c ...

  5. 【hiho一下】第一周 最长回文子串

    题目1:最长回文子串 题目原文:http://hihocoder.com/contest/hiho1/problem/1 [题目解读] 题目与 POJ 3974 palindrome 基本同样.求解最 ...

  6. vue实践---vue结合 promise 封装原生ajax

    有时候不想使用axios这样的外部依赖,想自己封装ajax,这里有两种方法 方法一,在单个页面内使用 封装的代码如下: beforeCreate () { this.$http = (() => ...

  7. 获取unity prefab的预览图像

    官方的api可以直接获取预览图像,如下所示: Tex=AssetPreview.GetAssetPreview(Object m)as Texture; 但是如果prefab是组合体的话(即一个pre ...

  8. bugzilla部署记录

    这两天部署了个bugzilla,记录如下. 1.主要参考文章 Bugzilla安装过程.Bugzilla使用手册及解决方案 如果你使用的系统是win7或者IIS是7.0的话,你可能还需要Win7 安装 ...

  9. Leetcode - CopyWithRandomList

    Algorithm: Iterate and copy the original list first. For the random pointer, just copy the value fro ...

  10. Mark指针的指针(**)和链表使用(*&)

    利用二级指针删除单向链表 彻底理解链表中为何使用指针的指针或者指针的引用 详解C++指针的指针和指针的引用