2008-10-21 12:36:00 cnbird2008 阅读数 2360
dd 命令
dd if="input_file" of="outptu_file" bs="block_size" /
count="number"
参数:
if :就是 input file 啰~也能够是装置喔!
of :就是 output file 喔~也能够是装置;
bs :规划的一个 block 的大小,假如没有设定时,预设是 512 bytes
count:多少个 bs 的意思。
范例:
范例一:将 /etc/passwd 备份到 /tmp/passwd.back 当中
[root@linux ~]# dd if=/etc/passwd of=/tmp/passwd.back
3+1 records in
3+1 records out
[root@linux ~]# ll /etc/passwd /tmp/passwd.back
-rw-r--r-- 1 root root 1746 Aug 25 14:16 /etc/passwd
-rw-r--r-- 1 root root 1746 Aug 29 16:57 /tmp/passwd.back
# 仔细的看一下,我的 /etc/passwd 文档大小为 1746 bytes,因为我没有设定 bs ,
# 所以预设是 512 bytes 为一个单位,因此,上面那个 3+1 表示有 3 个完整的
# 512 bytes,连同未满 512 bytes 的另一个 block 的意思啦!
# 事实上,感觉似乎是 cp 这个指令啦~
范例二:备份 /dev/hda 的 MBR
[root@linux ~]# dd if=/dev/hda of=/tmp/mbr.back bs=512 count=1
1+0 records in
1+0 records out
# 这就得好好瞭解一下啰~我们知道整颗硬盘的 MBR 为 512 bytes,
# 就是放在硬盘的第一个 sector 啦,因此,我能够利用这个方式来将
# MBR 内的任何资料都纪录下来,真的很厉害吧! ^_^
范例三:将整个 /dev/hda1 partition 备份下来。
[root@linux ~]# dd if=/dev/hda1 of=/some/path/filenaem
# 这个指令很厉害啊!将整个 partition 的内容全部备份下来~
# 后面接的 of 必须要不是在 /dev/hda1 的目录内啊~否则,怎么读也读不完~
# 这个动作是很有效用的,假如改天您必须要完整的将整个 partition 的内容填回去,
# 则能够利用 dd if=/some/file of=/dev/hda1 来将资料写入到硬盘当中。
# 假如想要整个硬盘备份的话,就类似 Norton 的 ghost 软体一般,
# 由 disk 到 disk ,嘿嘿~利用 dd 就能够啦~厉害厉害!
2017-11-14 15:54:17 github_38922197 阅读数 2516

tar [-cxtzjvfpPN] 文件与目录
参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!
因为不可能同时压缩与解压缩。

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
   例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成
   『 tar -zcvPf tfile sfile』才对喔!

-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!


范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar


[root@linux ~]# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩!
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~
# 上述指令在执行的时候,会显示一个警告讯息:
# 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定。


范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?


[root@linux ~]# tar -ztvf /tmp/etc.tar.gz
# 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,
# 就得要加上 z 这个参数了!这很重要的!


范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下


[root@linux ~]# cd /usr/local/src
[root@linux src]# tar -zxvf /tmp/etc.tar.gz
# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,
# 我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz ,
# 则解开的目录会在 /usr/local/src/etc 呢!另外,如果您进入 /usr/local/src/etc
# 则会发现,该目录下的文件属性与 /etc/ 可能会有所不同喔!


范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已


[root@linux ~]# cd /tmp
[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd
# 我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,
# 就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 / 是被拿掉了!


范例五:将 /etc/ 内的所有文件备份下来,并且保存其权限!


[root@linux ~]# tar -zxvpf /tmp/etc.tar.gz /etc
# 这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!


范例六:在 /home 当中,比 2005/06/01 新的文件才备份


[root@linux ~]# tar -N '2005/06/01' -zcvf home.tar.gz /home


范例七:我要备份 /home, /etc ,但不要 /home/dmtsai


[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc


范例八:将 /etc/ 打包后直接解开在 /tmp 底下,而不产生文件!


[root@linux ~]# cd /tmp
[root@linux tmp]# tar -cvf - /etc | tar -xvf -
# 这个动作有点像是 cp -r /etc /tmp 啦~依旧是有其有用途的!
# 要注意的地方在於输出档变成 - 而输入档也变成 - ,又有一个 | 存在~
# 这分别代表 standard output, standard input 与管线命令啦!


2019-10-10 16:58:15 yyp5201314 阅读数 12

退出mysql
exit;

查找文件或者文件夹
find / -name qpress

编辑,启用环境变量
vim /etc/profile
source /etc/profile

删除www文件夹
rm -rf www

删除文件
rm test.txt

移动dd文件夹到www目录下
mv www/wwwroot/dd /home/www

打包s文件夹打包s.tar.gz
tar -zcvf s.tar.gz /www/wwwroot/s

下载压缩包
wget https://域名/s.tar.gz

解压压缩包
tar -zxvf s.tar.gz

给文件夹和子文件夹添加权限
chmod -R 777 /home/www/default/public

2015-06-13 14:48:45 linxinfa 阅读数 339

查看某进程是否在运行(比如Lm开头的进程)

ps -axj |grep Lm

 

查看cpu状态

top

 

打包

tar -zcv -f ./linxinfa.tar.gz ./dd ./ff ./bb

 

解包

tar -zxv -f ./linxinfa.tar.gz

 

递归删除

rm -f ./ff

 

查看端口状态(查看9000端口)

netstat -anltp |grep 9000

 

创建目录(dd)

mkdir dd

 

关闭防火墙

service iptables stop

 

查找文件

find . -name "*.rmvb"

2019-02-18 09:16:57 qq_35550345 阅读数 32

1 文件的打包与解包

    包文件:是许多文件放在一起打成一个包,放在一起前文件的大小总和与放一起后的大小总和是相同的。

1.1  tar命令

1)打包:  tar  cvf  包文件名 文件

//c打包,v显示打包时的详细动态,f表示使用归档文件,必须写

   例如:tar  cvf   f.tar   f1    f2   

2)查看包文件中的内容:  tar  tf   包文件名

   例如:tar  tf   f.tar    //t是显示tar打包文件里的内容

