Megatools for FreeBSD

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-01-27 14:03:46

xM писал(а):Это штатная утилита от MEGA. К этому набору она отношения не имеет.
Ага эта штатная утилита есть под Линуксом, а freeBSD обделили- не порядок. :(
ну и как тогда автоматически синхронизировать папки между компьютером и облаком?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-01-27 14:23:32

При помощи простого шелл-скрипта.
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-01-27 14:30:10

xM писал(а):При помощи простого шелл-скрипта.
не подскажите какого? Нужна синхронизация в две стороны, т.е если я удаляю на компе, то чтобы удалялось на облаке
Спасибо![/quote]

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-01-27 16:16:38

Elimelech писал(а): не подскажите какого?
Который вы себе сам напишете. Или кто-то вам напишет.
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-01-27 16:28:35

вот помогли, спасибо! Кто ж мне напишет бесплатно?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-01-28 21:34:54

undefined писал(а): примонтированную локально ФС неполучается копировать и создавать файлы стандартными средствами оболочки (например комманда cp), так и должно быть
Ответ "да".
Из man megafs
NOTE: Be aware that reading and writing files is not implemented yet. You can only manage directories and remove files.
Допилит автор, будем надеяться.
IT voodoo blog https://kostikov.co

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-04-30 13:27:09

В связи с добавлением новой версии в дерево портов написал немного о MEGA для новичков.
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-04-30 19:20:15

Я что-то не пойму, почему копируються файлы по новому несколько раз?

Ставлю команду в кронтаб:

Код: Выделить всё

*/1       *      *      *       *       root   /usr/local/bin/megacopy --local /home/elimelech/Downloads --remote /Root/foto.backup
Вложения
logo4.png

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-04-30 21:26:16

Потому что MEGA поддерживает версионность.

Отправлено спустя 8 минут 38 секунд:
Изображение
IT voodoo blog https://kostikov.co

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-04-30 22:46:18

Вот вам пример простого скрипта синхронизации локальной директории с облачной MEGA.

Код: Выделить всё

#!/bin/sh

LOCALDIR="/usr/local/data/backups"			# откуда
REMOTEDIR="/Root/backups"	# куда
BACKUP_TIME=`date +%c`					# дата - время
LOG="/usr/local/data/backups/mega.log"		# путь к логу

# Получить список файлов, которых нет локально...
DELETE=`megacopу --dryrun --reload --download --local $LOCALDIR --remote $REMOTEDIR | sed 's|F '$LOCALDIR'|'$REMOTEDIR'|g'`

# ...и удалить их
for i in $DELETE; do
        megarm $i
done

# Синхронизировать локальную директорию с MEGA...
SYNC=`megacopу --no-progress --local $LOCALDIR --remote $REMOTEDIR`

# ...и залогировать действия
echo "[$BACKUP_TIME] synchronization to MEGA done!" >> $LOG
echo "Files removed: $DELETE" >> $LOG
echo "Files synchronized: $SYNC" >> $LOG
echo "-----" >> $LOG
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-04-30 23:14:15

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

Отправлено спустя 17 минут 28 секунд:
Чё-то не работает ваш "простой" скрипт:

Код: Выделить всё

$ sh mega.sh
: not found
: not found
: not found
mega.sh: 12: Syntax error: word unexpected
Вложения
logo5.png

Аватара пользователя
dekloper
ст. лейтенант
Сообщения: 1331
Зарегистрирован: 2008-02-24 15:43:19
Откуда: давно здесь сидим..
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение dekloper » 2016-05-01 2:15:54

инструментарий для работы из командной строки, это вышеупомянутый Megatools. Это позволяет использовать облако в автоматизированных процессах хранения, резервного копирования и синхронизации.
и как, простите, вы будете синхронизироваться из скрипта, если оно - вообще не блочное устройство, а непойми что..

Код: Выделить всё

df: File system /root/megatools/root does not have a block size, assuming 512.
/dev/fuse                          0        0        0   100%    /root/megatools/root
root@ws53:~/megatools # cat >> /root/megatools/root/bubu
/root/megatools/root/bubu: Invalid argument.
зачем вообще придумана команда "megafs"? если не секрет, растолкуйте, плз))
ТОВАгИЩИ! БгАТЬЯ И СЕСТгЫ! ДОЛОЙ гАВНОДУШИЕ!

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-05-01 12:20:58

dekloper писал(а): зачем вообще придумана команда "megafs"?
Это вопрос лучше задать автору. По мне так в том виде, что она есть сейчас, смысла в ней, действительно, не очень много.
dekloper писал(а): и как, простите, вы будете синхронизироваться из скрипта, если оно - вообще не блочное устройство
Пофайлово, mon ami, пофайлово.
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-05-01 12:35:21

ДА НЕ РАБОТАЕТ ЭТОТ СРИПТ, на 12 строчке глючиться: for i in $DELETE; do

Код: Выделить всё

#!/bin/sh

LOCALDIR="/usr/local/data/backups"         # откуда
REMOTEDIR="/Root/backups"   # куда
BACKUP_TIME=`date +%c`               # дата - время
LOG="/usr/local/data/backups/mega.log"      # путь к логу

# Получить список файлов, которых нет локально...
DELETE=`megacopу --dryrun --reload --download --local $LOCALDIR --remote $REMOTEDIR | sed 's|F '$LOCALDIR'|'$REMOTEDIR'|g'`

# ...и удалить их
for i in $DELETE; do
        megarm $i
