Резервное копирование каталога в Linux с помощью сценария оболочки
Существует несколько вариантов резервного копирования ваших данных в Linux . Вы можете использовать некоторые бесплатные программы, такие как fwbackups и Sbackup . Однако существует простой способ резервного копирования каталога без установки дополнительного программного обеспечения.
Мы создадим сценарий оболочки, используя переменные, команду tar и команду date , чтобы создать датированный файл резервной копии каталога с его подкаталогами.
Сценарий оболочки — это, по сути, файл, содержащий список команд, которые выполняются последовательно. Если у вас есть ряд команд, которые вы регулярно запускаете по порядку, полезно создать сценарий оболочки, содержащий эти команды. Затем вам нужно только запустить файл сценария для запуска команд.
Создание файла сценария оболочки
В этом примере мы собираемся создать сценарий оболочки для резервного копирования каталога, содержащего файлы для руководства пользователя. Мы используем среду Gnome в (Gnome)Ubuntu .
Сначала войдите в свой домашний каталог, выбрав « Домашняя папка(Home Folder) » в меню « Места ». (Places)Браузер файлов(File Browser) открывается в вашем домашнем каталоге.
Мы собираемся создать новый пустой файл, в который мы будем вводить команды для выполнения резервного копирования. Щелкните правой кнопкой мыши(Right-click) на правой панели и выберите « Create Document | Empty File из всплывающего меню.
Файл добавлен в список и готов к переименованию. Введите(Type) имя файла, присвоив ему расширение .sh .
В этом примере мы назвали наш файл user_guide_backups.sh .
Теперь нам нужно добавить команды в файл. Щелкните правой кнопкой мыши имя файла и выберите « Открыть с помощью gedit(Open with gedit) » во всплывающем меню.
Файл открывается в gedit . Введите следующие строки в файл и нажмите Сохранить(Save) . Назначение каждой строки указано ниже.
ПРИМЕЧАНИЕ.(NOTE:) Вы также можете скопировать следующий текст и вставить его в gedit . Обязательно измените <username> на свое имя пользователя.
#!/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
Построчное описание
В следующей таблице описано, что представляет собой каждая строка в файле сценария оболочки.
Line # | Description | ||||||
1 | This line must be the first line in a bash shell script, which is the default type of script. | ||||||
2 | This line sets up a variable called SRCDIR and sets the value of it to the directory to be backed up. NOTE: Be sure to replace <username> with your username. |
||||||
3 | This line sets up a variable called DESTDIR and sets the value of it to the directory into which the backup file will be written. NOTE: Be sure to replace <username> with your username. |
||||||
4 | This line sets up a variable called FILENAME and sets the value using text and variables containing the date command to add the current date and time to the filename. For example, the filename might be ug-20100212-13:03:45.tgz. NOTE: When using a variable, always start it with the dollar sign ($). If you use a command as part of a variable, enclose the command and the options for the command in parentheses. |
||||||
5 | This line is the tar command with the following function and options added.
|
Редактирование разрешений(Permissions) для файла сценария оболочки(Shell Script File)
Перед запуском скрипта необходимо убедиться, что файл имеет правильные разрешения. Для этого снова откройте домашнюю папку(Home Folder) , как указано выше, и щелкните правой кнопкой мыши файл сценария оболочки. Выберите « Свойства(Properties) » во всплывающем меню.
Отобразится диалоговое окно « Свойства ». (Properties)Убедитесь(Make) , что установлен флажок « Выполнить ».(Execute)
Щелкните Закрыть(Close) .
Запуск сценария оболочки
Чтобы запустить сценарий оболочки, откройте окно терминала, выбрав « Accessories | Terminal из меню Приложения .(Applications)
Когда откроется окно терминала , вы должны быть в своей (Terminal)домашней папке(Home Folder) по умолчанию. Ввод pwd в командной строке и нажатие Enter подтверждает этот факт. В командной строке введите ./user_guide_backups.sh и нажмите Enter .
У вас должен быть файл .tgz в папке (.tgz)Backups в вашей домашней папке(Home Folder) . Если щелкнуть правой кнопкой мыши имя файла, вы увидите несколько вариантов открытия архива в одной из доступных программ архивации или извлечения файлов непосредственно в папку Backups с помощью команды (Backups)Extract Here .
Дополнительная информация
Ссылки ниже предоставляют дополнительную информацию о сценариях оболочки, командах tar и date и других командах Linux .
Сценарии
Краткое руководство по написанию скриптов с использованием оболочки bash(A quick guide to writing scripts using the bash shell)
Bash Shell Scripting – 10 Seconds Guide | All about Linux
Справочное руководство по Bash(Bash Reference Manual)
Команды Linux
смолка MAN-страница(tar MAN Page)
дата MAN-страница(date MAN Page)
Команды bash — MAN-страницы Linux(bash commands – Linux MAN Pages)
Изучение этих страниц поможет вам создать свои собственные полезные сценарии оболочки bash.
Related posts
Как ориентироваться и использовать структуру каталогов Linux
Команда Linux FIND с примерами
5 веских причин отказаться от Windows в пользу Linux
HDG объясняет: что такое UNIX?
9 лучших дистрибутивов Linux для взлома
20 лучших приложений для Linux
Как установить и настроить Кали Линукс
Как установить практически любой принтер на Ubuntu
Как установить дистрибутив Linux на свой Chromebook
Fedora против Ubuntu: какой дистрибутив Linux лучше?
5 лучших игр для Linux
Создайте свой собственный сервер потокового видео в реальном времени с помощью Linux
10 сочетаний клавиш Ubuntu для ускорения вашего рабочего процесса
Создавайте и редактируйте Zip-файлы в Linux с помощью терминала
9 полезных вещей, которые может сделать Linux, но не может Windows
Как установить и настроить файлы TCP/IP в Linux (настройки TCP/IP для Linux)
5 лучших дистрибутивов Linux, которые вы должны использовать
Распространенные причины сбоев Ubuntu и способы восстановления
10 лучших приложений Linux для пользователей Ubuntu
Что такое иноды в Linux и как они используются?