3)解包:tar  xvf   包文件名   //默认解包到当前目录,原来的包还在

   例如:tar  xvf   f.tar      //x解包参数

   如果是解包到指定目录:tar  xvf   包文件名  -C  目录

   例如:tar  xvf  f.tar  -C  test      //C 指定解包的目的目录

4)其他

tar  Af  b.tar  a.tar  //把a.tar中的文件追加到b.tar中去

tar  rf   a.tar  f1.txt  f2.txt  //把f1,f2追加到a.tar中去,文件后缀不一定是txt

tar  uf   a.tar  f1.txt  f2.txt  //判断f1,f2两个文件如果比a.tar中的新,则替换

tar  cf   a.tar   f1.txt  f2.txt  --remove-files //把f1,f2文件打入a.tar包中,完成打包后,将2个文件从本地删除

tar  f  a.tar  --delete  f1.txt           //删除a.tar包中的f1.txt文件

tar  f  a.tar  --get  f1.txt  f2.txt      //提取a.tar包中的f1,f2

注意:使用tar命令为文件打包,包文件后缀默认为.tar;对目录也可以打包

1.2  cpio命令

注意:该命令打包用的少,解包有时候会用cpio

1)打包,配合find使用:#find  ./  -type  f  | cpio   -ocvB > f.cpio

//o 将数据copy到文件或设备上;c是一种比较新的portable format方式存储;v在屏幕上显示备份过程中的文件名;

2)查看包内容:#cpio   -tv   <  f.cpio

3) 解包:     #cpio  -ivdm  < f.cpio

注意:使用cpio命令为文件打包,包文件后缀默认为.cpio

2 文件的压缩与解压

    压缩文件:把一堆文件压缩了,文件压缩后总体变小了

    压缩命令    gzip     bzip2      xz

    解压缩命令  gunzip   bunzip2   unxz

2.1 压缩包的创建与解压

1)创建压缩包

tar  cvfz   压缩包文件.tar.gz  文件    //tar.gz=tgz

tar  cvfj    压缩包文件.tar.bz2  文件   //tar.bz2=taz

tar  cvfJ   压缩包文件.tar.xz   文件   //tar.xz=txz

2)解压缩包

  tar   xvfz   压缩包文件.tar.gz

  tar   xvfj   压缩包文件.tar.bz2

  tar   xvfJ   压缩包文件.tar.xz          注意:解压至指定目录用 –C

3)查看压缩包内容

   tar  tf  压缩包文件    //无论后缀是哪种,都可以用这个查看

3 备份

    备份的目的:用来恢复数据

3.1 备份策略

完整备份:又叫完全备份,备份全部的数据。恢复便捷,只需要一份完整备份即可恢复全部数据;但是备份时间长,重复文件较多

增量备份:备份上一次备份以外的数据。备份时间快,重复文件少;恢复数据需要一份完整备份和一系列的增量备份,并且要按照先后顺序进行恢复,如果丢失任意一份增量备份,则无法完全恢复数据

差异备份:备份自上次完整备份以来以外的数据。备份时间比完整备份快,重复文件比完整备份少,恢复数据方便,只需要一份完整备份和最新的一份差异备份即可恢复所有数据。

数据量小每月做一次完整备份,每周做一次增量或差异备份;数据量大的就每个季度做一次完整备份,每月做一次增量或差异备份;安全性要求高的就要采取两地三中心的策略

3.2 备份命令dump

1)如果没有这个命令,安装即可:yum  install  dump –y 。

2)dump可以备份文件、目录与文件系统(分区挂载点里的文件)

