zoukankan      html  css  js  c++  java
  • linux备忘录-档案与文件系统的压缩与打包

    知识点

    文件扩展名与压缩解压缩工具

    *.Z -> compress程序压缩的档案
    *.gz -> gzip程序压缩的档案
    *.bz2 -> bzip2程序压缩的档案
    *.tar -> tar程序打包的数据,并没有压缩过
    *.tar.gz -> tar打包的数据,并且经过gzip压缩
    *.tar.bz2 -> tar打包的数据,并且经过bzip2压缩

    目录相关

    /var/spool/mail //系统中所有账号的邮件信箱
    /var/spool/cron //所有账号的工作排成配置文件
    

    散乱知识

    find /etc -newer /etc/passwd 找出比/etc

    常用的是 gzipbzip2 , compress已经过时

    tarfile 仅进行打包的文件。tarball 既打包又压缩的文件。

    命令

    1. gzip (常用的压缩程序,对compress、zip、gzip压缩的档案有效)

    gzip [-cdtv#] 档案名
    gzip -c 将压缩的数据输出到屏幕,可进行数据重导向
    gzip -v 显示压缩信息
    gzip -d 解压缩 (压缩文件会消失)
    默认情况被压缩的文件会消失
    gzip -9 -c man.config > man.config.gz (保留原本的文件)

    1. zcat (查看compress和gzip压缩的文本档案)
    2. bzip2 (压缩比比gzip好,对.bz .bz2 .tbz .tbz2有效)

    bzip2 -c 将压缩的数据输出到屏幕上
    bzip2 -z 压缩
    bzip2 -d 解压缩
    bzip2 -k 保留原文件
    bzip2 -v 显示压缩信息

    1. bzcat (查看bzip2压缩的文本档案)
    2. tar (打包指令)

    tar [-j|-z] [cv] [-f 建立的档名] filename 打包与压缩
    tar [-j|-z] [tv] [-f 建立的档名] 查看档名
    tar [-j|-z] [xv] [-f 建立的档名] [-C 目录] 解压缩
    tar -cv 建立打包档案
    tar -tv 查看档案名
    tar -xv 解打包或解压缩功能
    tar -j 通过bzip2支持进行压缩和解压缩
    tar -z 通过gzip的支持进行压缩和解压缩
    tar -v 显示过程信息
    tar -f 指定压缩后档名
    tar -C dir 在指定目录解压缩
    tar -p 保留原本权限和属性
    tar -P 保留绝对路径
    tar --exclude filename 排除文件名
    tar -jxv -f 打包档.tar.bz2 待解压档名 只解压一个档案
    建议用法
    压缩 tar -jcv -f filename.tar.bz2 要压缩的档案或目录名称
    查询 tar -jtv -f filename.tar.bz2
    解压缩 tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

    1. dump (备份命令)

    待备份的资料是文件系统时,可使用完整的dump功能,能使用level0-9,能使用挂载点或装置文件名
    待备份的资料只是目录时,备份的数据必须在该目录底下,仅能使用level0,无法建立/etc/dumpdates时间记录文件。
    dump -S 列出备份所需的空间大小
    dump -u 将dump的时间记录到/etc/dumpdates档案中。
    dump -j 加入bzip2的支持
    dump -level 指定level
    dump -f 后接产生的档案
    dump -W 列出在/etc/fstab中具有dump设定的partition是否被备份过

    1. restore (dump的复原命令)

    restore -t -f dumpfile 查看dump档案
    restore -r -f dumpfile 还原整个文件系统
    restore -C -f dumpfile 查看文件系统与dumpfile的差异
    restore -i 互动模式,可以只复原一部分数据

    1. mkisofs (将数据弄成一个映像档)

    mkisofs -o 输出映像档名 指定输出映像档名
    mkisofs -v 显示建造的过程
    mkisofs -r 支持较新档名信息
    mkisofs -m filename 排除文件
    光盘的格式一般称为 iso9660
    mkisofs -r -o /tmp/system.img -m /home/lost+found -graft-point /root=/root /home=/home /etc=/etc 将数据归类存放

    1. cdrecord (光盘刻录工具)

    cdrecord -scanbus dev=ATA 查询刻录机位置
    cdrecord dev=ATA:x,y,z 指定刻录机所在的位置。
    下面是刻录CD的过程
    1 -> cdrecord -v dev=ATA:1,1,0 blank=fast 先抹除光盘原始内容(非可重复读写可略过此步)
    2 -> cdrecord -v dev=ATA:1,1,0 fs=8m -dummy -data /tmp/system.img 刻录CD
    3 -> mount -t iso9660 /dev/cdrom /mnt 测试挂载一下
    4 -> umount /dev/cdrom 或 umount /mnt
    下面是刻录DVD的过程
    1 -> cdrecord -v dev=ATA:1,1,0 blank=fast 先抹除
    2 -> cdrecord -v dev=ATA:1,1,0 fs=8m -data -sao driveropts=burnfree /tmp/system.img 刻录DVD
    3 -> mount /dev/cdrom /mnt 测试
    4 -> umount /dev/cdrom 或 umount /mnt

    1. dd (直接硬盘级别的拷贝)

    dd if=inputfile of=outputfile bs=blocksize count=blockcount
    当bs未指定时,默认为一个sector的大小,512bytes
    dd /etc/passwd /tmp/passwd.back 备份passwd文件
    dd /etc/sda /tmp/mbr.back bs=512 count=1 备份磁盘第一个扇区,即MBR和partition table
    dd /etc/sda2 /tmp/partition.back 直接备份一个分割槽或文件系统。
    dd /dev/hdc1 /dev/hdc9 不需要进行格式化

    1. cpio (可用于备份任何东西)

    cpio -ovcB > [file|device] 备份
    cpio -ivcde < [file|device] 还原
    cpio -ivct < [file|device] 查看
    cpio -o 将数据copy输出到档案或装置上
    cpio -d 自动建立目录,还原时建立新目录
    find /boot -print
    find /boot | cpio -ovcB > /tmp/boot.cpio 备份
    cpio -idvc < /tmp/boot.cpio 还原

    参考

    鸟哥的Linux私房菜 第三版

  • 相关阅读:
    Docker
    mysql+centos7+主从复制
    scrapy-redis使用以及剖析
    Python数据库连接池DBUtils
    MySQL 之【视图】【触发器】【存储过程】【函数】【事物】【数据库锁】【数据库备份】
    揭开Socket编程的面纱
    Linux环境下安装python3.6
    Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy
    WebSocket源码剖析
    1.1 MySQL用户管理及SQL语句详解
  • 原文地址:https://www.cnblogs.com/smallpi/p/7300418.html
Copyright © 2011-2022 走看看