第四单元
#########管理输入输出#########
正确输出的编号为1,错误输出编号为2,在普通用户下会因为用户权限,出现两种结果(正确输出和报错)
find /etc -name passwd
find: ‘/etc/pki/CA/private’: Permission denied##没有进入权力,报错
/etc/passwd##正确输出
date |tee file |wc -l ##复制date的输出到file中,并且统计行数
知识点:
find /etc -name passwd > file ##重定向正确输出
find /etc -name passwd 2> file ##重定向错误输出
find /etc -name passwd &> file ##重定向所有输出
> 2> &> 输出重定向符号(会覆盖原文件的内容)
find /etc -name passwd >> file ##添加正确输出
find /etc -name passwd 2>> file ##添加错误输出
find /etc -name passwd &>> file ##添加所有输出
>> 2>> &>> 不会覆盖原文件的内容,会将新的输出附加在原文件的后面
> file ##清除file中的内容
tee 复制输出到某一位置
| 管道,将前一条命令的输出变为后一个命令的输入
###########vim###########
1、vim命令模式下:(临时设定)
:set nu ##添加行号
:set nonu ##取消行号
:set mouse=a ##鼠标选择
:set cursorline ##显示行线
(永久设定)
在vim /etc/vimrc中最后加入临时设定中的命令,并保存退出即可
2、vim中搜索关键字
/关键字 n向下匹配 N向上匹配
3、vim中字符管理(3可以改变)
(1)复制
yl ##复制一个字符
y3l ##复制三个字符
yw ##复制一个单词
y3w ##复制三个单词
yy ##复制一行
y3y ##复制三行
p ##复制完成后粘贴
(2)删除
dl ##删除一个字母
d3l ##删除三个字母
dw ##删除一个单词
d3w ##删除三个单词
dd ##删除一行
d3d ##删除三行
(3)剪切(粘贴时一定要退出插入模式)
cl ##剪切一个字母
c3l ##剪切三个字母
cw ##剪切一个单词
c3w ##剪切三个单词
cc ##剪切一行
c3c ##剪切三行
4、可视化
在命令模式下按ctrl+v进入,这时可区域选择或添加字符
5、批量修改字符(将全文需要替换的替换掉,后面有/g)
:%s/原有字符/替换后字符 ##替换调每一行第一个出现的原有字符
:%/原有字符/替换后字符/g ##替换所有
:%s/\t//g ##替换全文的tab键,\t代表tab键
:%s/^\ *//g ##替换全文行首的空格,"^\ *"表示行首的空格
:%s/^\#\ */#/g ##替换全文#后面的空格
6、分屏功能
ctrl+w s ##上下分屏
ctrl+w v ##左右分屏
ctrl+w c ##关闭光标所在屏幕
ctrl+w 上下左右 ##光标移动到指定屏幕
:sp file2 ##同时编辑当前文件和file2
7、光标移动
命令模式
:数字 移动到指定某一行
G 移动到最后一行
gg 移动到第一行
插入模式
i 从光标所在位置插入
I 从该行行首插入
a 从光标所在字符下一位置插入
A 从该行行尾
O 从光标所在上一行
o 从光标所在下一行
s 删除光标所在位置并插入
S 删除光标所在行并插入
8、退出
q q! wq wq!
!表示强制退出,q不保存退出,wq先保存再退出
#########gedit##########
ctrl+n ##在gedit中打开一个新的tab
ctrl+s ##保存文件
ctrl+o ##打开文件
ctrl+x ##剪切字符
ctrl+v ##粘贴字符
ctrl+c ##复制字符
yelp help:gedit ##gedit的图形手册
第五单元
######用户管理#########
用户即使用者的身份
从/etc/passwd文件中可看到,第一行为root用户,然后为系统用户,普通用户通常在文件最后,每一行有7段,每个字段中间用:隔开
用户名: 密码: uid: gid: 用户信息说明: 用户家目录: Shell
/etc/shadow文件与/etc/passwd是互补的
用户名:密码:上次密码修改时间:最短有效期:最长有效期:警告期:非活跃期:密码失效日期
实验监控命令watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo ====;ls -l /home;echo ===;ls -l /mnt'
#####useradd创建新用户#######
useradd -c 设置用户备注信息
-d 设置用户家目录
-b 在未使用-d时,设置用户登陆后的基目录
-e 帐号过期时间
-f 指定密码过期后,帐号禁止使用前的时间
-g 指定用户的初始组信息,必须已经存在
-G 指定用户所属的附加组
-p 指定密码
-r 创建系统帐号
-s 指定用户的默认shell程序
-u 指定用户的ID号
useradd指令没有-p时创建的新用户,必须使用passwd指令设置密码后才能登陆系统
######userdel删除用户及相关文件########
userdel -f 强制删除用户,即使当前用户已经登录
-r 删除用户同时,删除与用户相关的所有文件
#####groupadd创建新工作组#####
groupadd -g 指定新建工作组的ID
-o 允许添加ID号不唯一的工作组
####groupdel删除新工作组####
groupdel 工作组名
####su切换用户身份####
su -/-l/-login 重新登录为该用户,若没有指定用户,默认为root,普通用户切换时需要root的密码
-c/--commond 变更帐号为指定用户,执行命令后再变回原来的用户
-m/-p/--preserve-environment 不改变环境参数
-s/--shell 指定要执行的shell
#####sudo#######
su只适用于一两个人参与管理的用户,sudo可以把某些超级权限有针对性的下放,不需要知道root的密码
编辑文件使用visudo,对语法进行简单的检验,并防止多个程序同时编辑该文件
sudo命令中常用参数说明
-l 显示出执行sudo的使用者的权限
-v 验证用户的时间戳,执行sudo命令后,短时间内可直接进行sudo操作
-u #500 切换到uid为500的用户
-k 强迫用户者在下一次执行sudo时提供密码
####用户权限下放####
在系统中超级用户可以下放普通用户不能执行的操作给普通用户,配置文件为/etc/sudoers
下放权力的方法
超级用户执行visudo进入编辑/etc/sudoers模式
格式:获得权限用户主机名称=(获得到的用户身份)命令
Studentbogon=(root)/usr/sbin/useradd
test用户能在desktop17.example.com以超级用户身份执行/usr/sbin/useradd
执行下放权限命令
sudo命令##如果第一次执行sudo需要输入当前用户密码
在/etc/sudoers中如果设置如下:
Student bogon=(root) NOPASSWD: /usr/sbin/useradd ##表示用户调用sudo命令的时候不需要自己密码
####用户id信息查看#####
id-u用户uid
-g用户初始组id
-G用户所有所在组id
-n 显示名称而不是id数字
-a显示所有信息
####usermod修改用户#####
usermod[-u uid[-o]][-g group][-G group,...][-d 主目录 [-m]][-s shell][-c 注释][-l 新名称][-f 失效日][-e 过期日][-p 密码][-L|-U] 用户名
usermod -l 更改用户名称
-u 更改uid
-g 更改gid
-G 更改附加组
-aG添加附加组
-c 更改说明
-d 更改家目录指定
-md更改家目录指定及家目录名称
-s 更改shell
-L 冻结帐号
-U 解锁
####4.用户认证信息的控制####
chage -d 用户密码组后一次修改的时间,如果设定成0,用户登陆系统后必须修改自己的密码
-m 最短有效期
-M 最长有效期
-W 警告期
-I 用户非活跃天数
-E 帐号到期日格式 -E "YYYY-MM-DD"