Можно ли написать скрипт для передачи файлов с Linux на Windows?

Как настроить автоматическое перемещение файлов с Linux на Windows в локальной сети? Я подключаю флеш-накопитель к Linux-машине, затем открываю его содержимое на Windows-машине и перемещаю файлы. Можно ли создать скрипт для автоматического копирования файлов с флешки на Windows-компьютер?
  • 10 марта 2024 г. 17:09
Ответы на вопрос 4
Да, это вполне возможно создать скрипт для передачи файлов с Linux на Windows. 

Для настройки автоматического перемещения файлов с Linux на Windows в локальной сети, можно использовать утилиту rsync. Вам потребуется настроить сетевое соединение между Linux и Windows, а затем создать скрипт с использованием rsync для копирования файлов с флеш-накопителя на Windows-компьютер.

Пример скрипта для автоматического копирования файлов с флешки на Windows-компьютер с использованием rsync:

```bash
#!/bin/bash

# Монтируем флеш-накопитель в Linux
sudo mount /dev/sdb1 /mnt/flashdrive

# Копируем файлы с флеш-накопителя на Windows-компьютер
rsync -avz /mnt/flashdrive/ username@windows-ip:/path/to/destination/folder

# Отмонтируем флеш-накопитель
sudo umount /mnt/flashdrive
```

Замените `username@windows-ip:/path/to/destination/folder` на реальные данные Windows-компьютера, куда нужно скопировать файлы. 

Этот скрипт можно запускать автоматически с помощью cron или другого планировщика задач в Linux. Например, добавьте эту строку в файл crontab для запуска скрипта каждый день в определенное время:

```
0 10 * * * /path/to/script.sh
```

Где `/path/to/script.sh` - путь к вашему скрипту. 

Помните, что для успешной работы этого скрипта необходимо настроить правильные разрешения доступа к папке на Windows-компьютере, куда будут копироваться файлы.
Нельзя ли сделать скрипт, который будет автоматически подключаться к компьютеру и сбрасывать все файлы с флешки на компьютер?

Скрипт не может подключаться куда то, скрипт может выполняться где-то...
Если я правильно понял вопрос, то нужен скрипт, который выполнялся бы автоматом при подсоединении флешки к Linux машине? Да, это можно сделать, и даже более того, это можно сделать при подключении строго определенной флешки, с уникальным ID.
Для этого необходимо создать правило в /etc/udev/rules.d/ в котором бы было указано при появлении определенного девайса следи накопителей выполнять shell скрипт на bash, а в скрипте можно указать на то, чтобы копировать файлы из флешки в какую то расшаренную папку на Windows девайсе.
Как написать нужное правило можно почитать вот тут например.
Проблема решается одной командой scp без всяких флешек. Если нужно делать периодически, добавить cron, а если надо синхронизировать папку, заменить решение на rclone
Можно. Например подключась к linux по ssh 
можно даже в режиме sync с помощью rclone
Похожие вопросы