При синхронизации с Диском.Яндекс имеется возможность исключить из процесса синхронизации некоторые папки. Для этого а файле настроек config.cfg имеется инструкция exclude-dirs, например:
про свой опыт решения некоторых проблем и использования ряда возможностей ОС и приложений
пятница, 31 декабря 2021 г.
Исключить из синхронизации с Диск.Яндекс вложенные папки
четверг, 30 декабря 2021 г.
Руководство по настройке клиента MEGA
Но общее понимание предлагаемый материал может предоставить, особенно тем, кому "лениво" читать оригинальную справку по пользованию от разработчиков MEGA.
С такой же позиции мне было "лениво" править файл и заново рисовать картинки к уже написанному 😀 Поэтому файл pdf предоставляется "как есть".
Перейти к файлу pdf по ссылке.
пятница, 15 октября 2021 г.
qBittorrent – вариант настройки внешнего вида
Далее будет показано как привести внешний вид к моему варианту:
Цветовая схема использует стиль Mint-Y-Teal
По умолчанию буквы будут отображаться очень мелким шрифтом. Однако регулировку размера шрифта в qBittorrent на Linux Mint или Ubuntu в настройках самого клиента вы не найдете. Это связано с тем, что qBittorrent собран с использованием библиотеки Qt. Вызовите "Настройки" и далее "Настройки Qt5", в которых установите примерно следующие значения:
Если вы заметили, то на самом первом рисунке вверху главное окно клиента содержит информацию только о имени файла, его размере, прогрессе загрузки, скорости скачивания и оставшемся времени. Всю дополнительную информацию можно получить нажимая кнопки в нижней части окна, например, главное, файлы, пиры:
Для приведения снова к краткому виду следует нажать ещё раз ту кнопку, которая была нажата для вызова отображения дополнительных сведений.
По умолчанию, число столбцов главного окна, на мой взгляд, излишне. Поэтому щёлкнув правом кнопкой мыши в поле, например, "Имя" мной были выбраны нужные мне столбцы, а их ширина в дальней шем была подкорректирована через передвижение границ:
Следует отметить, что если ранее некоторые настройки qBittorrent содержались в папке ~/.local/share/data/qBittrorrent , то теперь их следует искать в папке ~/.local/share/qBittrorrent
Конфигурационные файлы расположены в ~/.config/qBittorrent
четверг, 14 октября 2021 г.
Syncthing – синхронизация файлов и папок между устройствами в ЛВС и через Интернет
Как пишет Википедия, Syncthing – приложение, позволяющее синхронизировать файлы между несколькими устройствами. Присутствует поддержка сохранения последовательных версий файла по нескольким алгоритмам, включая пользовательский, что позволяет использовать Syncthing также для целей резервного копирования, хотя это и не рекомендуется.
Толчком для создания приложения сослужил инструмент синхронизации BitTorrent Sync. Разработчик изначально планировал раскрыть исходный код программы под свободной лицензией, но впоследствии код открыт не был. Для open source сообщества это послужило мотивацией к написанию открытой альтернативы – Syncthing под лицензией MIT.
Первая попытка использования данного инструмента была мной предпринята в 2020 году, однако тот "штурм" у меня не увенчался успехом. И только через год хватило терпения и усидчивости разобраться с настройкой и использованием данного программного продукта.
Так как настройка с первого раза может показаться немного запутанной, то в данной публикации предпринята попытка пошагового объяснения процесса настройки синхронизаций. Если изображение слишком маленькое, то щёлкните по нему для его увеличения. Весь "разбор полётов" разбит на условные блоки информации:
– установка Syncthing;
– имя устройства;
– другие (удалённые) устройства;
– назначение папок для синхронизации;
– перенос папки Default Folder;
– syncthing на Windows;
– предоставление новой папки в доступ другому устройству;
– наблюдение (мониторинг) за процессами синхронизаций;
– автостарт и ручной запуск;
– проверка синхронизации через Интернет;
– некоторые заключительные замечания;
– безопасность.
Установка Syncthing
Установку Syncthing можно осуществить на на компьютеры (ноутбуки), так и на мобильные устройства. Скачивание ПО производится с официального сайта. Поскольку Syncthing у меня используется на компьютерах под управлением Linux Mint, то установка была осуществлена посредством последовательного выполнения трёх терминальных команд:
sudo curl -s -o /usr/share/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg
echo "deb [signed-by=/usr/share/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt updtae && sudo apt install -y syncthing
После установки в разделе "Интернет" главного меню появилось два пункта: Start Syncthing и Syncthing Web GUI, первый из которых производит собственно запуск программы, а второй является панелью управления и настроек Syncthing через браузер.
На некоторых ресурсах предлагается настроить автоматический запуск Syncthing через службы, но мной было принято решение запускать его командой, отрабатываемой в процессе работы сценария запуска различного ПО при входе в сеанс. В принципе, команду запуска Syncthing можно прописать в автозагрузку:
/usr/bin/syncthing serve --no-browser --logfile=default
Примечание. logfile можно указать свой, например при запуске через sh
$log=/home/minter/Reports/$(date '+%d').syncthing.txt
/usr/bin/syncthing serve --no-browser --logfile=$log
В приводимом примере лог-файл в течение месяца каждый день будет новым.
Имя устройства
В правом столбце панели управления отображены сведения о Вашем устройстве. По умолчанию имя устройства совпадает с именем компьютера:
Если оно не устраивает, то его можно изменить, обратившись к меню "Действия – Настройки" в правом верхнем углу
Также обратите внимание на секцию "Подключения", в которой можно задать ограничения входящей и исходящей скоростей, а также снять галочки в неиспользуемых возможностях. По умолчанию всё включено, а скорость не ограничена:
Так как планируется осуществлять синхронизацию между компьютерами, то рекомендуется узнать свой ID, чтобы затем передать его другому устройству (Показать ID):
Если компьютеры расположены в пределах адресного пространства локальной сети, то ID другого компьютера может быть предложено автоматически в процессе сетевого обнаружения:
Нажмите на кнопку "Добавить удалённое устройство" и кликните по ID того устройства, которое будет Вам показано или какое Вы выберите:
Как только ID выбранного устройства будет автоматически внесено в строку ID устройства, нажмите кнопку "Сохранить" (синего цвета).
Пример с несколькими устройствами в локальной сети:
В процессе добавления устройства можно изменить параметры "Предоставление доступа"
и ограничения скоростей для добавляемого узла в секции "Дополнительно" (справа).
Чтобы после добавления устройства оно не высвечивалось в виде первых символов ID назначьте при добавлении ему имя
и после его добавления оно будет отображаться с указанным именем:
Устройство просто добавлено, но в процессе синхронизаций не используется.
Назначение папок для синхронизации
По умолчанию на компьютере создаётся папка Sync, которая в панели управления отображается как Default Folder:
Попробуем её использовать для синхронизации между компьютерами H-4 и H-8.
В панели управления компьютером H-4 нажимаем по удалённому устройству H-8 и получаем подробную информацию (начальные символы реального ID затёрты):
Нажимаем кнопку "Редактировать", находим в секции "Предоставление доступа" Default Folder и ставим в поле галочку:
Видим, что:
В свою очередь, в панели управления компьютером H-8 видим запрос, который необходимо утвердить, игнорировать или отклонить. Выбираем "Предоставить доступ":
После чего помещаем в папку Sync какой-либо маленький файл для проверки. Должно получиться:
Теперь на каком-либо из компьютеров удалите файл, помещённый в папку Sync для проверки. На втором компьютере он также должен исчезнуть.
Теперь узлы H-4 и H-8 используют свои папки Sync (Default Folder) для взаимной синхронизации.
В папках синхронизации автоматически создаются папки .stfolder, в составе которой будет расположен файл вида syncthing-folder-...txt, в котором содержится информация о значении Folder ID и времени создания. Например, файл syncthing-folder-ba9385.txt имеет содержание:
# This directory is a Syncthing folder marker.
# Do not delete.
folderID: q2ehx-jyra2
created: 2024-06-14T13:50:33+03:00
Значение folderID можно увидеть через панель управления, вызвав на интересующей папке "Редактировать":
Перенос папки Default Folder
А что делать, если возникла необходимость перенести используемую для синхронизации папку Sync, прописанную в приложении как Default Folder, в другое место?
Щелкните в панели управления по Default Folder и нажмите на кнопку "Редактировать".
Удалите существующую папку кнопкой "Удалить", а затем создайте папку, ярлык для которой будет Default Folder, ID папки – default, а местоположение укажите то, которое нужно (при этом папка Sync в указываемом месте должна присутствовать), например /home/minter/Data/Sync:
Проверьте сохранилось ли совместное использование и осуществляется ли синхронизация:
Syncthing на Windows
Тестирование syncthing на Windows осуществлялось на установленной на виртуальной машине ОС Windows 7. Для Windows достаточно скачать и установить программу SyncTrayzor.
✔ Перед установкой мне потребовалось скачать и установить Microsft.NET 4.62 Про конкретную версию NET не скажу, так как на виртуальной Windows у меня была установлена только версия 3.5 Если необходима будет конкретная версия NET, отсутствующая в системе, то установщик об этом уведомит.
После установки в главном меню будут записи:
По нажатию SyncTrazor будет запущен браузер с интерфейсом управления и мониторинга программой. При этом сама программа прописывает себя в автозагрузку (через реестр) с командой запуска "C:\Program Files\SyncTrazor\SyncTrazor.exe" -minimized
Индикация работы программы отображается значком в системном лотке (трее).
В диспетчере задач работа syncthing отображается как
Предоставление новой папки в доступ другому устройству
В описываемом примере компьютер с ОС Linux предоставляет папку для синхронизации с Windows. Нажмите кнопку "+ Добавить папку". По умолчанию при создании новой папки syncthing генерирует её случайное наименование (две группы по 5 символов, разделённые через дефис) без указания ярлыка.
Чтобы избежать своего рода путаницы, мной было указано "вменяемое" имя папки, а также указан для неё ярлык, который совпадал с именем новой папки.
Среди устройств, которым она будет доступна, было указано устройство на Windows, которому было задано имя H-5.
На Windows точно также необходимо было добавить устройство Linux и принять приглашение для папки. Обратите внимание, что по умолчанию путь к папке был указан точно такой же как и для системы Linux, то есть "папка профиля пользователя – папка для syncthing":
В синхронизируемых папках как на Linux, так и на Windows, автоматически была создана скрытая папка .stfolder
ID папки можно не изменять, а изменить только Ярлык папки. ID папки является одним и тем же для всех узлов Syncthing, использующих данную папку. В панели управления Syncthing папки всегда будут отображаться по имени ярлыка. Пример:
Наблюдение (мониторинг) за процессами синхронизаций
Процесс синхронизации показан в представленной ниже серии снимков экрана одного из узлов при синхронизации порции данных объёмом в 22 ГБ. Наблюдение осуществлялось как на синхронизируемой папке (Default Folder), так и на самом устройстве. При этом наблюдаемое устройство H-3 является получателем, а устройство H-4 источником.
В ЛВС при наблюдении за синхронизируемой папкой изменяющиеся показания в ГБ могут ввести в заблуждение. Эти цифры сначала имеют тенденцию к росту, а затем начинают постепенно уменьшаться. Насколько мне было понятно, данные показания отображают сколько ещё данных нужно синхронизировать в конкретный момент времени в пределах ближайших запланированных реплик.
Автостарт и ручной запуск
После установки в Linux автостарт Syncthing не назначается. В Windows при использовании SyncTrayzor автостарт Syncthing назначается. По умолчанию запуск Syncthing в Linux производится через кнопку "Start Syncthing" меню "Интернет". Если необходим запуск Syncthing при старте системы, то в параметрах системы (Автозагрузка) создайте соответствующую запись. В строке "Команда" введите
Число секунд назначайте на своё усмотрение.
Проверка синхронизаций через Интернет
Для осуществления данной операции через два маршрутизатора было создано два канала соединения с провайдером под различными учётными записями соединения с Интернет. При этом подключения различались по тарифным планам: 100/50 и 10/5 (Мегабит в секунду).
Взаимодействующие через Интернет узлы понимают друг друга через их ID. Чтобы узнать ID своего устройства зайдите в панель управления http://127.0.0.1:8384 и вызовите в меню "Действия – Показать ID". ID вашего устройства будет отображено :
Записи о взаимодействующих устройствах должны присутствовать в каждом из устройств. Если данное устройство отсутствует, то при приглашении в папку другого устройства Syncthing выдаст запросы на добавление устройства и добавление папки данного устройства.
Обратите внимание на то, что на верхнем рисунке указано "на 5.9.16.38:22067". Другое устройство хочет подключиться по порту 22067 с адреса 5.9.16.38 Указанный IP соответствует хосту g3la.de, а диапазон IP 5.9.16.32 – 5.9.16.63 принадлежит сети немецкого провайдера. У вас IP будет, скорее всего, другой. Данные IP являются адресами общедоступных серверов глобального обнаружения Syncthing, через которые определяются маршруты от одного узла Syncthing к другому.
В процессе наблюдения за синхронизацией тестового файла размером в 2,5 ГБ скорость передачи данных на передающем компьютере (H-4) и скорость приёма данных на принимающем компьютере (H-2), другими словами скорость синхронизации – соответствовала тарифному плану второго подключения к Интернет (10/5).
При включении отображения скрытых элементов общей папки (HEDY) синхронизируемый файл был отображён файлом с расширением tmp:
Некоторые заключительные замечания
При необходимости постоянного обмена синхронизируемыми данными Syncthing показал себя очень хорошо, при том что максимум зафиксированного расхода оперативной памяти у него составил порядка 80 МБ, а в режиме ожидания может не превысить 34 МБ.
И если ранее для передачи больших порций данных в ЛВС мной использовались FTP, SFTP (ssh) или Warpinator, то в настоящий момент имеется мнение, что данную задачу следует возложить на Syncthing, а использовавшиеся ранее способы оставить для случаев, когда передача или получение данных через Syncthing затруднено по причине недостаточного свободного дискового пространства на каком-либо из узлов сети.
Все настройки, производимые через браузер, записываются в файл config.xml, расположенный в скрытом каталоге ~/.config/syncthing Если в результате произведённых действий изменений получилось вообще неизвестно что (запутался, затупил и т.д. и т.п.), то, теоретически, можно остановить syncthing, удалить файл конфигурации и запустить syncthing снова. В Linux остановить syncthing можно командой
killall -TERM syncthing
Кардинальным решением вопроса, который применялся мной на этапе набития шишек, является полное удаление каталога настроек syncthing командой
rm -fR ~/.config/syncthing (rm -fR ~/.local/state/syncthing см. "Примечания" ниже)
или через менеджер файлов при включении отображения скрытых файлов. При этом при следующем запуске syncthing у вас будет совершенно новый экземпляр настроек с другим ID устройства. Поэтому если вы с кем-то уже обмениваетесь данными, то поставьте его об этом в известность и предоставьте ему новый ID своего устройства.
В Linux Mint 21.3 расположение конфигурационного файла config.xml поменялось с ~/.config/syncthing на ~/.local/state/syncthing
Если в процессе редактирования файла config.xml расположение какой-либо папки было изменено и сама папка перемещена на новое место, то синхронизация может быть остановлена, а в браузере можно увидеть предупреждение (пример):
2024-01-19 22:28:48: Error on folder "Books-00" (resru-hjgnk): folder marker missing (this indicates potential data loss, search docs/forum to get information about how to proceed)
Это происходит по причине отсутствия в перемещённой папке скрытого каталога .stfolder Создайте его вручную и перезапустите Syncthing.
Иногда необходимо исключить из синхронизации каких-либо файлов (или папок). Читайте пример здесь.
Безопасность
Безопасность является одной из основных целей проекта. Это означает, что злоумышленник не должен иметь возможности присоединиться к кластеру без приглашения, и не должно быть возможности извлечь личную информацию из перехваченного трафика. В настоящее время это реализовано следующим образом.
Весь трафик между устройствами защищен протоколом TLS. Чтобы предотвратить присоединение к кластеру незваных устройств, при установлении соединения отпечаток сертификата каждого устройства сравнивается с предварительно установленным списком допустимых устройств. Отпечаток вычисляется как хэш SHA256 сертификата и отображается в удобной для пользователя кодировке, называемой идентификатором устройства (Device ID).
Входящие запросы на данные файлов проверяются в той степени, в какой запрашиваемое имя файла должно существовать в локальном индексе и глобальной модели.