🔧 1. Установка Syncthing на сервер (от пользователя kvictor)
sudo apt update sudo apt install syncthing
Добавим автозапуск:
sudo loginctl enable-linger kvictor systemctl --user enable syncthing systemctl --user start syncthing
Проверь, что Syncthing работает:
systemctl --user status syncthing
Открой интерфейс Syncthing на сервере:
http://<IP_сервера>:8384
📱 2. На каждом телефоне (Android)
- Установи Syncthing Android.
- При первом запуске:
- Включи "разрешить работу в фоне".
- Разреши доступ к файловой системе.
- Создай папку для синхронизации:
- Название: Phone1Photos (или Phone2Photos на втором телефоне).
- Путь:
- swift/storage/emulated/0/DCIM
- КопироватьРедактировать
- Режим: Send Only.
- Добавь устройство сервера (отсканируй QR или введи Device ID).
- Прими запрос на добавление устройства на сервере (см. браузер, вкладка Syncthing).
- На сервере:
- Прими папку и укажи путь, например:и
- swift/srv/common/photo/incoming/phone2
- КопироватьРедактировать
- swift/srv/common/photo/incoming/phone1
- КопироватьРедактировать
📁 3. Настройка структуры папок
Создай нужные директории:
sudo mkdir -p /srv/common/photo/incoming/phone1
sudo mkdir -p /srv/common/photo/incoming/phone2
sudo mkdir -p /srv/common/photo
sudo chown -R kvictor:kvictor /srv/common/photo
🧠 4. Скрипт сортировки по году
Создай файл скрипта:
sudo nano /usr/local/bin/photo_sorter.sh
Содержимое:
#!/bin/bash
SRC_BASE="/srv/common/photo/incoming"
DST_BASE="/srv/common/photo"
find "$SRC_BASE" -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' -o -iname '*.mp4' -o -iname '*.mov' \) | while read -r file; do
# Определим год по дате файла
year=$(date -r "$file" +"%Y")
# Папка назначения
dst="$DST_BASE/$year"
mkdir -p "$dst"
# Переместим файл, если он ещё не там
if [ "$(dirname "$file")" != "$dst" ]; then
mv -n "$file" "$dst/"
fi
done
Сделай его исполняемым:
sudo chmod +x /usr/local/bin/photo_sorter.sh
⏱ 5. Cron-задача для автосортировки
Открой крон для пользователя kvictor:
crontab -e
Добавь строку:
*/10 * * * * /usr/local/bin/photo_sorter.sh
✅ Готово!
📦 Пример итоговой структуры:
/srv/common/photo/
├── 2024/
│ ├── IMG_1234.jpg
├── 2025/
│ ├── IMG_9876.jpg
├── incoming/
│ ├── phone1/
│ └── phone2/
Comments powered by CComment