美文网首页
hash值, 监控工具, umask, 分区, inode和bl

hash值, 监控工具, umask, 分区, inode和bl

作者: epiiplus1equal0 | 来源:发表于2019-02-28 00:13 被阅读0次

    1. hash值

    对文件进行hash运算, 生成一段哈希值, 对比自己的哈希值和发送文件给其他人后的哈希值, 检验文件是否被修改

    md5sum file
    sha1sum file
    sha256sum file
    sha512sum file
    # /etc/login.defs 可以查看一些关于生成用户的基本配置, 
    # 在给用户加密是用的是sha512算法
    

    2. chage

    先来看看/etc/shadow的内容:

    用户名:加密后的密码:从1970.1.1开始到上一次修改密码之间的时间:密码的最小存活期:最大存活期:\
    警告天数:密码过期时间:账号过期时间:保留位
    # 注:
    # passwd: !!表示没有设置密码, !表示lock, 用户无法登录
    # 若第三个位置的值为0, 则强制用户在下一次登录时修改密码
    # 在密码的最小存活期限内不可修改密码, 为0则表示随时可以修改
    chage options username
      -d days
      -L lock | -U unlock
      -E 过期
      -I 过期
    

    3. 监控工具

    w # 查看系统中当前的用户连接数
    last # 用户登录系统的历史
    lastb # 登录未遂的历史
    lastlog # 登录的日志
    

    4. 默认权限umask

    目录 777
    文件 666 # 默认权限中去除了x权限, 使系统更安全
    不同用户的umask值:
    root 0022
    普通用户 0002
    初始配置的umask值在/etc/bashrc中, 用户可在~/.bashrc中定义自己的umask值
    # 最终用户创建的目录默认权限 = 777 - 用户的umask值
    #              文件        = 666 - 用户的umask值
    

    5. 分区与文件系统

    作用: 逻辑分割硬盘

    文件系统类型     适合的环境    优缺点
    xfs             大文件        占CPU多, 但性能佳
    ext             小文件        占CPU少, 性能没有xfs好
    # 文件系统分好之后inode和block的数量就同时被确定好了
    

    baobab

    文件系统使用占比的图形化展示

    6. inode和block

    inode与文件一一对应, inode数量用完便不能存文件

    file

    元数据 数据
    metadata data
    用来描述数据 block size, 文件系统的最小组成单位: 1K, 2K, 4K
    类型, 权限, UID, GID<br />链接数<br />大小, 时间戳<br />指针(指明数据在磁盘中的位置)<br />等等...
    # 用户真正在读取一个文件数据的过程是这样的:
    /root -> word (文件名) -> inode (文件名所对应的) 
    -> inode 表 (找到对应的指针) -> block块中的data
    # ext派系的命令:
    ls -h # 实际大小(包括其内所含文件)
    du -h # 所占的block块大小
    df -i # 查看每一个分区的文件系统的inode信息
    tune2fs -l /dev/sda1 # 查看分区/dev/sda1的super block信息
    dumpe2fs /dev/sda1 # 查看分区/dev/sda1的块组信息(包括普通块和超级块)
    # 修复ext系列文件系统(假设/dev/sdb1挂载在/mnt下):
    dd if=/dev/zero of=/dev/sdb1 bs=1K count=4 #破坏了分区/dev/sdb1的第一个superblock
    umount /mnt # 修复时需要先卸载
    fsck /dev/sdb1 # 进行文件系统检查
    e2fsck [-b 98304] /dev/sdb1 # 可用-b选项指定以98304位置的超级块进行修复
    # 注: lost+found 此文件中若存在内容, 一般是inode与block无法对应等文件系统损坏的问题
    # 修复xfs系列文件系统:
    xfs_repair
    

    (1) cp和inode

      1. 分配了一个新的inode, 在inode table中新建了一条entry
      2. 目录下新建文件名, 建立inode和block之间的映射
      3. 将data复制到新文件所对应的block中

    (2) mv和inode

    • 同一个文件系统内:
      1. 新目录下创建新文件名
      2. 删除旧的文件名
      3. inode table和data block均不变
    • 不同的文件系统内:
      1. cp + rm
      1. 会在新的文件系统内分配新的inode

    (3) rm和inode

      1. 减少链接数, 直到为0
      2. block块将被释放, 转为可用(但此时原数据依旧存在)
      3. 移除文件名

    7. 软硬链接

    (1) 硬链接

    # 特点:
    # 1. 在同一个文件系统内
    # 2. 有同一个inode
    # 3. link count + 1
    # 4. 不可跨分区和磁盘
    # 5. 两者指向同一个文件数据, 其中一个被修改时另一个也会被修改
    link source dest
    link /root/tmp_test/ /tmp/ # 将/root/tmp_test硬链接到/tmp目录
    

    (2) 软链接

    link -s source dest
    link -s /root/boot_test/ /boot/ 
    # 将/root/boot_test软链接到/boot目录, 注意使用文件的绝对路径!
    # lrwxrwxrwx中的"l"特指软链接
    

    相关文章

      网友评论

          本文标题:hash值, 监控工具, umask, 分区, inode和bl

          本文链接:https://www.haomeiwen.com/subject/taccuqtx.html