RHCSA2

vim 文本编辑器

 插入模式
   a 光标后
   A 行尾
   o 光标所在行下一行
   O 光标所在行上一行
   i 光标前
   I 行首
   s   删除光标所在位置的字符并进入插入模式
   S
 命令模式
   d  删除
   dd 删除当前行
   dgg 删除光标到文档首
   dG  删除光标到文档尾部
   d$  删除光标到行尾,包括光标所在位置字符
   d^ 删除光标到行首,不包括光标所在位置的字符
   dw 按单词删除
   gg  跳转到文档首部行首
   G   跳转到文档尾部行首
   u  撤销之前的操作
   Ctrl+r   重做
   行号G   跳转到指定行
   x 删除光标所在位置的内容
   行数yy  复制光标所在行开始第几行
   p   粘贴到光标所在行的下一行
   cc 剪切当前行
   行数cc 剪切当前行开始的几行
   H   跳转到当前屏幕输出的最上面一行
   L 跳转到当前屏幕输出的最下面一行
   M 跳转到当前屏幕输出的中间那一行
   $ 行尾
   ^ 行首
   w 按单词进行移动光标
   r 替换光标所在的字符
   h 往左按字符移动光标
   j 往下(后)按行移动光标
   k   往上(前)按行移动光标
   l   往右按字符移动光标
末行模式
  :w  保存
  :w FILENAME 另存为FILENAME
  :q  退出
  :wq 保存退出
  :q! 强制退出不保存
  :set nu   显示行号
  :行号  跳转到指定行
  :set nonu  取消显示行号
  :%s/被替换内容/替换后的内容/g
  :%s/内容
  / 查找字符串
   n
   N
  :noh   取消高亮显示 
  :r /FILENAME 读取指定文件的内容到当前文件

eg:

1.关闭域名解析    
 vim /etc/ssh/sshd_config
 匹配关键字  DNS
 将该行复制粘贴后将#号取消yes改为no
 保存退出
 重启服务: systemctl restart sshd
    

2、配置postfix服务
    cp  /etc/postfix/main.cf /etc/postfix/main.cf.bak
    vim /etc/postfix/main.cf
    #配置邮件服务器主机名
    76 myhostname = mail.openlab.com
    #配置域名
    83 mydomain = openlab.com
    #指定邮件发送时的域名 
    99 myorigin = $mydomain
    #指定网络接口
    113 inet_interfaces = all
    116 加注释
    #指定服务器的目标区域
    164 mydestination = $myhostname,localhost.$mydomain,localhost,$mydomain
    #指定允许网络网段地址
    264 mynetworks = 192.168.221.0/24
    #转发域
    296 relay_domains = $mydestination 
    :wq
    [root@localhost~] #systemctl restart postfix 

用户和组的基本信息

  • 用户和组的相关信息
    /etc/passwd 用户相关信息
    /etc/login.defs 设置用户创建时默认相关信息
    /etc/defualt/useradd 用户添加时会创建的相关信息设置
    /etc/skel 用户家目录下相关隐藏文件
    /etc/group 组相关信息
    /etc/gshadow 组密码
    /etc/shadow 用户密码
    /var/spool/mail 用户邮箱记录

  • 用户类别
    管理员 0 root
    普通用户 1-65535,2^16个
    | 1-200 系统中的管理用户
    |-系统用户 201-999,专门用来运行后台进程和服务的用户,不允许登陆系统(服务用户)
    |-一般用户 1000-60000,后面的很少使用

  • 用户组类别
    按照用户类别的分法
    管理员组 root
    普通组

    • |-常用分法
      |-(主)基本组,用户的默认组
      |-附加组 额外组,默认组以外的其他组

用户和组的管理

用户管理
  • 查看用户信息
    /etc/passwd 冒号隔开的七个字段
    (1) account 用户名
    (2) password 密码,x为密码占位符,目标为/etc/shadow第二个字段
    (3) UID 用户ID
    (4) GID 基本组ID,额外组信息在/etc/group文件中
    (5) CECOS 用户基本信息
    (6) HOME DIR 用户家目录,系统用户不允许登陆
    (7) shell 用户的默认shell,/etc/shells保存了所有的合法shell
