Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Создание бекапа папок [Решено]  (Прочитано 2426 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн slavush

  • Автор темы
  • Забанен
  • Участник
  • *
  • Сообщений: 180
    • Просмотр профиля
    • Комтрейдинг
Создание бекапа папок [Решено]
« : 31 Августа 2019, 13:02:27 »
Необходимо бекапить файлы - папки с облака и локальные файты с Desktop и папку Документы,

хочу подключить скриптом облако
стянуть папки, файлы с облака плюс локальные файлы с Desktop и папка Документы
их нужно заархивировать и копировать на подмонтированный раздел второго диска
делать эти бекапы ежедневно, недельно, месячно

Как мне лучше построить такой бекап? про timeshift упоминали, но он же систему бекапит
« Последнее редактирование: 18 Марта 2020, 11:15:41 от zg_nico »
Intel CoffeeLake Core i5-9400F :: 16G 2666MHz :: SSD(m2) :: 650W :: Windows 10
Dell 3310 :: Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz :: 16G DDR3 2666 MHz :: M.2 NVME :: Windows 10

Оффлайн damix

  • Активист
  • *
  • Сообщений: 664
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #1 : 31 Августа 2019, 14:18:03 »
В systemd есть такая штука таймеры (timers).
https://wiki.archlinux.org/index.php/Systemd/Timers
https://sys-adm.in/os/nix/718-primer-ispolzovaniya-systemd-timer-ili-kak-zabyt-pro-cron.html
Написать скрипт, который бэкапит все как надо и запускать его по времени с помощью systemd. Не оно?

Онлайн F12

  • Администратор
  • Старожил
  • *
  • Сообщений: 4493
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #2 : 31 Августа 2019, 15:58:26 »
slavush, а чем штатные средства Резервного копирования не устраивают?..

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1753
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #3 : 31 Августа 2019, 16:04:30 »
для десктопов есть anacron

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6753
  • 20% Cooler
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #4 : 31 Августа 2019, 17:10:08 »
systemd-timers + rsync/tar/...
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн slavush

  • Автор темы
  • Забанен
  • Участник
  • *
  • Сообщений: 180
    • Просмотр профиля
    • Комтрейдинг
Re: Создание бекапа папок
« Ответ #5 : 02 Сентября 2019, 18:38:30 »
Спасибо, очень благодарен

добавил в автозагрузку google-drive-ocamlfuse,
теперь у меня всегда есть папка google-диск с облака которую надо бекапить
и папка локальная документы

создаю по дефолту как в примере

скрипт
/usr/local/bin/my-timer
#!/bin/bash
DATE=`date`
logger "Hi from timer script $DATE"

/etc/systemd/system/my-timer.timer
[Unit]
Description=Runs my-timer every minute

[Timer]
# Run after booting one minute
OnBootSec=1min
# Run every one hour or one munite
# OnUnitActiveSec=1h
OnUnitActiveSec=1min

Unit=my-timer.service

[Install]
WantedBy=multi-user.target

/etc/systemd/system/my-timer.service
[Unit]
Description=MyTimer for backup

[Service]
Type=simple
ExecStart=/usr/local/bin/my-timer

делаю активным демон
systemctl enable my-timer.timer

стартую его
systemctl start my-timer.timer

systemctl status my-timer.timer
● my-timer.timer - Runs my-timer every minute
   Loaded: loaded (/etc/systemd/system/my-timer.timer; enabled; vendor preset: enabled)
   Active: inactive (dead) since Mon 2019-09-02 18:03:40 EEST; 23min ago
  Trigger: n/a

сен 02 17:53:52 Shiny systemd[1]: Started Runs my-timer every minute.
сен 02 18:03:40 Shiny systemd[1]: my-timer.timer: Succeeded.
сен 02 18:03:40 Shiny systemd[1]: Stopped Runs my-timer every minute.
все работает

Мне надо чтобы 2 папки google-диск и Документы
архивировались и копировались на другой жесткий диск /mnt/sata_part
ежедневно
еженедельно
ежемесячно

это что мне надо подкорректировать?

Пользователь добавил сообщение 02 Сентября 2019, 18:46:39:
надо настроить
/etc/systemd/system/my-timer.timer

что туда прописывать, чтоб он начал по расписанию работать, без тригера по старту компьютера?
« Последнее редактирование: 02 Сентября 2019, 18:46:39 от slavush »
Intel CoffeeLake Core i5-9400F :: 16G 2666MHz :: SSD(m2) :: 650W :: Windows 10
Dell 3310 :: Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz :: 16G DDR3 2666 MHz :: M.2 NVME :: Windows 10

Оффлайн damix

  • Активист
  • *
  • Сообщений: 664
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #6 : 04 Сентября 2019, 18:23:32 »
slavush, так ежедневно, еженедельно или ежемесячно? Есть смысл только одно из этого делать. Или я чего-то не понял?
Тут надо поправить /usr/local/bin/my-timer (лучше дать ему расширение .sh) как-то так
/usr/local/bin/my-timer
#!/bin/bash
DATE=`date`
logger "Hi from timer script $DATE"
zip -r /mnt/sata_part/backup.zip /google/drive/path/ /home/user/Документы/

Допустим, надо бэкапить еженедельно. Тогда надо поправить /etc/systemd/system/my-timer.timer как-то так
[Unit]
Description=Runs my-timer every week

[Timer]
OnCalendar=weekly
Persistent=true

Unit=my-timer.service

[Install]
WantedBy=multi-user.target
Я не проверял работу таймера, но предполагаю, что тут OnCalendar и Persistent надо использовать. Вот тут про них подробнее написано.

Пользователь добавил сообщение 04 Сентября 2019, 18:34:06:
Архивировать можно по-разному. Можно использовать zip, а можно tar. Да и параметров у них полно. Подробнее про это знает гугл.
« Последнее редактирование: 04 Сентября 2019, 18:34:06 от damix »

Оффлайн slavush

  • Автор темы
  • Забанен
  • Участник
  • *
  • Сообщений: 180
    • Просмотр профиля
    • Комтрейдинг
Re: Создание бекапа папок
« Ответ #7 : 07 Сентября 2019, 11:41:57 »
Сработало,
всем спасибо, идет бекап
ежедневно копирует нужные файлы на второй диск

сейчас скрипт:

#!/bin/bash
zip -r /mnt/sata_part/backup.zip /home/slava/Документы/


и демон следующий:

[Unit]
Description=Runs my-timer

[Timer]
OnCalendar=dayly       
Persistent=true

Unit=my-timer.service

[Install]
WantedBy=multi-user.target

как мне настроить чтобы, бекап работал следующим образом
в папке dayly было 7 zip файлов, бекап за каждый день недели
еженедельно в папку weekly падал 1 zip файл, бекап за неделю
ежемесячно в папку monthly падал 1 zip файл, бекап за месяц

я не сильно знаю консоль ubuntu, linux раньше работал на другой оси, на freebsd
очень рад что популярна стала так ubuntu, в тренде, работаю на ней, похоже что это самая лучшая ось, лидер, флагман

Пользователь добавил сообщение 07 Сентября 2019, 12:12:11:
столкнулся с еще одним вопросом
бекаплю google-диск
zip -r /mnt/sata_part/backup.zip /home/slava/google-диск
        zip warning: name not matched: /home/slava/google-диск

zip error: Nothing to do! (try: zip -r /mnt/sata_part/backup.zip . -i /home/slava/google-диск)
root@Shiny:/usr/local/bin# zip -r /mnt/sata_part/backup.zip . -i /home/slava/google-диск
        zip warning: zip file empty

папка такая точно есть, использую google-drive-ocamlfuse

Пользователь добавил сообщение 07 Сентября 2019, 12:13:30:
почему-то ее не видно из консоли, права в порядке
« Последнее редактирование: 07 Сентября 2019, 12:13:30 от slavush »
Intel CoffeeLake Core i5-9400F :: 16G 2666MHz :: SSD(m2) :: 650W :: Windows 10
Dell 3310 :: Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz :: 16G DDR3 2666 MHz :: M.2 NVME :: Windows 10

Оффлайн damix

  • Активист
  • *
  • Сообщений: 664
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #8 : 07 Сентября 2019, 20:38:02 »
как мне настроить чтобы, бекап работал следующим образом
в папке dayly было 7 zip файлов, бекап за каждый день недели
еженедельно в папку weekly падал 1 zip файл, бекап за неделю
ежемесячно в папку monthly падал 1 zip файл, бекап за месяц
А жесткий диск не закончится?
В смысле раз в неделю копируем все архивы за неделю или архивируем сами файлы?
Для начала
cd /mnt/sata_part
mkdir dayly
mkdir weekly
mkdir monthly
Потом поправить /usr/local/bin/my-timer как-то так
#!/bin/bash
DATE=`date +%y_%m_%d`
zip -r /mnt/sata_part/dayly/backup_$DATE.zip /home/slava/Документы/
Потом по аналогии с этим таймером создать еще два: который срабатывает еженедельно, и - ежемесячно. В их скриптах прописать то что нужно в зависимости от задачи. Я вообще не понимаю, зачем это может быть нужно.

я не сильно знаю консоль ubuntu, linux раньше работал на другой оси, на freebsd
На Ubuntu консоль такая же как и на всех линуксах, и почти такая же, как и на всех юниксах. Основные команды линукс легко гуглятся.

zip -r /mnt/sata_part/backup.zip /home/slava/google-диск
        zip warning: name not matched: /home/slava/google-диск

zip error: Nothing to do! (try: zip -r /mnt/sata_part/backup.zip . -i /home/slava/google-диск)
root@Shiny:/usr/local/bin# zip -r /mnt/sata_part/backup.zip . -i /home/slava/google-диск
        zip warning: zip file empty

Не знаю, может, на кирилицу ругается.

почему-то ее не видно из консоли, права в порядке
ls -l ~ | grep 'google'
Что выдает?

Оффлайн slavush

  • Автор темы
  • Забанен
  • Участник
  • *
  • Сообщений: 180
    • Просмотр профиля
    • Комтрейдинг
Re: Создание бекапа папок
« Ответ #9 : 07 Сентября 2019, 22:46:14 »
А жесткий диск не закончится?
В смысле раз в неделю копируем все архивы за неделю или архивируем сами файлы?
Для начала
Спасибо большое за топик,
имею в виду, чтоб были файлы в папке бекап:
пн.zip
вт.zip
ср.zip
чт.zip
пт.zip
сб.zip
вс.zip
неделя.zip
месяц.zip
это ж надежно, стандарт даже

3 демона делать? а скрипт, тоже 3?
как мне обработку написать в скрипте? буду очень благодарен

ls -l ~ | grep 'google'
$ ls -l ~ | grep 'google'
drwxrwxr-x 2 slava slava 4096 сен  2 16:57 google-диск

Intel CoffeeLake Core i5-9400F :: 16G 2666MHz :: SSD(m2) :: 650W :: Windows 10
Dell 3310 :: Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz :: 16G DDR3 2666 MHz :: M.2 NVME :: Windows 10

Оффлайн damix

  • Активист
  • *
  • Сообщений: 664
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #10 : 08 Сентября 2019, 13:05:52 »
3 демона делать? а скрипт, тоже 3?
Ну наверное. Так проще всего.

Папка судя по всему есть. А если ее
ln -s -T google-диск google_drive?
(Создать ссылку на нее без пробелов, знаков и русских букв)

как мне обработку написать в скрипте?
Так все равно непонятно, что вам нужно.
Ежедневный бэкап так
#!/bin/bash
DATE=`date +%a`
zip -r /mnt/sata_part/dayly/$DATE.zip /home/slava/Документы/

А еженедельный и ежемесячный непонятно, что бэкапить должны.

Оффлайн slavush

  • Автор темы
  • Забанен
  • Участник
  • *
  • Сообщений: 180
    • Просмотр профиля
    • Комтрейдинг
Re: Создание бекапа папок
« Ответ #11 : 08 Сентября 2019, 18:16:48 »
Ежедневный бэкап так
Код: [Выделить]
#!/bin/bash
DATE=`date +%a`
zip -r /mnt/sata_part/dayly/$DATE.zip /home/slava/Документы/

Благодарю, ежедневный подыму, чтоб уже работал

извините некорректно задачу поставил
ежедневный бекап все оки, недельные в папку неделя, а за месяц в папку месяцы и еще нужно за год в папку год складывать

надо 4 демона подымать: день, неделя, месяц, год

все прояснили, большое спасибо

Пользователь добавил сообщение 09 Сентября 2019, 16:52:17:
Папка судя по всему есть. А если ее
все пашет, нельзя русские буквы, с ними не проходит почему-то, вы правы. Почему, это отдельным вопросом;)
« Последнее редактирование: 09 Сентября 2019, 16:52:17 от slavush »
Intel CoffeeLake Core i5-9400F :: 16G 2666MHz :: SSD(m2) :: 650W :: Windows 10
Dell 3310 :: Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz :: 16G DDR3 2666 MHz :: M.2 NVME :: Windows 10

