linux学习系列三
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学习系列三的更多相关文章
- Linux学习系列八:操作网口
一些相对高性能的单片机会带以太网接口,网口在MCU里算是比较复杂的外设了,因为它涉及到网络协议栈,通常情况下网络协议栈会运行在一个RTOS中,所以对普通单片机开发者来说网口使用起来相对难度较大一些.在 ...
- MyBatis学习系列三——结合Spring
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring MyBatis在项目中应用一般都要结合Spring,这一章主要把MyBat ...
- scrapy爬虫学习系列三:scrapy部署到scrapyhub上
系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备: http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...
- DocX开源WORD操作组件的学习系列三
DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...
- RabbitMQ学习系列三-C#代码接收处理消息
RabbitMQ学习系列三:.net 环境下 C#代码订阅 RabbitMQ 消息并处理 http://www.80iter.com/blog/1438251320680361 http://www. ...
- .net reactor 学习系列(三)---.net reactor代码自动操作相关保护功能
原文:.net reactor 学习系列(三)---.net reactor代码自动操作相关保护功能 接上篇,上篇已经学习了界面的各种功能以及各种配置,这篇准备学习下代码控制许可证. ...
- Identity Server4学习系列三
1.简介 在Identity Server4学习系列一和Identity Server4学习系列二之令牌(Token)的概念的基础上,了解了Identity Server4的由来,以及令牌的相关知识, ...
- RabbitMQ学习系列三:.net 环境下 C#代码订阅 RabbitMQ 消息并处理
上一篇已经讲了Rabbitmq如何在Windows平台安装 不懂请移步: RabbitMQ学习系列二:.net 环境下 C#代码使用 RabbitMQ 消息队列 一.理论 .net环境下,C#代码订阅 ...
- C# Redis学习系列三:Redis配置主从
Redis配置主从 主IP :端口 192.168.0.103 6666 从IP:端口 192.168.0.108 3333 配置从库 (1)安装服务: redis-server ...
随机推荐
- spring boot 使用拦截器 实现 用户登录拦截
登录拦截和和权限拦截实现类似 首先自定义一个[DefineAdapter]类,这个类我是用来放自定义的配置(比如 自定义请求参数,自定义拦截器等),集成WebMvcConfigurerAdapte ...
- [译]GLUT教程 - 交换菜单
Lighthouse3d.com >> GLUT Tutorial >> Pop-up Menus >> Swapping Menus GLUT甚至可以在应用程序过 ...
- erlang 求N以内的质数
素数,又称质数,在一个大于1的自然数中,除了1和此整数自身之外,不能被其他自然数整除的数. 比1大但不是素数的数称为合数. 1和0既不是素数,也不是合数. 算术基本定理证明每个大于1的正整数都可以写成 ...
- liunx 下安装 php_screw 扩展 以及报错处理
php_screw 是一个 php 源代码加密扩展.首先来看一下 php_screw 在liunx下是如何安装的 首先 去源完整下载 安装包,现在的最新版是 1.5,我们就用1.5 来做个实例 如果有 ...
- PHP基础知识学习总结
从今天开始过一遍PHP的基础知识 加油 地址:http://www.runoob.com/php/php-mail.html 该看:PHP发送电子邮件 2017年5月23日23:38:30 ...
- c语言三元组
// Triplet.cpp : 定义控制台应用程序的入口点.//#include "stdio.h"#include "stdlib.h"#define OK ...
- spring boot数据库操作汇总
1 关于orm orm即object relational mapping,对象关系映射,即将数据库中的表映射成对象. 常用的orm有以下: mybatis spring jdbc template ...
- redis持久化RDB详细操作步骤
1.xshell远程登录服务器ssh root@192.168.142.130 2.切换到redis目录 3.创建一个配置文件s2-redis.conf 4.编辑文件 vi s2-redis.conf ...
- shell if判断-n
test测试命令 test命令用于检查某个条件是否成立,它可以进行数值.字符串和文件三个方面的测试,其测试符和相应的功能分别如下: (1)数值测试: -eq:等于则为真 -ne:不等于则 ...
- python多版本管理
1.查看系统中的安装了那些python版本 2.查看系统中的alternatives命令是否安装 3.使用alternatives --install 接管python -install 选项使用了多 ...