⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 backup-with-msdos-2.html

📁 Linux初学者最好的老师就是howto了。相当于函数man。
💻 HTML
📖 第 1 页 / 共 2 页
字号:
最後,使用磁片 SAR#1 与 SAR#2 将 MS-DOS 机器开机,并且在那个机器上执行 /bin/msdosset 命令稿。它可能需要耗费一点时间去执行那个命令稿,因为它必须由软碟机上取得 NSF 档案,所以请忍耐片刻。现在,在 Linux 机器上由磁带机重建 /mnt2。</PRE></CODE></BLOCKQUOTE><P>如果你使用备份命令稿[backup scripts ],你将必须复制 'afio' 到 <CODE>/tape144/local/bin</CODE> 子目录。此备份命令稿档案不需要在重建的磁碟上有暂存空间,档案[archive ]可以仅使用 'afio' and 'gzip' 就可以重建。<P>当它们送来时,我还不会使用备份命令稿。这个磁带备份似乎完整无缺 ,但无法复原(救回)。我发现升级区块容量[block size ]与转变指令来修正它。这里所示的是 ``<CODE>netbackup</CODE>'' 命令稿的片段。利用这个修补程序来更改 Linux 机器硬盘上的和 SAR 磁碟上的 netbackup 程序。<BLOCKQUOTE><CODE><PRE>*** netbackup.orig      Mon Jan  9 17:22:32 1995--- netbackup   Mon Jan  9 17:23:25 1995****************** 35,41 ****                  "'mknod", devname, "p'");      exec ("su -", USERNAME, "-c",                  "'rsh ", REMOTE_HOST, !                       "\"dd", "of=" REMOTE_DEVICE, "obs=20k", "conv=sync\"",                        "&lt;", devname,                "'&amp;"         );--- 35,41 ----                  "'mknod", devname, "p'");      exec ("su -", USERNAME, "-c",                  "'rsh ", REMOTE_HOST, !                       "\"dd", "of=" REMOTE_DEVICE, "\"",                        "&lt;", devname,                "'&amp;"         );****************** 50,56 ****                  "'mknod", devname, "p'");      exec ("su", USERNAME, "-c",                   "'rsh ", REMOTE_HOST, !                       "\"dd", "if=" REMOTE_DEVICE, "ibs=20k", "conv=sync\"",                        ">", devname,                "'&amp;"         );--- 50,56 ----                  "'mknod", devname, "p'");      exec ("su", USERNAME, "-c",                   "'rsh ", REMOTE_HOST, !                       "\"dd", "if=" REMOTE_DEVICE, "\"",                        ">", devname,                "'&amp;"         );</PRE></CODE></BLOCKQUOTE><P>你现在完成你的 SAR 磁片 #2。请加上防写保护。<P>接下来,插入一个乾净的、格式化完成的磁片[利用 <CODE>fdformat</CODE> 与 <CODE>mkfs</CODE> 来建立]。复制 <CODE>ftape.o</CODE> 档案到磁片上,并且标示为 SAR#3。如果你对此磁片采用防写保护,因著某些理由,事情将会变糟。所以请让它可以写入。<P>在 Linux 机器上,为 NFS 档案服务建立一个新的目录。我建了一个目录:<BLOCKQUOTE><CODE><PRE>/nfs</PRE></CODE></BLOCKQUOTE>将 <CODE>ftape.o</CODE> [unstripped,约 500+ kB],至此子目录。在你的 Linux 的输出档案 <CODE>/etc/exports</CODE> 上建立一个登录[entry ]:<BLOCKQUOTE><CODE><PRE>/nfs    msdos(ro)</PRE></CODE></BLOCKQUOTE>注意!你的 NFS 目录与其子目录的所有档案均为非安全的。某些人也能够利用他自己的开机磁片来开启 MS-DOS 机器进入 Linux 并  mount 这个目录。如此一来,你不要放置任何敏感的东西在你的 NFS 子目录。<P>重新启动你的 NFS 驻留程序[daemons]<CODE>rpc.mountd</CODE> 与 <CODE>rpc.nfsd</CODE>。它们似乎无法用 <CODE>SIGHUP</CODE> 重新启动,所以删除它们然後再重新引用[reinvoke ]它们。如果你并不是使用这些驻留程序在你的 <CODE>/etc/rc.d/rc.inet2</CODE>,你现在或许要去用它。<P>好了,现在我们完成了备份与重建所有的设定。完全备份 Linux 机器,利用 SAR#1 来开启你的 MS-DOS 机器。当出现第二片的提示时,放入 SAR#2 读取。使用 root 登录,执行命令稿:<CODE>/bin/tapesetup</CODE>。登出 MS-DOS 机器。如果你使用备份命令稿,则程序 netbackup 现在将会运作。你也可以使用 ``<CODE>-f msdos:/dev/ftape</CODE>'' 启动 GNU <CODE>tar</CODE>、<CODE>cpio</CODE> 或 <CODE>mt</CODE>,并利用此法制作你的备份。如果你拥有备份程序,但它仅可以写成局部档案[local file],如下操作。假定该备份程序被称为``<CODE>局部备份[localbackup]</CODE>'' ,写入的档案藉由该程序命令列的引数[argument]来表示:<BLOCKQUOTE><CODE><PRE>mknod /tmp/tapepipe prsh msdos dd of=/dev/ftape &lt; /tmp/tapepipe &amp;localbackup /tmp/tapepipe</PRE></CODE></BLOCKQUOTE>当它完成,删除 <CODE>/tmp/tapepipe</CODE>。<P>复原到一个活的[live ]Linux 机器:<CODE>netbackup</CODE> 命令稿、<CODE>tar</CODE>、<CODE>cpio</CODE> 与其他相似的在除了部分操作者使用的特别动作外将可完成全部的工作。如果你拥有一个备份程序,但它仅能写到局部档案[local file],执行:<BLOCKQUOTE><CODE><PRE>mknod /tmp/tapepipe prsh -n msdos dd if=/dev/ftape >> /tmp/tapepipe &amp;localrecovery /tmp/tapepipe</PRE></CODE></BLOCKQUOTE>删除 <CODE>/tmp/tapepipe</CODE> 在你完成之後。<P>留心我使用 '<CODE>rsh</CODE>' 成为在 MS-DOS 机器上的基本使用者。一个正确的 <CODE>.rhosts</CODE> 项目可以工作正常。这个在 '<CODE>tape144</CODE>' 磁碟上的配置准许 <CODE>rsh</CODE> 成为一个 root,但不准许 <CODE>telnet</CODE> 或 <CODE>rlogin</CODE> 成为 root,控制台[console]的登入是被限制的。如此有益于安全性。<P>如果你担心基础的 <CODE>.rhost</CODE> 档案,你可以建立一个新的使用者 ``<CODE>tapeuser</CODE>'' 在 SAR#2 上,以准许来操作磁带机但并非磁碟[建立一个新的群组[group ]并将 tapeuser 置于该群组,然後 <CODE>chown</CODE> 与 <CODE>chmod</CODE> 档案 <CODE>/dev/rft*</CODE> 与<CODE>/dev/nrft*</CODE>]。你的备份程序当时应该能了解 <CODE>rsh</CODE> 这个名字相较于 root 更适合。当然目前得有一个 <CODE>.rhosts</CODE> 档案在 <CODE>~tapeuser</CODE> 在 SAR#2。在我自己的使用,相较于一个基础 <CODE>.rhosts</CODE> 我会选择此种方法。<P>终于,这份文件圆满的复原一个垃圾硬盘。假定现在 Linux 分割趋势完全不能复原的。如果有需要,像 Linux 安装 HOWTO上说的重新格式化该分割区。自 SAR 磁片 #1 启动 Linux 机器,当出现提示,插入磁片 #2。现在,依循在档案 <CODE>/root/notes</CODE> 中的叙述[这里是 <CODE>/tape144/root/notes</CODE> ,在当它被安装上你的 Linux 机器时]。一但两台机器都被启动完成,执行你需要的复原惯例[ recovery routine ]。如果你是使用备份命令稿,你可以如下操作:<OL><LI>改变你将恢复的硬盘安装点的指南[directory ]。</LI><LI>如果任一 mounted volumnes 已在此备份上, 而你想把它们复原,你只要在硬盘上建一些 mount point, 然後把备份 mount 在这些 mount point 上。</LI><LI>输入命令:<BLOCKQUOTE><CODE><PRE>rsh -n msdos dd if=/dev/ftape | afio -i -v -Z -c 1024 -        </PRE></CODE></BLOCKQUOTE>or<BLOCKQUOTE><CODE><PRE>rsh -n -l tapeuser msdos dd if=/dev/ftape | afio -i -v -Z -c 1024 -        </PRE></CODE></BLOCKQUOTE><BLOCKQUOTE><CODE><PRE>mknod /tmp/backpipe prsh -n msdos dd if=/dev/ftape >> /tmp/backpipe &amp;afio -i -v -Z -c 1024 /tmp/backpipe        </PRE></CODE></BLOCKQUOTE></LI></OL>这里是读取在远方机器上的磁带机,将结果写到 stdout,那是 <CODE>afio</CODE> 所点取的地方。'<CODE>-i</CODE>' 参数告诉它用相对于'目前目录'来 recover    [此处是硬盘分割区的根目录]。'<CODE>-v</CODE>' 是很冗长的,列出它们复原的档案清单。'<CODE>-Z</CODE>' 告诉 afio ,此为一个各别的压缩档案。'<CODE>-c 1024</CODE>' 告诉它使用 5 MB 的流动缓冲区来避免太多的磁带转回动作。<HR><A HREF="Backup-With-MSDOS-3.html" tppabs="http://www.linux.org.tw/CLDP/gb/mini/Backup-With-MSDOS-3.html"><IMG SRC="next.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/next.gif" ALT="Next"></A><A HREF="Backup-With-MSDOS-1.html" tppabs="http://www.linux.org.tw/CLDP/gb/mini/Backup-With-MSDOS-1.html"><IMG SRC="prev.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/prev.gif" ALT="Previous"></A><A HREF="Backup-With-MSDOS.html#toc2" tppabs="http://www.linux.org.tw/CLDP/gb/mini/Backup-With-MSDOS.html#toc2"><IMG SRC="toc.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/toc.gif" ALT="Contents"></A>  </BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -