- Как исключить файл или папку при синхронизации в Яндекс Диске на Linux?
- Предварительная подготовка
- Добавляем исключения для синхронизации
- Если Yandex Disk Indicator не установлен?
- Подведем итоги
- Yandex disk в Linux — подключаем с автоматической синхронизацией
- Устанавливаем Yandex disk в Linux
- Подготовка к подключению второго Яндекс диска
- Теперь устанавливаем второй аккаунт Яндекс
- Команды и параметры
- Дополнительные параметры [OPTION]
Как исключить файл или папку при синхронизации в Яндекс Диске на Linux?
В версии Яндекс Диска для Windows есть возможность исключить определенные файлы и папки из процесса синхронизации и не загружать, благодаря этому, что-то ненужное на жесткий диск.
Пользователи, привыкшие к этой функции, после перехода на Linux и установки облачного хранилища пытаются найти что-то похожее, но судя по комментариям и просьбам в них, не всегда это находят. Потому ниже расскажу про то, как исключить файл или папку при синхронизации в Яндекс Диске на Linux.
Предварительная подготовка
Я исхожу из той мысли, что у вас уже установлена Linux-версия Яндекс Диска, а также GUI-дополнение к нему под названием Yandex Disk Indicator. Если нет, то посмотрите прикрепленное ниже видео, где показан и рассказан процесс установки. Для любителей текстов прикрепил также ссылку на статью.
Добавляем исключения для синхронизации
Для того, чтобы исключить файл или папку из синхронизации Яндекс Диска на Linux необходимо выполнить несколько простых шагов:
1️⃣ Кликаем по значку Yandex Disk Indicator в системном трее и выбираем пункт с настройками:
2️⃣ В открывшемся окне переходим на вкладку с настройками сервисов Яндекс Диска:
3️⃣ Нажимаем на кнопку Список каталогов исключений:
4️⃣ В появившемся окне кликаем по кнопке Добавить и после вносим необходимые для исключения файлы и папки:
5️⃣ После добавления список исключений можно изменять, добавляя новые файлы и папки, а также удаляя старые:
Если Yandex Disk Indicator не установлен?
В случае, когда у вас не установлен Yandex Disk Indicator или вы используете какой-либо другой GUI для взаимодействия с Яндекс Диском, добавить исключения можно через конфигурационный файл самого облака. С этим файлом вы, в любом случае, работали, если следовали моим рекомендациям по установке. Напомню, что он хранится по пути: $HOME/.config/yandex-disk/config.cfg
Открываем его в любом текстовом редакторе (обычном или консольном) и находим строку, которая начинается с exclude-dirs:
Это как раз и есть указание Яндекс Диску на файлы/папки для исключения. После знака равенства показан пример того, как необходимо добавлять каждый файл или папку. Естественно, если у вас одна папка или пара файлов, то внести их не составит труда. Другой вопрос, если таких объектов для исключения несколько десятков: тогда ручное внесение всех их в конфигурационный файл может показаться очень долгим и нудным занятием. Поэтому настоятельно рекомендую установить Yandex Disk Indicator, который облегчает настройку и использование Яндекс Диска на Linux.
Подведем итоги
Процесс добавления файлов и папок в исключения для синхронизации в Linux-версии клиента Яндекс Диска ничем особо не отличается от той же процедуры для клиента под Windows. Главное, установить Yandex Disk Indicator и все точно получится!
Yandex disk в Linux — подключаем с автоматической синхронизацией
Многие пользователи linux ранее не имели возможности автоматической синхронизации подключенного Yandex Disk в Linux.
На сегодняшний день такая возможность предоставлена разработчиками сервиса. Теперь можно подключить ваш Яндекс диск в виде папки и запустить постоянную автоматическую синхронизацию файлов.
В статье будет рассказано, как я настроил себе Яндекс диск в Linux с автоматической синхронизацией. Если вы хотите посмотреть или воспользоваться инструкцией от самих разработчиков то пройдите по этой ссылке.
Инструкция предлагаемая разработчиками — превосходно работает на сегодняшний день. Правда она предполагает использование только одного аккаунта Yandex disk.
Мне понадобилось подключить две папки от облачного хранилища Yandex disk.
Готового решения данного вопроса на сегодняшний день я не нашел.
Проанализировав способы подключения Yandex disk в Linux с синхронизацией, которые предлагают на различных сторонних ресурсах, я сформировал для себя рабочий вариант.
Мой способ подключения подойдет для Debian и дистрибутивов основанных на нем — Ubuntu, Linux mint и т.п.
Я использую Debian 11 и все ниже описанное проделал на нем. Все отлично работает.
Устанавливаем Yandex disk в Linux
Для начала скачаем последний deb пакет yandex disk от разработчиков на их официальном сайте тут. Выбирайте именно тот пакет который соответствует разрядности вашей операционной системе.
После скачивания deb пакета устанавливаем его с помощью утилиты Gdebi.
Можно проделать это командой из терминала, откройте терминал из папки в которую скачен deb пакет (контекстное меню по правой кнопке мышки в окне файлового менеджера) и введите команду
sudo dpkg -i Имя-скаченного-пакета.deb
Теперь нам надо произвести первоначальную настройку, подключить свой Яндекс диск.
Вводим команду в терминале
В терминале вас спросят — используете ли вы прокси сервер?
Я естественно ответил «n», я не использую его.
Потом попросят перейти по указанной ссылке и ввести, предоставленный пароль.
После того как вы введете пароль у вас попросит указать папку которую вы будете синхронизировать.
Папку нужно создать за ранее. Я указал папку в домашней директории.
И согласился с запуском синхронизации при старте системы.
На данном этапе, если у Вас всего один аккаунт Яндекс диска, настройку можно закончить.
Папка указанная для синхронизации будет автоматически синхронизироваться с вашим Яндекс диском.
Подготовка к подключению второго Яндекс диска
Если вы хотите подключить второй яндекс диск, то у вас ничего не выйдет. Вернее выйдет, вы настроите подключение точно так же, но предыдущий перестанет работать.
Будет работать только один который вы настроите последним.
Поэтому перед тем как настраивать второй яндекс диск нужно проделать следующее.
Вначале останавливаем сервис yandex-disk
Теперь нам нужно перенести файлы настроек настроенного яндекс диска в другую директорию, я просто переименовал ее в yandex-disk1
mv ~/.config/yandex-disk ~/.config/yandex-disk1
Теперь откроем файл config.cfg из переименованной папки yandex-disk1
nano ~/.config/yandex-disk1/config.cfg
И исправим путь к файлу с паролем passwd, в соответствии с тем как вы переименовали папку, а именно строка auth=….
Также можно указать другую папку для синхронизации с яндекс диском в строке dir
Папку нужно предварительно создать, если укажите другую и дать ей права на чтение и запись вашим пользователем и его группой.
Вот как это выглядит в моем случае
Естественно сохраняем сочетанием клавиш Ctrl+O и закрываем Ctrl-X
Теперь создадим юнит для systemd, сам файл
# touch /etc/systemd/system/yandex-disk.service
Откроем созданный файл командой
# nano /etc/systemd/system/yandex-disk.service
Внесем в него следующее содержимое, с учетом нашего расположения новой папки конфигурационных файлов.
Обратите внимание на строки User и Group, я указал логин и группу своего пользователя.
[Unit] Description=Yandex.Disk Requires=network.target After=network.target [Service] Type=forking User=user Group=user ExecStart=/usr/bin/yandex-disk start -c /home/user/.config/yandex-disk1/config.cfg RestartSec=1min Restart=on-failure [Install] WantedBy=multi-user.target
Естественно сохраняем сочетанием клавиш Ctrl+O и закрываем Ctrl-X
systemctl --system daemon-reload
Запустим созданную нами службу
systemctl start yandex-disk.service
systemctl status yandex-disk.service
Теперь добавим службу в автозагрузку, если все работает
systemctl enable yandex-disk.service
Теперь перезагружаем систему и проверяем работает ли синхронизация нашей папки Яндекс диска
Напоминаю, наша папка была указана по умолчанию в домашней директории ~/Yandex.Disk
Теперь устанавливаем второй аккаунт Яндекс
Настраиваем второй аккаунт простой командой, как и в первом случае
Просто указываем другой каталог синхронизации, а так как настройки предыдущего аккаунта мы перенесли в другое место и сделали запуск синхронизации через системную службу systemd — она тоже будет работать.
У меня все работает и синхронизируется одновременно два аккаунта в две разные, соответственно, папки.
Если есть, кому, что добавить или сказать, пишите в комментариях.
Команды и параметры
При вводе команды вы можете задать имя файла для хранения токена и путь к нему (FILE). Если дополнительные параметры не будут указаны, для хранения токена будет создан файл passwd в каталоге ~/.config/yandex-disk .
Вводить логин и пароль в клиенте не нужно. После вызова команды Диск предложит вам открыть определенную страницу в браузере и ввести там уникальный код.
start — запустить демон и синхронизировать все папки, кроме указанных в списке исключений exclude-dirs.
status — отобразить статус работы демона (состояние синхронизации, ошибки синхронизации, список синхронизированных файлов, общее и свободное пространство на Диске).
$ yandex-disk publish [OPTION] FILE
$ yandex-disk unpublish FILE
Дополнительные параметры [OPTION]
Указать файл конфигурации. По умолчанию используется файл config.cfg в каталоге ~/.config/yandex-disk .
Указать каталог для хранения локальной копии Диска. Если его название не было задано при выполнении начальной настройки, по умолчанию будет использоваться каталог ~/Yandex.Disk .
Указать файл с данными авторизации. По умолчанию используется файл passwd , который создается с помощью команды token или мастера начальной настройки и хранится в каталоге ~/.config/yandex-disk .
Не синхронизировать указанные каталоги. Чтобы настройка действовала всегда, каталоги необходимо добавить в список исключений exclude-dirs в файле config.cfg . Чтобы настройка действовала корректно, названия исключаемых директорий нужно перечислять через запятую, без пробелов.
Запретить изменение файлов на сервере Диска и выполнить синхронизацию только в локальной копии. При возникновении конфликтов синхронизации локальные файлы будут переименованы. Если дополнительно указан параметр —overwrite , локальные файлы будут перезаписаны.
При синхронизации с сервером разрешить перезапись изменений, сделанных в локальной копии Диска. Используется вместе с параметром —read-only .
Запустить демон без возврата управления в консоль. Чтобы вернуть управление, демон необходимо остановить, запустив в другой консоли команду yandex-disk stop или закрыв текущую консоль.
Если используется этот параметр, приложение не читает файл конфигурации. Поэтому все необходимые настройки нужно вводить через командную строку. Так, параметру exclude-dirs соответствует аргумент —exclude-dirs .
$ yandex-disk --no-daemon --dir=/root/Yandex.Disk --exclude-dirs=DO_NOT_SYNC,temp
Примечание. При использовании —no-daemon не нужно указывать команду start : в этом режиме все команды игнорируются.
Настроить прокси-сервер. Допустимые параметры: