第三章 红帽企业linux 获取帮助 (略)

man 、pinfo、

第四章 编辑文件

1.输出重定向到文件和程序

>file    定向文件(覆盖)

>>file   定向文件(附加)

2>file   定向错误文件

2>/dev/null  定向错误信息丢弃

&>file   合并文件

练习命令

date > 1             日期放到1

ls -a > 2            文件信息放到2

cat 1 2 > 3          2个文件合并到3

echo "test" >> 3     将输出附加到3

diff 2 3 >> 4        对比2和3区别附加到4

find /etc -name passwd 2> /tmp/errors                仅将错误信息保留到文件

find /etc -name passwd > /tmp/output 2> /tmp/errors  将显示信息和报错分开保存

find /etc -name passwd > /tmp/output 2> /dev/null    丢弃错误信息

find /etc -name passwd &> /tmp/save-both             输出和错误同时保存

find /etc -name passwd >> /tmp/save-both8 2>&1       输入和错误附加到现有文件

注:关于 2>&1 (参考:http://os.chinaunix.net/a2009/0903/996/000000996941.shtml)

2.建立管道

ls -l /usr/bin | less   分页显示

ls | wc -l              显示行数

ls -t | head -10        显示最新的前10个

ls -l | tee /tmp/123    显示并保存到文件 (ls -l > /tmp/123 不显示只保存)

tyy                     显示当前窗口

注:tee命令 (参看http://codingstandards.iteye.com/blog/833695)

3.使用vim 编辑文件

i 插入  Esc 返回命令模式  u撤销  yy 复制  p粘贴

v 选在起点   ctrl+v 选择列

第五章 linux用户和组

1. id      显示当前登陆用户信息

ls -l   第三列魏用户名

ps au   显示进程及相关联用户

查看 /etc/passwd

①用户名 ②密码③UID④GID⑤GECOS⑥用户数据位置⑦用户命令行提示符程序   (UID是用户ID,GID组,GTCOS任意字段)

root      :x    :0   :0   :root :/root         :/bin/bash

查看 /etc/group

每个用户有且只有一个主要组,用户可以使0个或多个补充组成员。

2.超级用户访问权限

su -

sudo   执行root权限,在 /etc/sudoers 中设置授权。sudo日志会记录在 /var/log/secure 中。

(linux 7中 wheel 组的所有成员都可使用sudo 。linux6 不行)

3.管理本地用户

useradd   passwd

新用户默认值在 /etc/login.defs 读取,如有效UID默认密码过期规则等,仅在创建新用户使用,更改对现有用户无影响。

usermod  -c   向GECOS字段添加值

-g   为用户指定主要组

-G   为用户指定补充组

-a  与 -G 一起使用,添加到补充组而不删除原组

-d  指定新主目录

-m  迁移主目录到新位置,必须与 -d一起使用

-s  为用户指定新的登陆shell

-L  -U   锁定 / 解锁

userdel   删除用户

123    从/etc/passwd 中删除,/home/123 还在

-r 123  同时删除主目录

fine / -nouser -o -nogroup 2> /dev/null  删除无人文件,确保安全

id       显示用户信息

UID     范围 0:超级用户               1-200:系统用户,静态分配给系统进程

201-999:动态分配给软件   1000+:非配给普通用户

tail -n XXX.log  n 显示行数, 动态显示最后5行

4.管理本地组

groupadd -g 5000 ateam   : -g 指定GID

groupadd -r   ateam      : -r 使用 /etc/login.defs 中的GID编号

groupmod -n              : 更改组名

groupmod -g              :指向新的GID

groupdel                 :删除组

例1: $ chmod 644 mm.txt

  $ ls –l

  即设定文件mm.txt的属性为:

  -rw-r--r-- 1 inin users 1155 Nov 5 11:22 mm.txt

  文件属主(u)inin 拥有读、写权限

  与文件属主同组人用户(g) 拥有读权限

  其他人(o) 拥有读权限

  例2: $ chmod 750 wch.txt

  $ ls –l

  -rwxr-x--- 1 inin users 44137 Nov 12 9:22 wchtxt

  即设定wchtxt这个文件的属性为:

  文件主本人(u)inin 可读/可写/可执行权

  与文件主同组人(g) 可读/可执行权

  其他人(o) 没有任何权限

STICKY:
t 位:sticky粘滞位。对于一个大家都可以写的公共场所,每一个用户都可以写,删除权限的前提下,我们限定,大家只能删除自己的。这样的功能,就是t位 。/tmp就是有特殊属性 t 的目录。
t位是放在 o 上的, 其他人上的。

chmod o+t /project/

-----------------------------------------------------
SUID , SGID , STICKY
他们也用3位2进制来表示
  4 2   1

5.管理密码

linux7 支持的新算法 sha-256 和 sha-512(默认)

密码哈希存储在 /etc/shadow (9个:分割)

①用户名②密码③最后改密日期④改密最少天数⑤改密最多天数⑥到期警告⑦密码过期后活动天数⑧到期日期⑨blank预留

jjp:$6$f...6sf4xXN0:16476:0:99999:7:::

注:密码以“!”开头表示已锁定,天数都是以距1970年1月1日起算天数。

密码过期

chage -l username      显示用户当前密码配置

chage -d 0 username    强制用户第一次或下次登录更改密码

chage -E YYYY-MM-DD    指定账户到期

限制访问

usermod -L username                 锁定账户

usermod -U username                 解锁

usermod -M 90  username             每90天改变密码

usermod -s /sbin/noiogin  username  停用用户shell,用户可验证,通过非交互方式访问。

练习:

确定未来90天日期         #date -d "+90 days"

将用户设为该日期到期     #chage -E 2015-12-12 username

检测一下是否已经修改了   #chage -l username

RHCE学习笔记 管理1 (第三~五章)的更多相关文章

  1. RHCE学习笔记 管理1 (第六章 第七章)

    第六章 利用linux 文件系统权限文件访问 1.linux文件系统权限 文件的权限分为:  rwx  读/写/执行 ls -l  /home   查看/home下文件 ls -ld /home   ...

  2. RHCE学习笔记 管理1 (第一、二章)

    第一章 命令行访问 1.Ctrl+alt+F2~F6 切到虚拟控制台,ctrl+alt+F1 回到图形界面 2.格式 : 命令 选项 参数 [] 为可选项目            ...表示该项目任意 ...

  3. The Definitive Guide To Django 2 学习笔记(九) 第五章 模型 (一)数据库访问

    以MySql数据库为例,先到http://dev.mysql.com/downloads/connector/python/处下载MysqlConnector for python的连接器. from ...

  4. Java虚拟机内存溢出异常--《深入理解Java虚拟机》学习笔记及个人理解(三)

    Java虚拟机内存溢出异常--<深入理解Java虚拟机>学习笔记及个人理解(三) 书上P39 1. 堆内存溢出 不断地创建对象, 而且保证创建的这些对象不会被回收即可(让GC Root可达 ...

  5. 《python基础教程(第二版)》学习笔记 列表/元组(第2章)

    <python基础教程(第二版)>学习笔记 列表/元组(第2章)序列中的下标从0开始x='ABC' ==> x[0]='A', x[1]='B', x[2]='C'负数索引从右边开始 ...

  6. 《python基础教程(第二版)》学习笔记 基础部分(第1章)

    <python基础教程(第二版)>学习笔记 基础部分(第1章)python常用的IDE:Windows: IDLE(gui), Eclipse+PyDev; Python(command ...

  7. Deep Learning(深度学习)学习笔记整理系列之(五)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  8. Verilog学习笔记简单功能实现(五)...............序列检测设计

    这里采用夏宇闻教授第十五章的序列检测为例来学习; 从以上的状态转换图可以写出状态机的程序: module seqdet(x,out,clk,rst); input x,clk,rst; output ...

  9. JavaScript高级程序设计(第三版)学习笔记20、21、23章

    第20章,JSON JSON(JavaScript Object Notation,JavaScript对象表示法),是JavaScript的一个严格的子集. JSON可表示一下三种类型值: 简单值: ...

随机推荐

  1. mysql 集群的一些概念

    读写分离: 主备机有 master-master方式,mysql自己提供两个机器之间的备份 binlog方式,一个机器master 用于写数据,一个用于读数据,写数据的那个机器也应有读读功能,有既有读 ...

  2. 【转】约瑟夫环算法---------题目:有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位.

    提示:用环形链表实现 对于这个题目其实就是用c语言的循环链表实现一个约瑟夫环.我们可以定义一个循环链表,将这n个人加入到链表中,然后定义三个节点指针在链表上循环,移动跨度为3,利用链表的循环功能每次删 ...

  3. LUA速成教程

    說明: 1.該教程適合對編程有一定了解的人員. 2.該教程在WINDOWS下實驗. 切入正題, 1.首先下載Notepad++,工欲善其事,必先利其器,然後安裝NotePad++的插件NppExec. ...

  4. python学习【第四篇】python函数 (一)

    一.函数的介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以 ...

  5. EasyNVR摄像机无插件直播如何排查视频广场不在线

    通道配置完成进入视频广场监控通道显示不在线 保证RTSP视频流地址是否可用,推荐用VLC先测试地址是否可用.(注意:软件本身只支持标准的RTSP视频流地址.) 如果是刚配置完需要等大概几秒左右有的网络 ...

  6. SharePoint服务器端对象模型 之 对象模型概述(Part 1)

    在一个传统的ASP.NET开发过程中,我们往往会把开发分为界面展现层.逻辑业务层和数据访问层这三个层面.作为一个应用开发平台,SharePoint是微软在直观的开发能力和自由的扩展能力之间,取到的一个 ...

  7. isnull在order by中的使用——让我长见识了

    select * from VisitLogorder by ISNULL(NextVisitDate,'2299-01-01') 此sql的作用是查找表中的数据,并按照NextVisitDate字段 ...

  8. alert弹窗方法1

    1.代码 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta http-equiv=&quo ...

  9. 巨蟒django之权限6: 权限控制表设计&&登录权限

    1.权限控制表设计 内容 . 什么是权限? . 为什么要有权限? 不同用户拥有不同的功能 . 在web开发中,什么是权限? url 代表 权限 . 开发一个权限的组件,为什么要开发组件? . 表结构的 ...

  10. C#处理MySql多个返回集

    关于Mysql返回多个集java和Php的较多,但是C#的完整代码好像没见过,研究了一下做个封装以后用 做一个Mysql的简单分页查询,有两个返回集 Sql语句如下 SELECT COUNT(*) f ...