Сервис рекомендуется запускать с правами root
Инструкция по созданию пользователя root
Скачивание дистрибутива Dropbox
Логинимся под новым пользователем
cd ~
wget https://www.dropbox.com/download?plat=lnx.x86_64 -O dropbox-linux.tar.gz
Создание системной папки Dropbox
mkdir ~/dropbox.service
Распаковка системных файлов Dropbox в папку
tar xvf dropbox-linux.tar.gz --strip 1 -C ~/dropbox.service
Первичный запуск процесса Dropbox
~/dropbox.service/dropboxd
Необходимо перейти по ссылке и присоединить наш сервер к аккаунту Dropbox
Прерывание процесса Dropbox
Ctrl+C
Нормальный запуск процесса Dropbox (НЕ фоновый режим)
~/dropbox.service/dropboxd
Настройка сервиса Dropbox
sudo vim /etc/systemd/system/dropbox.service
[Unit]
Description=Dropbox Daemon
After=network.target
[Service]
Type=simple
User=<user>
ExecStart=/home/<user>/dropbox.service/dropboxd
ExecStop=/bin/kill -HUP $MAINPID
Restart=always
[Install]
WantedBy=multi-user.target
Запуск/Остановка/Статус сервиса Dropbox
sudo systemctl start dropbox
sudo systemctl stop dropbox
systemctl status dropbox
Добавление Dropbox в автозапуск
sudo systemctl enable dropbox
Установка архиватора 7zip
sudo apt install p7zip-full
Создание папки для резервных копий Dropbox
mkdir Dropbox.Backup
СКРИПТ №1 Запуск процесса Dropbox
vim ~<user>/Dropbox.Start.sh
#!/bin/bash
/home/<user>/dropbox.service/dropboxd
СКРИПТ №2 - Остановка,Чистка,Архивация Dropbox
vim ~<user>/Dropbox.Stop.Backup.sh
#!/bin/bash
# Остановка процесса Dropbox
pkill dropbox
# Очистка кэша в папке Dropbox
rm -rf ~<user>/Dropbox/.dropbox.cache/*
# Архивация папки Dropbox (компрессия, метод, дата-в-имени)
7z a -t7z -m0=lzma2 -mx=9 -mfb=64 -md=32m -ms=on ~<user>/Dropbox.Backup/Dropbox_$(date +20%y.%m.%d).7z ~<user>/Dropbox
# Удаление файлов в папке старше 6 дней
find ~<user>/Dropbox.Backup -atime +6 | xargs rm -f
Добавление скриптам прав на запуск
sudo chmod -R ug=rwx,o=rx ~<user>
/Dropbox.Start.sh
sudo chmod -R ug=rwx,o=rx ~<user>
/Dropbox.Stop.Backup.sh
Изменение даты создания файла (проверка работы скрипта очистки )
cp /etc/ucf.conf ~<user>
/Dropbox.Backup/
sudo touch -t 201706190000.00 ~<user>
/Dropbox.Backup/ucf.conf
Настройка планировщика CRON
crontab -e
# Механизм работы системы CRON
# ------------------------------------------------------------
# * * * * * {пользователь} выполняемая_команда
# - - - - -
# | | | | |
# | | | | ----- День недели (0-7) (Воскресенье =0 или =7 ','- несколько)
# | | | ------- Месяц (1-12) (можно три буквы из названия месяца,
# | | | регистр не имеет значения от jan до dec)
# | | --------- День (1-31)
# | ----------- Час (0-23)
# ------------- Минута (0-59)
# ------------------------------------------------------------
00 03 * * 1,3,5 ~<user>/Dropbox.Start.sh
10 03 * * 1,3,5 ~<user>/Dropbox.Stop.Backup.sh
Запуск Dropbox
/home/<user>
/dropbox.service/dropboxd
Остановка Dropbox
pkill dropbox
Проверка выполнения процесса Dropbox
ps -aux | grep dropbox
Проверка корневой папки Dropbox
l -lah ~/Dropbox
Проверка папки Dropbox.Backup
l -lah ~/Dropbox.Backup