Є кілька варіантів резервного копіювання даних у Linux. Можна використовувати деякі вільно доступні програми, такі як fwbackups і Sbackup. Однак існує простий спосіб резервного копіювання каталогу без встановлення додаткового програмного забезпечення.
Ми створимо сценарій оболонки, використовуючи змінні, команду tar і команду date, щоб створити файл резервної копії каталогу з його підкаталогами.
Скрипт оболонки по суті є файлом, що містить список команд, які виконуються послідовно. Якщо у вас регулярно виконується ряд команд, корисно створити скрипт оболонки, що містить ці команди. Потім потрібно запустити лише файл сценарію, щоб запустити команди.
Створення файлу сценарію Shell
У цьому прикладі ми збираємося створити скрипт оболонки для резервного копіювання каталогу, що містить файли для посібника користувача. Ми використовуємо середовище Gnome в Ubuntu .
Спочатку зверніться до домашнього каталогу, вибравши Домашню папку з меню Місця . Переглядач файлів відкриється у ваш домашній каталог.
Ми збираємося створити новий порожній файл, в який будемо вводити команди для виконання резервного копіювання. Клацніть правою кнопкою миші на правій панелі і виберіть пункт Створити документ | Порожній файл із спливаючого меню.
Файл додається до списку і готовий до перейменування. Введіть ім'я файлу, надавши файлу розширення .sh .
У цьому прикладі ми назвали наш файл user_guide_backups.sh .
Тепер нам потрібно додати команди до файлу. Клацніть правою кнопкою миші на назві файлу та виберіть у спливаючому меню пункт Відкрити за допомогою gedit .
Файл відкривається в gedit . Введіть у файл наступні рядки та натисніть " Зберегти" . Мета кожного рядка вказана нижче.
ПРИМІТКА. Можна також скопіювати наступний текст і вставити його в gedit . Обов'язково змініть до вашого імені користувача.
#! / bin / bash SRCDIR = "/ home // Документи / my_work /" DESTDIR = "/ home // Резервні копії /" FILENAME = ug - $ (дата +% - Y% -m% -d) - $ (дата +% - T) .tgz tar --create --gzip --file = $ DESTDIR $ FILENAME $ SRCDIR
Опис за рядком
У наведеній нижче таблиці описано, що кожен рядок знаходиться у файлі сценарію оболонки.
Рядок # | Опис | ||||||
1 | Цей рядок має бути першим рядком у скрипті оболонки bash, який є типовим типом сценарію. | ||||||
2 | Цей рядок встановлює змінну з назвою SRCDIR і встановлює її значення в каталог, який потрібно створити. ПРИМІТКА. Обов'язково замініть з вашим іменем користувача . | ||||||
3 | Ця лінія встановлює змінну з назвою DESTDIR і встановлює її значення в каталог, в який буде записано файл резервної копії. ПРИМІТКА. Обов'язково замініть з вашим іменем користувача . | ||||||
4 | Цей рядок встановлює змінну з назвою FILENAME і встановлює значення, використовуючи текст і змінні, що містять команду date, щоб додати поточну дату і час до імені файлу. Наприклад, назва файлу може бути ug-20100212-13: 03: 45.tgz . ПРИМІТКА. При використанні змінної завжди запускайте його зі знаком долара ( $ ). Якщо ви використовуєте команду як частину змінної, укладайте команду та параметри команди в дужках. | ||||||
5 | Цей рядок є командою tar з доданими функціями та параметрами.
|
Редагування дозволів на файл сценарію Shell
Перш ніж запускати сценарій, потрібно переконатися, що файл має правильні права. Для цього знову відкрийте домашню папку, як згадано вище, і клацніть правою кнопкою миші на файлі сценарію оболонки. У спливаючому меню виберіть Властивості .
З'явиться діалогове вікно Властивості . Переконайтеся, що встановлено прапорець Виконати .
Натисніть кнопку Закрити .
Запуск сценарію оболонки
Щоб запустити скрипт оболонки, відкрийте вікно терміналу, вибравши Accessories | Термінал з меню Програми .
Коли відкриється вікно терміналу, ви повинні бути у вашій домашній теці за замовчуванням. Введення pwd в командному рядку і натискання клавіші Enter підтверджує цей факт. У запрошенні введіть ./user_guide_backups.sh і натисніть Enter .
Ви повинні мати файл .tgz у папці Резервні копії у вашій домашній теці . Якщо ви клацнете правою кнопкою миші на назві файлу, ви побачите кілька варіантів для відкриття архіву в одній з доступних програм архівації або вилучення файлів безпосередньо до папки резервних копій за допомогою команди Extract Here .
Більше інформації
Нижче наведені додаткові відомості про сценарії оболонки, команди tar та date та інші команди Linux.
Сценарії
Короткий посібник для написання сценаріїв з використанням оболонки bash
Сценарії Bash Shell - Керівництво 10 секунд | Все про Linux
Довідковий посібник Bash
Команди Linux
смола MAN Page
дата MAN Page
bash команди - Linux MAN сторінки
Вивчення цих сторінок допоможе вам побудувати власні корисні сценарії оболонки bash.