用户管理
  • 添加用户
    useradd
    useradd USERNAME/adduser
    -u UID 指定UID
    -g GID 指定基本组
    -G GID1,GID2,… 指定附加组
    -c “注释信息” 指定用户注释信息 chfn
    -d /path/to/dir 指定某个目录为用户家目录
    -s /shell 指定用户使用的shell chsh -s
    chsh -s修改用户shell

  • usermod 修改用户相关信息,选项同useradd
    -u 修改UID
    -g 修改基本组,基本组必须事先存在
    -G 这个选项会覆盖之前的附加组,和-a选项配合使用
    usermod -a -G 追加附加组
    -c 修改用户注释信息
    -s 修改用户shell
    -l 修改登陆名

  • 删除用户

    userdel

    userdel USERNAME
    

    -r 删除用户时删除用户家目录和用户的邮箱

  • 查看用户的ID信息
    id 查看用户的ID信息,选项同useradd
    -u 显示UID
    -G 显示附加GID
    -g 显示GID

添加组和组管理
  • 添加组
  • groupadd 添加一个组
    -g GID
    -r 添加系统组
  • 删除组
  • groupdel 删除一个组 (不能删除基本组)
  • 修改组
  • groupmod 修改一个组
    -g GID
    -n GRPNAME 修改组名
用户和组的在系统中的配置信息
/etc/login.defs
用户的相关默认属性

添加用户就是在/etc/passwd、/etc/shadow、/etc/group中添加用户相关信息
默认属性都来自/etc/default/useradd /etc/skel
/etc/default/useradd
文件格式
GROUP=100 组(在linux当中用户默认组有两种模式公有模式,私有模式当前我们学习的linux是一种私有模式)
HOME=/home 家目录
INACTIVE=-1 密码宽限期限
EXPIRE= 账户过期期限不启用
SHELL=/bin/bash 指定shell
SKEL=/etc/skel 默认文件
CREATE_MAIL_SPOOL=yes 邮件配置

密码管理

/etc/shadow 冒号隔开的九个字段
(1) account 用户名
(2) password 加密后的密码,格式为666???$* !!或者* 账户锁定 salt
(3) 最后一次修改时间 从1970年1月1日到最后一次密码改变的时间所经过的天数
(4)密码最短使用期限 为0表示不限制
(5) 密码最长使用期限 密码使用多长时间之后必须要改密码,99999表示可不更改
(6)密码过期警告时间 密码过期前多少天进行警告,提示用户改密码,但是不锁定用户
(7) 密码过期宽限期限 密码过期后必须改密码的时间,如果还没改,锁定用户,就只能找网管了
(8)账号过期精确时间 如果为99999,意味着永不过期
(9)保留字段

  • 修改用户密码

    passwd 修改用户密码
    –stdin

    echo “redhat” | passwd --stdin USERNAME
    -l 锁定用户账号密码
    -u 解锁用户账号
    -n 指定密码最短使用期限
    -x 指定密码最长使用期限
    -w 指定警告时间
    -i 指定宽限动时间
    -d 删除用户密码,在redhat中,空密码用户禁止登陆
    change age
    -d 指定最后一次修改密码日期
    -E 过期日期
    -I 宽限时间
    -m 最短使用期限
    -M 最长使用期限
    -w 警告时间

  • 设置组密码
    gpasswd +用户名设置组密码
    -a 添加用户到组
    -d 将指定用户移出本组
    -M 设置组成员列表
    -A 指定管理员(组长)
    -r 删除组密码
    -R 限制用户登录组,只有组中成员才能加入该组 newgrp

    newgrp 登陆一个新组
    使用exit退出新组

权限

权限:指权利范围即行为的的限制

  • 文件
    读r 写 w 执行x 扩展权限(.)
  • 目录
    r 文件 查看(cat tac more less tail head)
    w 编辑添加文件目录
    x 命令是否可以进入该目录