3)如何用dump备份

    注意:

    a) 备份文件和目录时不能将备份信息写入至/etc/dumpdates,即不能使用-u参数,只允许0级(完整备份)备份;

    b) 对文件系统进行备份,默认的方式为增量备份,如果采用差异备份,每次都进行1级备份即可。

格式:dump   –备份级别-uf   备份到哪个目录上   要备份的文件/目录/文件系统

例如:

dump  -0f  f1.dump  f1  //对文件备份时不能加u这个参数,且备份级别只能是0

dump  -0f  test.dump  test          //test是个目录

dump  -1f  /dev/sdb  /dev/sda1     //将文件系统sda1备份到sdb中

dump  -W                         //查看最后一次备份的文件及详细信息

增量备份的实现:

如果是将备份文件存储到系统安装时的sda盘的分区中,那么不需要对sda分区进行挂载使用,因为在安装时已经弄好了。但是如果把备份文件存储到自己添加的硬盘中去,需要对自己添加的磁盘进行格式化、挂载使用。在挂载的LV上操作也可以。想存到哪个目录就进到哪个目录下。

例如如果想要把/dev/sdc中的内容存到/dev/sdb中去,首先要把两块磁盘格式化,挂载使用,/dev/sdb挂载点/mnt/sdb,/dev/sdc 挂载点/mnt/sdc。

cd /mnt/sdb

touch /mnt/sdc/f0        

dump -0uf  0.dump  /mnt/sdc      

ls

restore –tf  0.dump      

touch /mnt/sdc/f1

dump  -1uf  1.dump  /mnt/sdc     

ls      

restore  -tf  1.dump

touch  /mnt/sdc/f2                 

dump  -2uf  2.dump  /mnt/sdc

ls         

restore  -tf  2.dump             

touch /mnt/sdc/f3

dump  -3uf  3.dump  /mnt/sdc      

ls      

restore  -tf  3.dump

差异备份的实现:

cd /mnt/sdb

touch /mnt/sdc/f0         

dump -0uf  0.dump  /mnt/sdc        

ls

restore –tf  0.dump        

touch /mnt/sdc/f1           

dump  -1uf  1.dump  /mnt/sdc     

ls      

restore  -tf  1.dump

touch  /mnt/sdc/f2              

dump  -1uf  2.dump  /mnt/sdc

ls         

restore  -tf   2.dump

3.3 恢复命令

1)查看备份文件中的数据

    restore  -tf  备份文件   //t指定备份介质中的文件,f指定所需要还原的备份介质

2)恢复备份文件至当前目录

restore    -xf    备份文件 //x提取备份介质中的指定文件

restore    -rf    备份文件 //r指定还原操作

//有时候会让输入从哪一个卷开始恢复,输入1 即可

3.4  dd命令

指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换

两个特殊的设备文件:

1)/dev/null位桶,垃圾桶,一般将文件连接至位桶相当于删除该文件。常用于将文件软连接至此,相当于删除文件;还用于将系统不需要的日志文件或输出重定向至/dev/null相当于忽略系统日志的或输出。

例如: systemctl  mask  firewalld , systemctl  unmask  firewalld  查看输出结果

       或echo   hello word   > /dev/null

2)/dev/zero 提供无限个0字符,一个空白文件里面都是0字符,当写入内容后,有的字符就会变成1,从而常用于生成文件。删除文件就是把里面的内容都写成0字符。

    dd  if=源文件/设备名称  of=目标文件/设备名称  bs=每次转换的大小  count=转换的块的数量

例如:dd  if=/dev/cdrom  of=./centos.iso  

                                      //将光盘转换为iso,相当于光盘的刻录,备份

dd  if=/dev/sda1  of=./boot.bak       //将sda3转换成一个文件

dd  if=/dev/zero   of=./disk1.img   bs=1M  count=100  //创建一个100M的虚拟硬盘,每次读写缓存为2M,总计累计100次。即bs*count=100M

用dd生成一个swap文件并使用:

dd  if=/dev/zero   of=./1.swap   bs=100M   count=1  // 生成文件

格式化:mkswap  ./1.swap

chmod   权限值   文件名         //更改文件权限

swapon   ./1.swap                //启用      

swapon               //查看当前系统内所有swap空间

swapoff   ./1.swap    //关闭

3.5  genisoimage  

将某个目录打包成ISO映像文件

genisoimage  -J   -L   -r   -o   etc.iso  /etc   

//将/etc目录打包成etc.iso文件,J使用Joliet格式的目录与文件名称;L允许文件名的第一个字符为句号;r使用rock ridge extensions,并开放全部文件的读取权限;o 指定映像文件的名称

genisoimage  -J  -v  –o  backup.iso    /mnt/backup     

//将/mnt/backup目录做成一个backup.iso备份 ,v显示详细动作

3.6 其他命令 

wodim  刻录光盘

mt  控制磁带


转载请注明出处,谢谢!

Linux压缩打包命令

阅读数 255

Linux 之 文件

阅读数 327

linux服务器配置swap

阅读数 128

没有更多推荐了,返回首页