| [ | Current Mood |
| | sick | ] |
| [ | Current Music |
| | H.E.R.R. - Fire and Glass: A London Tradegy | ] | Вот к этому: https://lj.rossia.org/users/tiphareth/2579591.html
Снова ебусь с mega.nz, который я себе уже давно поставил в замену дропбоксу; по функционалу они более-менее эквивалентны, просто дропбокс охуел вконец от монополии.
Эту гнойную хуйню (клиент MEGAcmd) приходится регулярно компилировать заново, потому что иначе она ломается. Сегодня она потянула за собой гигабайт исходников, включая целиком icu и ffmpeg (в следующий раз она потянет хромиум, я гарантирую это). Поскольку я использую это говно строго в коммандлайне, компилировать ffmpeg мне не хочется, но старый рецепт (./configure --without-freeimage --without-ffmpeg) не сработал, пришлось читать исходники. Следующие при конфигурировании отключают графику.
cmake -B build/build-cmake-MinSizeRel -DCMAKE_BUILD_TYPE=MinSizeRel -DUSE_MEDIAINFO=OFF -DENABLE_MEDIA_FILE_METADATA=OFF -DUSE_FREEIMAGE=OFF -DNABLE_ISOLATED_GFX=OFF -DENABLE_QT_BINDINGS=OFF -DUSE_PDFIUM=OFF -DFULL_REQS=OFF
Дальше cmake --build build/build-cmake-MinSizeRel и cmake --install build/build-cmake-MinSizeRel
"Программистам", которые регулярно выкатывают новую кривую версию чего угодно, требуя переставить клиент, надо руки отпилить нахуй и залить чем-нибудь едким. Мне все эти гигабайты говнища нахуй не надо, а надо, чтобы работало то, что всегда работало. Вообще говна развелось дохуя. AI в теории должен помочь (путем геноцида гнойных мразей нахуй), на практике паразиты только сильнее размножаются.
* * *
Результат всего этого неутешительный, последняя версия megacmd спотыкается на ошибках в своей собственной базе данных (находит сотни старых версий каких-то файлов, абсолютно непонятно, почему именно этиц), сообщает, что у нее issues, и не работает. Я чистил-чистил эту базу данных, все бестолку. Старые версии клиента работают ок, последняя сломана и не чинится, похоже, в принципе.
В итоге, установил у себя rclone, алгоритм работы такой.
1. rclone config
2. rclone bisync [home directory] mega:/MEGAsync --verbose --resync
3. запускать rclone bisync [home directory] mega:/MEGAsync --verbose по необходимости, демона у нее нет
4. Если нужен демон, должно работать следующее (можно положить в .xinitrc, например, или запускать из rc.local)
(
HOME="дом"
SYNC_DIR="$HOME/MEGAsync"
REMOTE="mega:MEGAsync"
LOG_FILE="$HOME/.rclone-mega.log"
INTERVAL=10 # Time to wait in seconds between sync runs
echo "=== System Boot: Starting Loop-Based Rclone Bisync ===" > "$LOG_FILE"
# 1. Run Initial Sync. If it fails, force a baseline --resync to catch up
if ! rclone bisync "$SYNC_DIR" "$REMOTE" --verbose --size-only --check-access >> "$LOG_FILE" 2>&1; then
echo "Standard initial sync failed. Forcing --resync..." >> "$LOG_FILE"
rclone bisync "$SYNC_DIR" "$REMOTE" --resync --verbose --size-only --check-access >> "$LOG_FILE" 2>&1
fi
# 2. Continuous time-delayed sync loop
while true; do
echo "Interval sleep finished. Checking for changes..." >> "$LOG_FILE"
# Run bisync sequentially. The loop automatically waits for this command to finish.
rclone bisync "$SYNC_DIR" "$REMOTE" --verbose --size-only --check-access >> "$LOG_FILE" 2>&1
# Pause before starting the next sync run
sleep "$INTERVAL"
done
) &
Вначале надо будет сделать touch $HOME/MEGAsync/RCLONE_TEST rclone touch mega:MEGAsync/RCLONE_TEST иначе --check-access сломается.
Чтобы почистить сайт от дупликатов, надо написать rclone dedupe --dedupe-mode newest mega:MEGAsync (в облаке mega.nz можно иметь тысячи файлов с одним именем в одной директории, такие файлы синхронизируются хуево даже с rclone, а родной клиент megacmd убивают нахуй; наличие таких файлов это баг сервера по сути, но объяснить сие криворукому программеру невозможно, он скажет, что это фича). Если это не сделать, rclone будет каждый раз жаловаться.
В итоге, я потер megacmd, поставил себе rclone с вышеописанным скриптом, посмотрим, будет ли оно работать, и как именно.
Привет |