文件操作 - restore-worst-case.page
返回文件管理
返回主菜单
删除本文件
文件: /usr/share/help/bg/deja-dup/restore-worst-case.page
编辑文件内容
<?xml version="1.0" encoding="utf-8"?> <page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" its:version="1.0" type="topic" style="task" id="restore-worst-case" xml:lang="bg"> <info> <desc>Какво да направите, ако не можете да възстановите файловете си</desc> <link type="guide" xref="index#restore"/> </info> <title>Когато всичко завършва зле</title> <p><app>Déjà Dup</app> може да се провали. Може да спре или да Ви даде някакво съобщение за грешка, когато се опитвате да възстановявате. Когато действително се нуждаете да си върнете данните, последното нещо, с което бихте искали да се занимавате е да си имате работа с бъг. Помислете дали да не попълните <link href="https://launchpad.net/deja-dup/+filebug">рапорт за бъг</link>, но междувременно, ето някои подходи за заобикаляне на проблема при лошо поведение на <app>Déjà Dup</app> за да си върнете данните.</p> <note><p>Тук вече е за техничари. Ако не разбирате нищо от това, не се притеснявайте да <link xref="support">помолите за помощ</link>.</p></note> <steps> <item><p>Отворете прозорец с <app>Terminal</app> като натиснете <keyseq><key>Ctrl</key><key>Alt</key><key>T</key></keyseq>.</p></item> <item><p>Създайте директорията, в която ще поставите възстановените от Вас файлове. В това ръководство ще ползваме <file its:translate="no">/tmp/restore</file>:</p> <screen its:translate="no">mkdir -p /tmp/restore</screen></item> </steps> <section id="duplicity"> <title>Възстановяване чрез Duplicity</title> <p>Ако предположим, че в момента <app>Déjà Dup</app> Ви създава проблем, ще трябва от командния ред да използвате инструмента <app>duplicity</app>, който <app>Déjà Dup</app> използва за работата си зад прозорците, които виждате, при създаването и възстановяването на резервните копия за Вашите файлове.</p> <note style="advanced"><p>Ако се нуждаете от повече информация за <app>duplicity</app> от предоставената тук, стартирайте <cmd>man duplicity</cmd>.</p></note> <p>Първото нещо, което ще опитаме, е обикновено възстановяване на Всичките Ви данни. Предполагайки, че файловете Ви са на външен диск, монтиран като <file its:translate="no">/media/backup</file> и сте избрали криптиране на резервното копие, пробвайте така:</p> <screen its:translate="no">duplicity --gio file:///media/backup /tmp/restore</screen> <p>Ако не сте криптирали резервното копие, добавете към командата <cmd its:translate="no">--no-encryption</cmd> .</p> <section id="locations"> <title>Други местоположения на резервното копие</title> <p>Ако сте архивирали върху отдалечен сървър или облачна услуга, командата за стартиране на <app>duplicity</app> ще е различна от тази, за външен диск в примера по-горе. Вижте по-долу за това, как да се свържете към избраното от Вас местоположение на резервни копия.</p> <note><p>Не забравяйте да добавяте <cmd its:translate="no">--no-encryption</cmd> към всяка от примерните команди, ако архивът Ви не е криптиран.</p></note> <p>Ако се окаже, че <app>duplicity</app> не успява да се свърже към сървъра Ви, пробвайте да свалите всички файлове на <app>duplicity</app> сами в локална папка и да продължите с по-опростения пример по-горе.</p> <terms> <item> <title>Amazon S3</title> <p>Намерете Вашите ключ за достъп ID и секретния ключ за достъп за Amazon S3 и ги поставете на съответните им места <var>ID</var> и <var>SECRET</var> в примера по-долу.</p> <p>Може да трябва да зададете папката, в която да се поставят архивните файлове. В примера по-долу, заменете навсякъде <var>FOLDER</var> с този път.</p> <screen its:translate="no"> export AWS_ACCESS_KEY_ID=<var its:translate="yes">ID</var> export AWS_SECRET_ACCESS_KEY=<var its:translate="yes">Секрет</var> duplicity s3+http://deja-dup-auto-<var its:translate="yes">МалкиБукви_ID</var>/<var its:translate="yes">ПАПКА</var> /tmp/restore</screen> </item> <item> <title>Файлове в облака на Rackspace</title> <p>Намерете Вашето потребителско име и API ключ за Rackspace и заменете съответно <var>USERNAME</var> и <var>KEY</var> там, където се появяват в примера по-долу.</p> <p>Може да трябва да зададете контейнер, в който да се поставят архивните файлове. В примера по-долу, заменете където се появява <var>CONTAINER</var>, с това име.</p> <screen its:translate="no"> export CLOUDFILES_USERNAME=<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var> export CLOUDFILES_APIKEY=<var its:translate="yes">КЛЮЧ</var> duplicity cf+http://<var its:translate="yes">КОНТЕЙНЕР</var> /tmp/restore</screen> </item> <item> <title>FTP</title> <p>Намерете адреса на Вашия сървър, порт, потребителско име и парола, и ги поставете на съответните места за <var>SERVER</var>, <var>PORT</var>, <var>USERNAME</var> и <var>PASSWORD</var> в примера по-долу.</p> <p>Може да трябва да зададете папката, в която да се поставят архивните файлове. В примера по-долу, заменете навсякъде <var>FOLDER</var> с този път.</p> <p>Ако изберете да не влизате с потребителско име, ползвайте <var its:translate="no">anonymous</var> като Ваше <var>USERNAME</var> по-долу.</p> <screen its:translate="no"> gvfs-mount ftp://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>:<var its:translate="yes">ПОРТ</var>/<var its:translate="yes">ПАПКА</var> duplicity --gio ftp://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>:<var its:translate="yes">ПОРТ</var>/<var its:translate="yes">ПАПКА</var> /tmp/restore</screen> </item> <item> <title>SSH</title> <p>Намерете адреса на Вашия сървър, порт, потребителско име и парола, и ги поставете на съответните места за <var>SERVER</var>, <var>PORT</var>, <var>USERNAME</var> и <var>PASSWORD</var> в примера по-долу.</p> <p>Може да трябва да зададете папката, в която да се поставят архивните файлове. В примера по-долу, заменете навсякъде <var>FOLDER</var> с този път.</p> <screen its:translate="no"> gvfs-mount ssh://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>:<var its:translate="yes">ПОРТ</var>/<var its:translate="yes">ПАПКА</var> duplicity --gio ssh://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>:<var its:translate="yes">ПОРТ</var>/<var its:translate="yes">ПАПКА</var> /tmp/restore</screen> </item> <item> <title>WebDAV</title> <p>Намерете адреса на Вашия сървър, порт, потребителско име и парола, и ги поставете на съответните места за <var>SERVER</var>, <var>PORT</var>, <var>USERNAME</var> и <var>PASSWORD</var> в примера по-долу.</p> <p>Може да трябва да зададете папката, в която да се поставят архивните файлове. В примера по-долу, заменете навсякъде <var>FOLDER</var> с този път.</p> <p>Ако изберете да ползвате сигурна връзка (HTTPS), когато архивирате, ползвайте <var its:translate="no">davs://</var> вместо <var its:translate="no">dav://</var> в примера по-долу.</p> <screen its:translate="no"> gvfs-mount dav://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>:<var its:translate="yes">ПОРТ</var>/<var its:translate="yes">ПАПКА</var> duplicity --gio dav://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>:<var its:translate="yes">ПОРТ</var>/<var its:translate="yes">ПАПКА</var> /tmp/restore</screen> </item> <item> <title>Споделено Windows устройство</title> <p>Намерете Вашите адрес на сървър, потребителско име и парола и заменете съответно <var>SERVER</var>, <var>USERNAME</var> и <var>PASSWORD</var>, където се появяват в примера по-долу.</p> <p>Може да трябва да зададете папката, в която да се поставят архивните файлове. В примера по-долу, заменете навсякъде <var>FOLDER</var> с този път.</p> <p>Ако сте задали домейн за Вашия Windows сървър, добавете го пред <var>USERNAME</var> с двоеточие между тях. Например, <var>domain;username</var>.</p> <screen its:translate="no"> gvfs-mount smb://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>/<var its:translate="yes">ПАПКА</var> duplicity --gio smb://<var its:translate="yes">ПОТРЕБИТЕЛСКО ИМЕ</var>@<var its:translate="yes">СЪРВЪР</var>/<var its:translate="yes">ПАПКА</var> /tmp/restore</screen> </item> </terms> </section> </section> <section id="by-hand"> <title>Ръчно възстановяване</title> <p>Ако и <app>duplicity</app> не Ви свърши работа, все още има някаква надежда. Форматът на архивните файлове е сложен и труден за обработка. Но ако сте на прага на отчаянието, струва си да опитате.</p> <p>Ако сте използвали отдалечен сървър или облачна услуга за съхранение на резервните Ви копия, първо свалете всичките <app>duplicity</app> файлове и ги поставете в папка на Вашия компютър. След това в терминал, влезте в тази папка.</p> <p><app>Duplicity</app> записва данните Ви в малки парчета, наречени томове. Някои томове принадлежат към периодичните ‘пълни’ или свежи архиви, а други към ‘inc’ или последващи архиви. Започвайки с пълен комплект от томове архиви с том 1, Вие ще трябва да възстановите файловете том по том.</p> <p>Ако сте криптирали Вашето резервно копие, първо трябва да декриптирате тома с <cmd its:translate="no">gpg</cmd>. Да речем, че имате <file its:translate="no">duplicity-full.20110127T131352Z.vol1.difftar.gpg</file>:</p> <screen its:translate="no">gpg --output duplicity-full.20110127T131352Z.vol1.difftar --decrypt duplicity-full.20110127T131352Z.vol1.difftar.gpg</screen> <p>Или за да направите всичко наведнъж (убедете се, че имате предостатъчно пространство!):</p> <screen its:translate="no">gpg --multifile --decrypt duplicity-full.20110127T131352Z.*.difftar.gpg</screen> <p>Сега Вие имате или <file its:translate="no">.difftar</file> или <file its:translate="no">.difftar.gz</file> том (в зависимост от това дали трябва да го декриптирате или не). Използвайте <cmd its:translate="no">tar</cmd> върху който имате за да извлечете отделните patch файлове:</p> <screen its:translate="no">tar xf duplicity-full.20110127T131352Z.vol1.difftar</screen> <p>Или отново, за да направите всичко наведнъж:</p> <screen its:translate="no">for t in duplicity-full.20110127T131352Z.*.difftar; do tar xf $t; done</screen> <p>Сега patch файловете ще са в <file its:translate="no">multivolume_snapshot</file> и <file its:translate="no">snapshot</file> папки. Всеки файл, който обхваща няколко тома ще бъде в <file its:translate="no">multivolume_snapshot</file>. Да предположим, че сте архивирали <file its:translate="no">/home/jane/essay.txt</file>:</p> <screen its:translate="no">cd multivolume_snapshot/home/jane/essay.txt cat * > essay.txt</screen> <p>За да възстановите данни от последователни (incremental) архиви, използвайте <cmd its:translate="no">rdiff</cmd> да зашиете файловете заедно. Вижте <cmd its:translate="no">man rdiff</cmd> за начина на употреба.</p> </section> </page>
修改文件时间
将文件时间修改为当前时间的前一年
删除文件