done

# Синхронизировать локальную директорию с MEGA...
SYNC=`megacopу --no-progress --local $LOCALDIR --remote $REMOTEDIR`

# ...и залогировать действия
echo "[$BACKUP_TIME] synchronization to MEGA done!" >> $LOG
echo "Files removed: $DELETE" >> $LOG
echo "Files synchronized: $SYNC" >> $LOG
echo "-----" >> $LOG

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-05-01 12:46:09

Elimelech писал(а): ДА НЕ РАБОТАЕТ ЭТОТ СРИПТ
Лапти не мои, если что.
Вот специально проверил - работает. Но кривовато.
Допиливайте как надо.
Если хотите полноценную синхронизацию, то учтите, что вам надо будет проверять уже имеющиеся в облаке файлы на факт их соответствия локальным (дата, время, размер).
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-05-01 12:51:53

так дайте работающий скрипт, а не обрывки

Отправлено спустя 32 секунды:
Elimelech писал(а): megarm $i
Elimelech писал(а): # ...и удалить их
for i in $DELETE; do
megarm $i
done
- это вообще не понятно откуда и куда!?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-05-01 12:53:20

Elimelech писал(а): так дайте работающий скрипт
Бог подаст.
IT voodoo blog https://kostikov.co


Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-05-01 17:15:26

В качестве благотворительности по поводу окончания Пейсаха и празднования Дня трудящихся - Пасхи, дарю :-D
https://kostikov.co/post/skript-sinhron ... pki-s-mega
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-05-01 22:06:14

тоже самеое:

Код: Выделить всё

megasync.sh: 15: Syntax error: word unexpected
на строчку for i in $DEL; ругается
Что будем делать?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-05-01 23:29:22

Elimelech писал(а):тоже самеое:

Код: Выделить всё

megasync.sh: 15: Syntax error: word unexpected
на строчку for i in $DEL; ругается
Что будем делать?
Вам надо думать учиться. Или copy-paste качественно делать.
IT voodoo blog https://kostikov.co

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-05-01 23:44:18

где у меня ошибка?

Код: Выделить всё

#!/bin/sh

# Syncronize local directory on MEGA cloud drive
# (c)2016 by Maxim V. Kostikov http://kostikov.co e-mail: max@kostikov.co

locdir="/home/elimelech/Downloads/soft"  # local dir
remdir="/Root/foto.backup"                      # remote dir
datetime=`date '+%Y-%m-%d %H:%M:%S'`
log="/var/log/megasync.log"                     # log location
login="elimelech07@gmail.com"                  # MEGA login name
pass="Kb34567734V1k"                             # MEGA password

# --- delete localy absent files and directories from cloud drive
DEL="megacopy --dryrun --reload --download --username $login --password $pass --local $locdir --remote $remdir 2> /dev/null | sed 's|. '$locdir'|'$remdir'|g'"
for i in $DEL;
do
        megarm --username $login --password $pass $i 2> /dev/null
done

# --- delete localy modified files from cloud drive
if [ -f $log ];
then
        # using log modification as criterion
        UPD="find $locdir -type f -newer $log | sed 's|'$locdir'|'$remdir'|g'"
        for i in $UPD;
        do
                megarm --username $login --password $pass $i 2> /dev/null
        done
fi

# --- sync local data
SYNC="megacopy --no-progress --username $login --password $pass --local $locdir --remote $remdir 2> /dev/null"

# --- write results in log
echo "$datetime synchronization to MEGA done!" >> $log
echo "Files removed:" $DEL >> $log
echo "Files modified:" $UPD >> $log
echo "Files synchronized:" $SYNC >> $log
echo "-----" >> $log

Аватара пользователя
Elimelech
лейтенант
Сообщения: 677
Зарегистрирован: 2009-11-28 18:42:07
Откуда: Украина
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение Elimelech » 2016-10-31 13:57:44

Вот ставил на новый ноут систему и настроил mega, так что-то в логах пишет пусто. Не хочет синхронизировать срипт. В чем может быть проблема?

Код: Выделить всё

2016-10-31 12:26:12 synchronization to MEGA done!
Files removed:
Files synchronized:
-----
2016-10-31 12:26:27 synchronization to MEGA done!
Files removed:
Files synchronized:

Аватара пользователя
Neus
капитан
Сообщения: 1913
Зарегистрирован: 2008-09-08 21:59:56

Megatools for FreeBSD

Непрочитанное сообщение Neus » 2016-10-31 14:09:31

вам же сказали -- фря вас не любит :)

Код: Выделить всё

$ TEST="ls -l 2>/dev/null"
$ echo $TEST
ls -l 2>/dev/null
$ TEST=`ls -l 2>/dev/null`
$ echo $TEST
total 0
$ TEST="ls -l 2>/dev/null"
$ echo $TEST
ls -l 2>/dev/null
$ TEST=$(ls -l 2>/dev/null)
$ echo $TEST
total 0
Отправлено спустя 1 минуту 52 секунды:
Guest: профессор, Ваш выход! :)
Physics is mathematics with the constraint of reality.

Engineering is physics with the constraint of money.

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Megatools for FreeBSD

Непрочитанное сообщение xM » 2016-10-31 14:14:15

Elimelech писал(а): login="elimelech07@gmail.com"                  # MEGA login name
pass="Kb34567734V1k"                             # MEGA password
Спасибо! :-D
IT voodoo blog https://kostikov.co