Резервное копирование каталога в Linux с помощью сценария оболочки


В Linux существует несколько вариантов резервного копирования данных. Вы можете использовать некоторые бесплатные программы, например резервные копии и Резервное копирование. Однако существует простой способ резервного копирования каталога без установки дополнительного программного обеспечения.

Мы создадим сценарий оболочки, используя переменные, команду tar и команду date , чтобы создать датированный файл резервной копии каталога с его подкаталогами.

>

Сценарий оболочки — это, по сути, файл, содержащий список команд, которые выполняются последовательно. Если у вас есть ряд команд, которые вы регулярно выполняете по порядку, полезно создать сценарий оболочки, содержащий эти команды. После этого вам останется только запустить файл сценария для выполнения команд.

Создание файла сценария оболочки

В этом примере мы собираемся создать сценарий оболочки для резервного копирования каталога, содержащего файлы руководства пользователя. Мы используем среду Gnome в Ubuntu .

Сначала откройте свой домашний каталог, выбрав Домашняя папка в меню Места . Браузер файлов откроется в вашем домашнем каталоге.

Opening the home folder

Мы собираемся создать новый пустой файл, в который будем вводить команды для выполнения резервного копирования. Щелкните правой кнопкой мыши на правой панели и выберите Создать документ | «Очистить файл» из всплывающего меню.

Creating an empty shell script file

Файл добавлен в список и готов к переименованию. Введите имя файла, присвоив ему расширение .sh .

New file ready to be renamed

В этом примере мы назвали наш файл user_guide_backups.sh .

Shell script file renamed

Теперь нам нужно добавить команды в файл. Щелкните правой кнопкой мыши имя файла и выберите во всплывающем меню Открыть с помощью gedit .

Opening shell script file with gedit

Файл открывается в gedit . Введите следующие строки в файл и нажмите Сохранить . Назначение каждой строки указано ниже.

ПРИМЕЧАНИЕ. Вы также можете скопировать следующий текст и вставить его в gedit . Обязательно замените на свое имя пользователя.

#!/bin/bash
SRCDIR="/home/<username>/Documents/my_work/" DESTDIR="/home/<username>/Backups/" FILENAME=ug-$(date +%-Y%-m%-d)-$(date +%-T).tgz tar --create --gzip --file=$DESTDIR$FILENAME $SRCDIR

Editing shell script file in gedit

Построчное описание

В следующей таблице описано, что представляет собой каждая строка в файле сценария оболочки.

.
Строка № Описание
1Эта строка должна быть первой строкой в ​​сценарии оболочки bash, который используется по умолчанию. тип сценария.
2Эта строка устанавливает переменную с именем SRCDIR и устанавливает ее значение в каталог для резервного копирования.
ПРИМЕЧАНИЕ. Обязательно замените на свое имя пользователя .
3Эта строка устанавливает переменную с именем DESTDIR и устанавливает ее значение в каталог, в который будет записан файл резервной копии.
ПРИМЕЧАНИЕ. Обязательно замените на свое имя пользователя .
4Эта строка устанавливает переменную с именем FILENAME и устанавливает значение с использованием текста и переменных, содержащих команду date , для добавления текущей даты и времени к имени файла. . Например, имя файла может быть ug-20100212-13:03:45.tgz .
ПРИМЕЧАНИЕ. При использовании переменной всегда начинайте ее со знака доллара. ($ ). Если вы используете команду как часть переменной, заключите команду и ее параметры в круглые скобки.
5Эта строка представляет собой <Командаstrong>tar с добавленной следующей функцией и параметрами.
–createЭта функция создает новый архив (или усекает старый, если указанное имя файла уже существует) и записывает в него указанные файлы или каталог.
–gzipЭта опция указывает tar сжимать файлы в архиве с помощью утилиты gzip .
–fileЭта опция дает tar имя файла для использования. В этом случае мы собрали имя файла, используя переменные DESTDIR , FILENAME и SRCDIR .

Редактирование разрешений для файла сценария оболочки

Перед запуском сценария необходимо убедиться, что файл имеет правильные разрешения. Для этого снова откройте Домашнюю папку , как указано выше, и щелкните правой кнопкой мыши файл сценария оболочки. Выберите Свойства во всплывающем меню.

Getting the properties of the shell script file

Откроется диалоговое окно Свойства . Убедитесь, что установлен флажок Выполнить ..

Shell script file permissions

Нажмите Закрыть .

Запуск сценария оболочки

Чтобы запустить сценарий оболочки, откройте окно терминала, выбрав Аксессуары | Терминал в меню Приложения .

Opening a Terminal window

Когда откроется окно Терминал , вы по умолчанию должны находиться в своей Домашней папке . Ввод pwd в командной строке и нажатие клавиши Enter подтверждает этот факт. В командной строке введите ./user_guide_backups.sh и нажмите Enter .

Running the shell script

У вас должен быть файл .tgz в папке «Резервные копии» вашей домашней папки . Если щелкнуть правой кнопкой мыши имя файла, вы увидите несколько вариантов открытия архива в одной из доступных программ архивирования или извлечения файлов непосредственно в папку Резервные копии с помощью команды Извлечь сюдакоманда.

Pop-up menu options for .tgz file

Дополнительная информация

Ссылки ниже предоставляют дополнительную информацию о сценариях оболочки, командах tar и date , а также других командах Linux.

Сценарии

Краткое руководство по написанию скриптов с использованием оболочки bash

Написание сценариев Bash Shell – 10-секундное руководство | Всё о Линукс

Справочное руководство по Bash

Команды Linux

смола MAN Страница

дата MAN Страница

Команды bash — MAN-страницы Linux

Изучение этих страниц поможет вам создавать собственные полезные сценарии оболочки Bash..

Похожие сообщения:


16.02.2010