Оффлайн slavush

  • Автор темы
  • Забанен
  • Участник
  • *
  • Сообщений: 180
    • Просмотр профиля
    • Комтрейдинг
Re: Создание бекапа папок
« Ответ #12 : 10 Сентября 2019, 12:30:21 »
Все пашет, бекап выполняется, готово

 ;)

день
неделя
месяц
год


Огромная благодарность всем, респект

Документы хранятся теперь в облаке и на втором жестком диске
Я создам еще одно место хранения, хочу подключить DVDRW и бекапировать копию доков на болванки


Пользователь добавил сообщение 10 Сентября 2019, 14:26:53:
Ребят, трабл, после того как я поднял 4 демона для бекапа, в dolphin перестал видеться гугл драйв и в бекап перестали попадать файлы с него

запускается только с sudo, раньше стартовал без sudo
$ fusermount -u /home/slava/google-drive
fusermount: entry for /home/slava/google-drive not found in /etc/mtab
$sudo fusermount -u /home/slava/google-drive

$ google-drive-ocamlfuse /home/slava/google-drive
Error: Sqlite3 error: READONLY
$ sudo google-drive-ocamlfuse /home/slava/google-drive

ls /home/slava/google-drive
ls: невозможно получить доступ к '/home/slava/google-drive': Отказано в доступе
$ sudo ls /home/slava/google-drive
все есть, дает вывод папок

