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


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Автоматический backup файлов на удаленный ftp сервер  (Прочитано 9832 раз)

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

Оффлайн crp.518

  • Автор темы
  • Участник
  • *
  • Сообщений: 136
    • Просмотр профиля
Ребят лазил по различным блогам сис администраторов, и нашел интересную статью о том как наладить авто. бэкап на своем сервере + отправка на удаленный сервер посредством ФТП. Так вот решил тоже замутить такое чтоб в ручную не возится в дальнейшем... Вот и весь мануал:
Для того чтобы автоматизировать процесс бекапа данных на удаленный фтп сервер
напишем не большой скрипт

создаем в корне директорию bk
cd /
mkdir bk

редактируем скрипт
nano data.sh
#и вставляем следующий текст

#!/bin/sh
mkdir /bk/backup
cd /bk/backup
tar -zcvf `date +%d-%m-%Y`_nazvanie_arhiva.tar.gz /root/

mkdir /bk/`date +%d-%m-%Y`
mv ./*.tar.gz /bk/`date +%d-%m-%Y`
chmod -Rf 777 /bk/

ftp -n vash.udalenniftp.ru <<END_SCRIPT
quote USER user
quote PASS vashpass
put /bk/`date +%d-%m-%Y`/`date +%d-%m-%Y`_nazvanie_arhiva.tar.gz `date +%d-%m-%Y`_nazvanie_arhiva.tar.gz
quit
END_SCRIPT
эрэм эрэф /bk/`date +%d-%m-%Y`/
эрэм эрэф /bk/backup/
exit 0

этот скрипт можете поместить в cron чтобы полностью автоматизировать бекапы

У меня конечно же не получилось, не разобрался в некоторых параметрах самого скрипта... Кто понял разъясните более подробно что в скрипте подкоректировать нужно...
А вот содержимое моего скрипта:
#!/bin/sh
mkdir /bk/backup
cd /bk/backup
tar -zcvf `date +%d-%m-%Y`arhiv.tar.gz /home/ilyas/data.sh

mkdir /bk/`date +%d-%m-%Y`
mv ./*.tar.gz /bk/`date +%d-%m-%Y`
chmod -Rf 777 /bk/

ftp -n 185.8.212.16 <<END_SCRIPT
quote USER root
quote PASS 12345
put /bk/`date +%d-%m-%Y`/`date +%d-%m-%Y`arhiv.tar.gz `date +%d-%m-%$
quit
END_SCRIPT
эрэм эрэф /bk/`date +%d-%m-%Y`/
эрэм эрэф /bk/backup/
exit 0

Пользователь решил продолжить мысль 24 Декабря 2013, 10:30:00:
а вот что получается у меня с запуском моего скрипта

ilyas@ilyas-300E5EV-300E4EV-270E5EV-270E4EV:~$ sh data.sh
mkdir: невозможно создать каталог «/bk/backup»: Файл существует
tar: Удаляется начальный `/' из имен объектов
/home/ilyas/data.sh
data.sh: 21: data.sh: Syntax error: EOF in backquote substitution

Пользователь решил продолжить мысль 24 Декабря 2013, 23:12:11:
Актуально...
« Последнее редактирование: 24 Декабря 2013, 23:12:11 от crp.518 »

Оффлайн _set_

  • Участник
  • *
  • Сообщений: 227
    • Просмотр профиля
Цитировать
эрэм эрэф /bk/`date +%d-%m-%Y`/
эрэм эрэф /bk/backup/
"эрэм эрэф" - реально в скрипте присутсвует? bash такого не поймет. Плюс он ругается на обратные кавычки в 21 строке.

Оффлайн Karl500

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
Строка put обрезана. Когда копируете, копируйте внимательно.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
END_SCRIPT одинакого скрипт проблема.
Wars ~.o

Оффлайн crp.518

  • Автор темы
  • Участник
  • *
  • Сообщений: 136
    • Просмотр профиля
Цитировать
эрэм эрэф /bk/`date +%d-%m-%Y`/
эрэм эрэф /bk/backup/
"эрэм эрэф" - реально в скрипте присутсвует? bash такого не поймет. Плюс он ругается на обратные кавычки в 21 строке.
эрем эрем вставляется автоматом когда вставляешь скрипт в ответ на форуме, там rm -rf ). 21 строки нету в скрипте :(

Строка put обрезана. Когда копируете, копируйте внимательно.

#!/bin/sh
mkdir /bk/backup
cd /bk/backup
tar -zcvf `date +%d-%m-%Y`_nazvanie_arhiva.tar.gz /root/

mkdir /bk/`date +%d-%m-%Y`
mv ./*.tar.gz /bk/`date +%d-%m-%Y`
chmod -Rf 777 /bk/

ftp -n vash.udalenniftp.ru <<END_SCRIPT
quote USER user
quote PASS vashpass
put /bk/`date +%d-%m-%Y`/`date +%d-%m-%Y`_nazvanie_arhiva.tar.gz `date +%d-%m-%Y`_nazvanie_arhiva.tar.gz
quit
END_SCRIPT
эрэм эрэф /bk/`date +%d-%m-%Y`/
эрэм эрэф /bk/backup/
exit 0

http://admini24.ru/blog/linux/46.html
Вот ссылка на пост в блоге

END_SCRIPT одинакого скрипт проблема.


Не понял?
« Последнее редактирование: 26 Декабря 2013, 18:50:23 от crp.518 »

Оффлайн Karl500

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
Ну и? А у Вас в скрипте она почему обрезана?

Оффлайн crp.518

  • Автор темы
  • Участник
  • *
  • Сообщений: 136
    • Просмотр профиля
эт я скрипт не правильно копирнул :(. А как можно переделать скрипт под передачу по СФТП?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
для sftp есть команда sсp. Потому передача на сервер будет выглядеть примерно так
scp /bk/`date +%d-%m-%Y`/`date +%d-%m-%Y`_nazvanie_arhiva.tar.gz USER:PASSWORD@vash.udalenniftp.ru/`date +%d-%m-%Y`_nazvanie_arhiva.tar.gz

PS за точный синтаксис не ручаюсь - что-то давно я не скриптовал для sftp

Оффлайн crp.518

  • Автор темы
  • Участник
  • *
  • Сообщений: 136
    • Просмотр профиля
Не могли бы вы дать точную информацию
ip:10.10.10.80
user: root
pass: 12345

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
доступ по ssh пользователю root - одна из глупостей админа.

Кстати, скорее всего наврал по поводу пароля в строке копирования. Вспомнил, что пользовал авторизацию по ключам.
А как пользоваться инструментом понятно даже по scp --help. Не ленитесь, хотя бы по диагонали пройдитесь по man-у - может увидите ещё проще решение своей задачи.

Оффлайн crp.518

  • Автор темы
  • Участник
  • *
  • Сообщений: 136
    • Просмотр профиля
доступ по ssh пользователю root - одна из глупостей админа.

Кстати, скорее всего наврал по поводу пароля в строке копирования. Вспомнил, что пользовал авторизацию по ключам.
А как пользоваться инструментом понятно даже по scp --help. Не ленитесь, хотя бы по диагонали пройдитесь по man-у - может увидите ещё проще решение своей задачи.
Разумеется я вам данные для примера привел :)
у меня что scp --help , man англоязычные. Так что мне искать там информацию не вариант. Ладно будем гуглить.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
и у меня англоязычные, и я уже много раз здесь писал, что с буржуйским у меня не то что проблемы, а вообще никак, но в листинге
~$ scp --help
usage: scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
           [-l limit] [-o ssh_option] [-P port] [-S program]
           [[user@]host1:]file1 ... [[user@]host2:]file2
можно увидеть практически всё, что надо для ипользования

Оффлайн crp.518

  • Автор темы
  • Участник
  • *
  • Сообщений: 136
    • Просмотр профиля
Проблема в том что мне это мало понятно.
Цитировать
~$ scp --help
usage: scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
           [-l limit] [-o ssh_option] [-P port] [-S program]
           [[user@]host1:]file1 ... [[user@]host2:]file2

Абсолютно все значения, разве что file1

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
может пора попробовать понять?
например, что такое user или host.
А уж если хотите использовать sftp, то узнать что такое identity_file вообще из букваря.

Оффлайн crp.518

  • Автор темы
  • Участник
  • *
  • Сообщений: 136
    • Просмотр профиля
может пора попробовать понять?
например, что такое user или host.
А уж если хотите использовать sftp, то узнать что такое identity_file вообще из букваря.
user - имя пользователя sftp
хост- ip
Это банально, а остальное темный лес...

 

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