第三章 红帽企业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. 1、easyUI-创建 CRUD普通dataGrid(表格)

    在实现功能之前,我们要做以下几个准备: 分以下几个步骤:开发工具,easyUI包,目录结构,创建数据库,创建相应的页面视图,后台代码编写,优化: 第一步:开发工具 我的开发工具是Hbuild,开发语言 ...

  2. Linux 进程间通信(二)(网络IPC:套接字)

    socket描述符 套接字是通信端点的抽象,创建一个套接字使用如下函数: #include <sys/socket.h> int socket(int domain, int type, ...

  3. 《从零开始学Swift》学习笔记(Day 12)——说几个特殊运算符

    原创文章,欢迎转载.转载请注明:关东升的博客   除了一些常用的运算符,还有一些其他的: •      引用号(.):实例调用属性.方法等操作符. •      问号(?):用来声明可选类型. •   ...

  4. minimum viable product

    w https://en.wikipedia.org/wiki/Minimum_viable_product

  5. dbUtils 原理

    // Jdbc 的增,删, 改流程类似,只是参数不同, 因此可以向上抽取 public class Demo{ // Jdbc 的增加 public void addStu(Stu stu){ Con ...

  6. 使你的C/C++代码支持Unicode(CRT字符串处理的所有API列表,甚至有WEOF字符存在)

    悉Microsoft支持Unicode的方式. 它的主要目的是方便你查询相关的数据类型和函数,以及修正相应的拼写错误. I18nGuy 主页 XenCraft (Unicode 咨询公司) Engli ...

  7. setlocale同mbstowcs函数的关系(VS2008下setlocale(LC_ALL, "chs")可以执行成功,BCB使用setlocale(LC_ALL, "Chinese (Simplified)_People's Republic of China"),linux上locale别名表大概在 /usr/lib/X11/locale/locale.alias)

    序中,如果要将ASCII码字符串转换为宽字符(Unicode),可以利用标准C的mbstowcs函数. 微软在MSDN中有示例,如下: 然而,这段代码在处理含有汉字的字符串时就会出现问题.比如将: w ...

  8. django实现密码非加密的注册(数据对象插入)

    数据模型 from django.db import models class userinfo(models.Model): username = models.CharField(max_leng ...

  9. MySQL复制(一):复制的基本步骤

    从这里开始,对复制的内容开始做一些详细的描述,复制从简单到入门 复制最简单的模式如下 基本的三个简单步骤 1 配置一个服务器为master 2 配置一个服务器为slave 3 将slave连接到mas ...

  10. Python3.6全栈开发实例[022]

    22.完成彩票36选7的功能. 从36个数中随机的产生7个数. 最终获取到7个不重复的数据作为最终的开奖结果.随机数: from random import randintrandint(0, 20) ...