Самый простой и безопасный вариант скопировать файл с одного сервера на другой – это использовать команду scp:
scp file.txt user@host:/path/file.txt
## копирование локального файла на сервер
Для того, чтобы скопировать файл с сервера на локальный комп:
scp user@host:/path/file.txt file.txt
## то же самое, только наоборот
Для авторизации лучше использовать [https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys-on-ubuntu-1604 ключи]:
scp **-i ~/.ssh/id_rsa.pub** file.txt user@host:/path/file.txt
## безопасное копирование, без пароля
Чтобы скопировать данные с одного удаленного сервера на другой:
scp user@host_1:/path/file.txt user@host_2:/path/file.txt
## При этом данные будут переданы напрямую с сервера на сервер
В некоторых случаях, когда между серверами/компьютерами не настроена авторизация, использование scp может оказаться неудобным. Ну долго настраивать, а это только один разик. Такое часто бывает, например, при необходимости делать разовый обмен файлами между серверами:
Мы юзаем bashupload.com. Сервис позволяет быстро загрузить файлы с командной строки и выгрузить любым удобным способом:
curl https://bashupload.com/**name.txt** --data-binary @**file.txt**
## загрузка файла с командной строки на bashupload.com
name.txt – это имя файла, под которым будет доступен загруженный файл на сервер. file.txt – это имя локального файла, который нужно загрузить.
После загрузки, в консоли видно путь и команду для скачивания:
Uploaded 1 file, 23 bytes wget https://bashupload.com/iq7Kv/name.txt
## Скачать можно сразу после загрузки, в т.ч. в браузере или на мобильном устройстве
Файл хранится на сервере 7 дней, и его можно качать неограниченное количество раз. В случае, если загружаемые данные критичны к безопасности, файлы стоит шифровать перед загрузкой:
**gpg -ac -o- file.txt** | curl https://bashupload.com/encrypted.txt --data-binary @-
## После скачивания, файл нужно будет расшифровать тем же методом
Кроме этого, в сервисе есть две удобные возможности:
В случае, если вы консолидируете однотипные файлы (например, логи) с нескольких серверов, достаточно загрузить файл с первого с заголовком feed: 1:
curl "https://bashupload.com/access.log" **-H "feed: 1"** --data-binary @access.log
## инициализация дописывания файла
А после – использовать инструкцию на остальных серверах для дописывания файла:
Fed 39945 bytes to access.log on "xDRD" key Total feed size 39945 bytes wget https://bashupload.com/xDRD/access.log **To continue feeding more data to this file use: curl "https://bashupload.com/access.log" -H "feed-key: xDRD" --data-binary @access.log**
## Команда для консолидации загружаемых файлов в один
В любой момент времени можно будет скачать консолидированный файл:
wget https://bashupload.com/xDRD/access.log
## Скачивание консолидированного файла
Если у вас, как и у нас, бывает необходимость делать различные выгрузки для команд (например, выгрузка пользователей для маркетинга по определенному критерию) – вам приходилось изобретать метод доставки и обновления этих данных. Мы используем связку bashupload.com + Google Spreadsheets для подобных задачи.
Чтобы загрузить обновляемый файл, необходимо добавить заголовок rewrite: 1 при загрузке:
curl https://bashupload.com/data.csv --data-binary @data.csv **-H "rewrite: 1"**
## Заголовок, открывающий режим перезаписи загружаемого файла
Чтобы перезаписать файл с новым содержимым, нужно использовать инструкцию из результата загрузки:
curl "https://bashupload.com/**CpmjE/data.csv**" **-H "rewrite: 1"** --data-binary @data.csv
## Последующая перезапись файла
Как видно, для перезаписи указывается путь с ключом. Ну и этот файл постоянно доступен для загрузки и может быть использован в [https://support.google.com/docs/answer/3093335?hl=en IMPORTDATA для Google Spreadsheets].
Зарепортить баги и закоментить улучшения [https://github.com/golotyuk/bashupload/issues можно в гитхабе]. Больше инфы по использованию [https://github.com/golotyuk/bashupload/blob/master/README.md также там].
<h2>TL;DR
Используйте временное хранилище [https://bashupload.com/ bashupload.com], когда неудобно или нельзя использовать scp.
Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…
Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…
Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…
В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…
Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…
Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…