но они не попадают в бекап и не видно в папке гугл их из dolphin,
бекап работает, но без папки гугл  ???







« Последнее редактирование: 10 Сентября 2019, 14:26:53 от slavush »
Intel CoffeeLake Core i5-9400F :: 16G 2666MHz :: SSD(m2) :: 650W :: Windows 10
Dell 3310 :: Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz :: 16G DDR3 2666 MHz :: M.2 NVME :: Windows 10

Оффлайн damix

  • Активист
  • *
  • Сообщений: 664
    • Просмотр профиля
Re: Создание бекапа папок
« Ответ #13 : 11 Сентября 2019, 18:32:57 »
ls -l ~ | grep 'google'

Оффлайн slavush

  • Автор темы
  • Забанен
  • Участник
  • *
  • Сообщений: 180
    • Просмотр профиля
    • Комтрейдинг
Re: Создание бекапа папок
« Ответ #14 : 19 Сентября 2019, 12:06:28 »
сделал, бекап работает,
всем спасибо большое, респект
Intel CoffeeLake Core i5-9400F :: 16G 2666MHz :: SSD(m2) :: 650W :: Windows 10
Dell 3310 :: Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz :: 16G DDR3 2666 MHz :: M.2 NVME :: Windows 10

 

Страница сгенерирована за 0.059 секунд. Запросов: 23.