修改用户和权限

chown 修改所属用户

chown USERNAME FILENAME
chown USERNAME:GROUPNAME  FILENAME
chown USERNAME.GROUPNAME FILENAME
chown GROUPNAME FILENAME
用冒号隔开,冒号前是用户,冒号后是组

chgrp 只修改所属组

chgrp GROUPNAME FILENAME

777 目录 r—ls x----cd w ----创建目录、文件 mv cp
666 文件 r—六个查看cat tac more less head tail w----编辑 nano vim > >>
x—命令
字符形式描述权限: r w x (u g o)
-rw- r-- r-- . 1 xiaodou doudou 0 1月 17 11:44 123
u g o
6 4 4

  • 修改权限
    chmod 修改权限
    u 所属用户
    g 所属组
    o 其他
    增加权限 +
    取消权限 -
chmod u=rwx,g+w,o-r FILENAME
  • 权限掩码
    umask 查看系统默认权限掩码值 ,权限掩码 (权限过滤符)
    umask 033 更改权限掩码
安全上下文

安全上下文(一类定义某个进程允许做什么的许可和权限的集合)
权限 特权 完整性等级、访问令牌
secure context

  • 进程的权限取决于用户的发起者的权限,而并非执行文件本身。
    进程访问文件时,先查看用户权限,如果不是,再查看进程的发起用户是不是目标文件所属组成员
    系统任何进程开始都保存为一个文件,由用户执行可执行文件后成为进程,而能否执行,取决于用户对可执行文件有没有权限,而程序一旦执行后转为进程,那么进程就与之前的可执行文件无关,进程的权限为进程发起者的权限,而进程能否访问某个文件,则取决于发起者是否有权限访问目标文件,而这一切就叫做安全上下文
特殊权限

特殊权限
(文件)
SUID:4 运行程序时,进程的所属用户是程序文件自身的权限,而不是进程发者 u+s 4UID强制位

 `chmod u[+|-]s FILENAME` 

如果文件原来有执行权限就显示为s,反之显示S
SGID:2 运行程序时,进程的所属组是程序文件自身的所属组,而不是进程发起者的所属组 g+s 2Gid强制位

  chmod g[+|-]s DIRNAME

Sticky:1 在一个公共目录,每个用户都可以创建文件,删除自己的文件,但不能删除别人的文件 o+t 1冒险位

  chmod o[+|-]t DIRNAME

./+ 扩展权限

getfacl 

u: 用户

g: 组
setfacl
Filesystem Access Control list
-m 设定
setfacl -m u:UID:perm 文件 目录
setfacl -m g:GID:perm
-x 取消(访问 控制列表的条目)
setfacl -x u:UID 指定目录或文件名
u: 用户
g: 组
-b 取消 (将所有扩展权限全部取消)
setfacl -b 指定目录或文件名

磁盘分区

磁盘分区 40G 18G
基于mbr(主引导记录) 一般
可分为4个主分区 或者3个主分区+1个扩展分区+32个逻辑分区
gpt (苹果一般默认分区格式) 256个主分区

  • ide PATA
    工作需要cpu全程参与,在多任务的情况下会系统反应慢;一个ide系统可连接4个IDE设备; IDE硬盘是传统的并口硬盘,现在已经被SATA硬盘即串口硬盘所淘汰。
  • sata
    SATA硬盘比IDE硬盘传输速度高;接口不同;支持热插拔
  • scsi
    SCSI接口,则完全通过独立的高速的SCSI卡来控制数据的读写操作,CPU就不必浪费时间进行等待, 显然可以提高系统的整体性能。 scsi可连接7~15个设备;SCSI的性能更稳定、耐用,可靠性也更好;价格高

s >>> scsi SATA
ide >>> d
a b
sda 第一块scsi设备
sda1 第一块scsi设备上第一个分区
sdb 第二块scsi设备
sdb1 第二块scsi设备上第一个分区
sr0-------是指光盘 /dev/cdrom
s sata
r rom
0 总线上第一个sr设备

分区信息

