Linux系统中的输入输出管理及Linux中的用户管理

一.Linux中的输入输出管理

1.理解什么是输入输出

1)字符设备

字符设备就是现实字符到屏幕上的设备文件

2)stdin 标准输入 编号为0  如键盘 鼠标 打字机

3)stdout 标准正确输出 标号为1

4)stdrr标准错误输出 标号为2

在普通用户下,用命令dev/pts/0(1,2...)来查看

操作如下:

2.如何管理系统输出

(1)输出重定向

    1>    正确输出

    2>    错误输出

    &>    输出所有

在普通用户下,作如下实验

find   /etc  -name passwd  1> westos.out     重定向正确输出

find   /etc  -name passwd  2> westos.err   重定向错误输出

find   /etc  -name passwd  &> westos.all   重定向输出所有

注意:重定向输出后,会覆盖原始文件里的内容

实验如下:

find  /etc -name passwd  这条命令在普通用户下输入时 输出会有报错,原因是报错的地方 普通用户不能访问,只有超级用户才能访问。

(2)追加输出

    1>>   正确输出

    2>>  错误输出

    &>>    输出所有

  find   /etc  -name passwd  1>>  westos.out   追加正确输出

  find   /etc  -name passwd 2>>westos.err   追加错误输出

  find   /etc  -name passwd  &>>  westos.all   追加输出所有

注意:追加管理输出后,不会覆盖原始文件内容 追加和重定向功能类似

(3)管道符 “|”

     把前一条命令的输出变为输入,传递到下一条命令进行操作,注意:管道符只处理正确的输出,在一条命令中可以使用多次。

     # 2>&1  表示将编号为2的输入到编号为1的输出中

    # tee  表示复制输出到指定位置,操作如下

例题:找出系统中/etc下 名字中带有数字并以.conf结尾的文件名,将其备份到桌面coffile中并统计文件个数

 find  /etc -name *[1-9]*.conf  2>/dev/null  |  tee conffile |  wc -l

2.如何管理输入

外界传递到程序的信息

(1)<   表示输入重定向

# tr 'a-z' 'A-Z' < test    test文件中的内容定向到tr的程序中

(2)<<  多行录入  

   # tr 'a-z' 'A-Z' <<   EOF(任意字符)

     test

    test1

     EOF

当首字母再次出现时 表示录入结束,此处的test不能表明各文件 只表示字符

二.Linux中的用户管理

1.用户和用户组存在的意义

(1)用户存在的意义

  系统资源是有限的,如何合理分配系统资源,在这个问题得到解决时,必须要有两个资源配合。

   1)身份 (account)2)授权(author) 3)认证(auth)

   称为3A机制,组成了系统对底层的安全架构

2. 用户组存在的意义

电脑对数字敏感(ID) 人类对文字敏感(名称) 名称必须要记录到文件中才能被使用

Linux中记录用户信息的命令 /etc/passwd 

用户就是/etc/passwd 文件中的一行字符

用户组的存在方式就是/etc/group 文件中的一行字符

3.用户切换

1)用户查看

whoami  查看当前用户

id   查看用户id信息

id   -u  查看用户的用户id 

id   -g   查看用户的主组id 

id   -G   查看用户所有组的id

id   -n  显示名称  该命令不可单独使用 需和上面命令搭配使用

2)用户切换

  su  -   username        

 -  代表切换用户环境

  如果root ------>  普通用户 不需要密码

  如果普通用户------->root 需要密码

  普通用户 -------》普通用户  需要密码

注意:当在做用户切换时,使用完毕用户身份后 要及时退出,不要在一个shell中反复执行su命令 否则会造成环境错乱

操作如下

4.用户涉及到的系统配置文件

(1)/etc/passwd   用户身份信息文件 每一行都有7列内容,分别表示:用户名称;用户密码;用户id;用户主id;用户说明;用户家目录;用户默认的shell

(2)/etc/group 组身份信息文件  有4列,分别表示:组名称;组密码;组id;组的附加成员

(3)/etc/skel/.*  用户环境配置文件模版

(4)/etc/shadow 用户认证信息

(5)/home/username  用户家目录

5.用户和用户组的建立及删除

为了做实验的效果,我们需要运用监控,建立用户监控命令

tail  -n -4 /etc/passwd /etc/group; echo====; ls -l  /home

watch -n 1 "tail  -n -4 /etc/passwd /etc/group; echo====; ls -l  /home"

(1)用户建立: useradd username 

       useradd -u id username    uid的设定

       useradd -g id username  主组id

       useradd -G  id username 附加组id 

       useradd -d dir  username  指定用户家目录

       useradd -c word  username  指定用户说明

       useradd -s  shell  username  指定用户shell

       用户的删除 userdel  -r username

(2)用户组的建立    groupadd   groupname

   用户组的删除      groupdel   groupname

  groupadd    -g id  groupname  指定组名称

注意:#0 表示超级用户  #1-200 表示预留id   #201-999 表示系统用户  #1000-60000  用户级用户 

/etc/login.defs  记录用户建立的默认规则

上述操作如下:

6.用户和用户组的信息管理

usermod -l   更改用户名 

usermod -u  更改用户id 

usermod -g   更改用户组id 

usermod -G   更改用户附加组身份

usermod -aG  添加用户附加组信息

usermod -c    更改用户说明

usermod -d    更改用户家目录指向

usermod -md   更改家目录指向同时更改家目录名称

usermod -s  更改shell

groupmod  -g  改变用户组id 

操作如下

 