disk -l 查看分区情况
#df -h 磁盘使用情况
#free -m 内存信息
total used free shared buff/cache available
Mem: 3776 659 2410 10 706 2837
Swap: 1999 0 1999
其中的相关说明:  
Mem:表示物理内存统计
-/+ buffers/cached:表示物理内存的缓存统计
Swap:表示硬盘上交换分区的使用情况(这里我们不去关心)
系统的总物理内存:255268Kb(256M),但系统当前真正可用的内存并不是第一行free 标记的 16936Kb,它仅代表未被分配的内存。
我们使用total1、used1、free1、used2、free2 等名称来代表上面统计数据的各值,1、2 分别代表第一行和第二行的数据。
total: 表示物理内存总量。
used: 表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
free: 未被分配的内存。
shared: 共享内存,一般系统不会用到,这里也不讨论。
buffers: 系统分配但未被使用的buffers 数量和使用的cache 数量。

磁盘分区具体步骤
#fdisk  /dev/sda
m    帮助界面
n    新建分区
e    扩展分区
enter   磁盘开始位置(默认)
enter   结束位置(默认)
p   打印分区情况
n
enter
+10G
p
n
enter
enter
w
#partprobe    同步
#mkfs.xfs /dev/sda5   格式化
#mkfs.xfs /dev/sda6
mount /dev/sda5 /sda5 
#cd /sda5
#touch haha xixi hehe
#umount /sda5
#### 挂载
  • 开机自动挂载
    #blkid 查看设备UUID
    vim /etc/fstab
    我们通过
    #blkid获取/dev/sda5 的uuid 是否备份 开机检查优先级
    UUID=0e5fd12f-0ce7-43a6-825e-8f7b539b8f33 /sda5 xfs defaults 0 0 不检查
    设备 挂载点目录 文件系统参数默认设置
    #mount -a 将/etc/fstab 内容从新加载
    #reboot
    #mount
  • 两种挂载方式:
    临时使用:#mount /dev/sda5 /test
    test]#touch haha hehe xixi
    ~]#umount /test
    开机自动挂载:vim /etc/fstab
    设备名(UUID) 挂载点目录 文件系统格式xfs 文件系统参数 dump备份 检查优先级
    #blkid 查看设备对应的UUID值
    #reboot 重启虚拟机
    测试:重启后在test目录看到haha xixi hehe 三个文件说明实现开机自动挂载

磁盘配额

磁盘配额实验
1.关闭selinux

setenforce 0
systemctl stop firewalld

2.创建测试用户
3.创建逻辑分区,ext4并实现开机自动挂载
4.该分区支持quota操作

vim /etc/fstab 
UUID="23675f12-e603-4f9d-99f6-c31fa9f1f5e7" /mnt         ext4      defaults,usrquota,grpquota 0 0
mount -a

5.生成配置磁盘配置的数据库文件quotacheck -vug /mnt(v 详细信息 u用户配额 g组配额)
6.指定用户添加磁盘限额:edquota -u UNAME
Linux磁盘限额的特点
作用范围:针对指定 文件系统(分区)
限制对象:普通用户帐号、组帐号
限制类型:磁盘容量(默认单位为KB)、文件数量
限制方法:软限制、硬限制
quota对文件系统的限制主要分为:容量限制或文件数量限制
限制inode用量:就是用户可以新建的文件数量
限制block用量:就是用户可以使用的磁盘容量,比较常见的限制方式
Disk quotas for user hehe (uid 1002):

  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sda5                        0        30         50          0       4        6

7.开启所有磁盘限额:quotaon -a
创建指定大小的文件:

dd if=/dev/zero of=/mnt/aa bs=1K count=4000

8.关闭磁盘配额
#关闭单个磁盘的磁盘配额

quotaoff /mnt

#关闭所有已经开启的磁盘配额

quotaoff -a

#反之,开启所有磁盘配额

 quotaon -a

#如果不再使用磁盘配额,可以将配置文件也删除

  rm -rf /public/aquota.*

#最后删除/etc/fstab中的自动挂载即可

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值