7.用户认证信息管理

(1)用户名称

(2)用户加密字符

   passwd lee   只有普通用户可更改

  passwd   普通用户改密码(改的密码是8位以上的)

  “echo 123 | passwd --stdin lee” 改密码

   passwd -S lee 查看密码状态

   passwd -l lee 冻结账号

   passwd -u  lee  解锁账号

  passwd -d lee  删除密码

(3)密码使用天数从1970-1-1  算到今天的时间

     passwd -e  lee  修改默认使用时间     或者  chage -d 0 lee  修改后必须重新改密码才能登陆

(4)密码的最短有效期

      passwd -n 1 lee 或  chage -m 1 lee    lee在1天内不能改密码

(5)密码最长有效期 

     passwd -x 40 lee   40天内用户必须更改密码 否则会被冻结

     chage  -M  30  lee 

(6)密码过期警告 

      passwd -w 2 lee  或  chage  -W  2 lee   

(7) 认证非活跃天数 

     passwd -i 2 lee  或  chage  -I  2 lee   账号认证最大时间超过后 还能用多久

(8)账号认证到期时间 

   chage -E “2020-05-11”  到2020.05.11 这天账号会被冻结  

(9)未启用功能

操作如下 

8.用户权利下放 

在系统中普通用户无法执行系统的管理命令的,如果需要普通用户执行系统管理动作,那么需要root用户来进行授权

普通用户的授权方式是 sudo 

作用是:可以使普通用户用指定的用户身份进行命令

授权方法:

visudo   此命令作用是编辑相当于打开vim etc/sudoers 文件并提供语法检测  在100行左右进行编辑

  username   hostname=(newsusername)   [NOPASSWD:]  /command, /command

例如:

  用 which useradd  查看该命令所在目录

   lee    linux.com=(root)     [NOPASSWD:]  /usr/sbin/useradd,/usr/sbin/userdel

实验过程:

首先在超级用户下,进入visudo 在100行左右写入lee    linux.com=(root)     [NOPASSWD:]  /usr/sbin/useradd,/usr/sbin/userdel

然后退出  su - lee ------->  sudo useradd westostest   即可进行超级用户权力下放给普通用户

本章习题如下

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本PDF电子书包含上下两册,共1576页,带目录,高清非扫描版本。 作者: 毛德操 胡希明 丛书名: Linux内核源代码情景分析 出版社:浙江大学出版社 目录 第1章 预备知识 1.1 Linux内核简介. 1.2 Intel X86 CPU系列的寻址方式 1.3 i386的页式内存管理机制 1.4 Linux内核源代码的C语言代码 1.5 Linux内核源代码的汇编语言代码 第2章 存储管理 2.1 Linux内存管理的基本框架 2.2 地址映射的全过程 2.3 几个重要的数据结构和函数 2.4 越界访问 2.5 用户堆栈的扩展 2.6 物理页面的使用和周转 2.7 物理页面的分配 2.8 页面的定期换出 2.9 页面的换入 2.10 内核缓冲区的管理 2.11 外部设备存储空间的地址映射 2.12 系统调用brk() 2.13 系统调用mmap() 第3章 断、异常和系统调用 3.1 X86 CPU对断的硬件支持 3.2 断向量表IDT的初始化 3.3 断请求队列的初始化 3.4 断的响应和服务 3.5 软断与Bottom Half 3.6 页面异常的进入和返回 3.7 时钟断 3.8 系统调用 3.9 系统调用号与跳转表 第4章 进程与进程调度 4.1 进程四要素 4.2 进程三部曲:创建、执行与消亡 4.3 系统调用fork()、vfork()与clone() 4.4 系统调用execve() 4.5 系统调用exit()与wait4() 4.6 进程的调度与切换 4.7 强制性调度 4.8 系统调用nanosleep()和pause() 4.9 内核的互斥操作 第5章 文件系统 5.1 概述 5.2 从路径名到目标节点 5.3 访问权限与文件安全性 5.4 文件系统的安装和拆卸 5.5 文件的打开与关闭 5.6 文件的写与读 5.7 其他文件操作 5.8 特殊文件系统/proc 第6章 传统的Unix进程间通信 6.1 概述 6.2 管道和系统调用pipe() 6.3 命名管道 6.4 信号 6.5 系统调用ptrace()和进程跟踪 6.6 报文传递 6.7 共享内存 6.8 信号量 第7章基于socket的进程间通信 7.1系统调用socket() 7.2函数sys—socket()——创建插口 7.3函数sys—bind()——指定插口地址 7.4函数sys—listen()——设定server插口 7.5函数sys—accept()——接受连接请求 7.6函数sys—connect()——请求连接 7.7报文的接收与发送 7.8插口的关闭 7.9其他 第8章设备驱动 8.1概述 8.2系统调用mknod() 8.3可安装模块 8.4PCI总线 8.5块设备的驱动 8.6字符设备驱动概述 8.7终端设备与汉字信息处理 8.8控制台的驱动 8.9通用串行外部总线USB 8.10系统调用select()以及异步输入/输出 8.11设备文件系统devfs 第9章多处理器SMP系统结构 9.1概述 9.2SMP结构的互斥问题 9.3高速缓存与内存的一致性 9.4SMP结构断机制 9.5SMP结构的进程调度 9.6SMP系统的引导 第10章系统引导和初始化 10.1系统引导过程概述 10.2系统初始化(第一阶段) 10.3系统初始化(第二阶段) 10.4系统初始化(第三阶段) 10.5系统的关闭和重引导

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值