[1181]Передача файлов и папок между двумя серверами Linux
[1181]Передача файлов и папок между двумя серверами Linux

При ежедневной аренде серверов иногда возникает необходимость перенести файлы с одного сервера на другой. Вот четыре способа передачи файлов между серверами Linux.

scp

[Преимущества] Простой, удобный, безопасный и надежный поддерживает параметры ограничения скорости; [Недостатки] Не поддерживает исключение каталогов. [Использование] SCP — это безопасная копия, которая используется для удаленного копирования файлов. Передача данных использует ssh и использует тот же метод аутентификации, что и ssh, обеспечивая ту же гарантию безопасности.

Формат команды: scp [параметр] <Исходный адрес(имя пользователя@IPадресили[Хозяинимя)>:<документпуть> <глазизадрес(имя пользователя @IP адресили Хозяинимя)>:<документпуть>

Предположим, что IP-адрес удаленного сервера — 192.168.1.100.

1) Скопируйте файлы с сервера на локальный:
Язык кода:javascript
копировать
scp root@192.168.1.100:/data/test.txt /home/myfile/
  • root@192.168.1.100 :rootдаглаз标сервер(Вам нужно скопироватьдокументизсервер)изимя пользователя,192.168.1.100даIPадрес,Следите внимательноиз : не забывай
  • Путь 1: /data/test.txt Это адрес документа на целевом сервере, который вы хотите скопировать, после которого следует пробел.
  • Путь 2: /home/myfile/ Это адрес, по которому документ получен локально.
2) Скопируйте файл на локальный компьютер и переименуйте:
Язык кода:javascript
копировать
scp /home/myfile/test.txt root@192.168.1.100:/data/testxxx.txt
3) Копируем папку с сервера на локальную:
Язык кода:javascript
копировать
scp -r root@192.168.1.100:/data/ /home/myfile/

Просто добавьте впереди -r Вот и все, можете скопировать всю папку.

4) Скопируйте файлы с локального на сервер (не включая саму папку):
Язык кода:javascript
копировать
scp /home/myfile/test.txt  root@192.168.1.100:/data/

scp /home/myfile/*  root@192.168.1.100:/data/
5) Скопируйте папку с локальной на сервер** (включая саму папку)**:
Язык кода:javascript
копировать
scp -r /home/myfile/ root@192.168.1.100:/data/

rcp

Целевому хосту необходимо заранее включить функцию rcp и установить разрешения rcp: добавьте исходный хост в список доверенных хостов, иначе вы не сможете использовать rcp на исходном хосте для удаленного копирования файлов на целевой хост.

rcpЧастично взято из:команда rcp

rcp означает «удаленный file копия» (удалённое копирование документа). Эта команда используется для копирования документа.команда между компьютерами. rcpЕсть два формата。Первый формат используется длядокументприезжатьдокументизкопировать;Второй формат используется длядокументилиглаз录копироватьприезжать另一个глаз录середина。

1.Формат команды:rcp [параметр] [исходный файл] [файл назначения]

2. Функция команды: Команда rcp используется для удаленного копирования файлов или каталогов. Если одновременно указаны два или более файлов или каталогов, а конечным пунктом назначения является существующий каталог, в этот каталог будут скопированы все ранее указанные файлы или каталоги.

3. Параметры команды: Смысл каждого варианта:

  • -r:рекурсияземля Пучок源глаз录серединаиз所有内容копироватьприезжатьглазизглаз录середина。Чтобы использовать Для этого варианта целью должно быть Оглавление.
  • -p:пытаюсь сохранить исходникдокументизвремя модификацииимодель,пренебрегатьumask。
  • -k:проситьrcpполучатьсуществоватьв пределах отведенной территорииизудаленный ХозяинизKerberos разрешение вместо получения разрешения Kerberos для удаленного Хозяина в зоне удаленного Хозяина, определенной krb_relmofhost⑶.
  • -x:для передачииз Все данные открытыDESшифрование。Это влияет на время ответаиCPUИспользование,Но это может повысить безопасность. Если путь, указанный в имени документа, не является полным именем пути,Тогда этот путь интерпретируется как относительный к домашней странице пользователя с тем же именем на удаленном компьютере, если имя удаленного пользователя не указано.,Просто используйте текущее имя пользователя. Если путь к удаленному компьютеру содержит специальные символы оболочки,Нужно использовать обратную косую черту(\\)、двойные кавычки()илиодинарная кавычка()кронштейн,Позволяет удаленно интерпретировать все метасимволы оболочки. Следует отметить, что,rcp не запрашивает пароль,Он выполняет копирование с помощью команды rsh.

directory каждыйдокументилиглаз录параметр Обадаудаленныйдокументимя ХОРОШОда本землядокументимя。удаленныйдокументимя Имеет следующую форму:rname@rhost:path,где rname — имя удаленного пользователя,rhost — имя удаленного компьютера,путь — это путь к этому документу.

4. Примеры использования: Чтобы использовать rcp, должны быть выполнены следующие условия: Если в системе есть /etc/hosts файл, системный администратор должен убедиться, что файл содержит запись об удаленном хосте, с которым осуществляется связь. /etc/hosts Файл содержит строку текста, содержащую следующую информацию для каждой удаленной системы:

Язык кода:javascript
копировать
internet_address   official_name   alias

Например:

Язык кода:javascript
копировать
9.186.10.***  webserver1.com.58.webserver

.rhosts документ .rhosts Документ находится в домашнем каталоге удаленной системы и содержит имя и локальный логин локальной системы.

Например, удаленная система .rhosts документсерединаизпредмет возможенда:webserver1 root

в,webserver1 да本землясистемаизимясказать,root да本земля登录имя。так,webserver1 на root может быть включен в .rhosts документизудаленныйсистемапоездка туда и обратнокопироватьдокумент。

Процесс настройки: эффективен только для пользователя root

1. с обеих сторонrootСоздано в корневом каталоге пользователя.rhostsдокумент,и Воляобе стороныизhostnameдобавить.существовать Это следует сделать дос обеих сторониз /etc/hostsдокументсередина Присоединяйтесь друг к другуизIPиhostname

2. ПучокrshСлужба запускается,redhatпо умолчаниюда Не запускаетсяиз。

метод:выполнить сntsysvЗаказ,существоватьrshИспользуйте пробел перед опцией, чтобы выбрать ее.,ОК, чтобы выйти。а затем выполнить:service xinetd restartВот и все。

3. приезжать/etc/pam.d/в каталоге,Пучокrshдокументсерединаизauth required /lib/security/pam_securetty.soИспользуйте одну строку#Комментировать Вот и все。(Просто закомментируйте эту строку,для входа в систему как пользователь root)

Использование команды:

Волядокументкопироватьприезжатьудаленныйсистема Чтобы преобразовать документацию из локальной системы в удаленную систему, используйте следующий заказ:

Язык кода:javascript
копировать
rcp   local_file   remote_hostname:remote_fileEnter

Обратите внимание: если нет local_file,Помимо локального имени документа,Также необходимо предоставить относительныепуть(Начать с текущего каталога)илиабсолютныйпутьимя(с/ начинать). только если надеюсь Воляremote_hostnameнаremote_fileпомещатьприезжать其他глаз录(удаленный主глаз录除外)в следующий раз,Вам необходимо указать полный (абсолютный) путь к нему.

Пример использования 1: Скопируйте test1 из текущего каталога в удаленную систему с именем webserver1. Заказ:

Язык кода:javascript
копировать
rcp  test1   webserver1:/home/root/test3

проиллюстрировать: В этом случае test1 Скопировано в удаленный подкаталог. В test3 имя по-прежнему test1 . Если указано только имя удаленного хоста, rcp поставлю test1 Скопировано в удаленный домашний каталог, имя по-прежнему test1 。 Вы также можете включить имя документа в целевой каталог. Например, измените документировать на что-то под названием В системе веб-сервера1:

Язык кода:javascript
копировать
rcp test1 webserver1:/home/root/test3

В этом случае скопируйте test1 в корень удаленного каталога и назовите его test3.

Пример использования 2: Из удаленной системыкопировать документ: Чтобы скопировать документ из удаленной системы в локальный каталог. Заказ:

Язык кода:javascript
копировать
rcp remote_hostname:remote_file local_fileEnter

Пример использования: 3: Скопируйте test2 на веб-сервере удаленной системы 1 в текущий каталог:

Заказ:

Язык кода:javascript
копировать
rcp webserver1:/home/root/test2 .Enter

проиллюстрировать: точка (.) Это сокращение от «текущий каталог». В этом случае удаленный каталог test2 копируется в текущий каталог, а имя по-прежнему остается test2 。 Если вы хотите использовать новое имя для копирования документа, укажите имя целевого документа. Если вы хотите test2 Чтобы скопировать в другой каталог локальной системы, используйте следующие абсолютные или относительные пути: rcp webserver1:/home/root/test2 otherdir/ Enter или ВОЗ,Если вы хотите переместить документкопирование в другой каталог с другим именем документа:

Язык кода:javascript
копировать
rcp webserver1:/home/root/test2 otherdir/otherfile Enter

Пример использования 4: копировать в удаленную систему: Чтобы скопировать локальный каталог и его подкаталог с документами в удаленную систему, также используйте опцию rcp и -r (рекурсивная).

Заказ:

Язык кода:javascript
копировать
rcp –r   local_dir   remote_hostname:remote_dir Enter

проиллюстрировать: Если в текущем каталоге его нет local_dir, помимо имени локального каталога, вам также необходимо указать относительный путь (начиная с текущего каталога) или абсолютный путь (начиная с текущего каталога). / Каталог верхнего уровня начинать). Кроме того, если его нет. удаленный_каталог, затем remote_dir Потребуется относительный путь (начиная с домашнего каталога) или абсолютный путь (начиная с / начинать).

Используйте пример 5: Чтобы скопировать весь подкаталог с именем work в каталог с именем Products в домашнем каталоге на удаленном компьютере веб-сервера1, введите следующую команду:

Язык кода:javascript
копировать
rcp –r work  webserver1:/home/root/products Enter

Эта команда находится в webserver1:/home/root/products Создайте файл с именем work каталог и все его содержимое (при условии,что /home/root/products уже существует в веб-сервер1середина). В этом примере предполагается, что пользователь находится в каталоге, содержащем work в локальном каталоге. В противном случае необходимо указать относительный или абсолютный путь к каталогу, например: /home/root/work

Пример использования 6: Копирование каталога из удаленной системы: Чтобы преобразовать удаленный каталог и все его подкаталоги с документами в локальный каталог, используйте следующий синтаксис: rcp и -r (рекурсивная) опция. Заказ:

Язык кода:javascript
копировать
rcp –r remote_hostname:remote_dir local_dir Enter

Чтобы скопировать удаленный каталог с именем work в текущий каталог, введите следующее:

Язык кода:javascript
копировать
rcp –r webserver1:/home/root/work .Enter

точка (.) Представляет текущий каталог. будет создан в этом каталоге work Оглавление.

wget

[Отличная точка] Просто и удобно,Поддержка исключенных каталогов,Поддержка параметров ограничения скорости [Отсутствует точка] Вы можете загрузить только документ или папку документов с удаленного компьютера на локальный, и удаленный компьютер должен поддерживать службу ftp (например, запуск proftpd имеет много параметров, и использование более сложное, чем); объект 【использование】 wgetдаодин из интернетас Мобильная загрузкадокументизспо инструментам,Поддерживает загрузку по трем наиболее распространенным протоколам TCP/IP: HTTP, HTTPS и FTP.,И может использовать HTTP-прокси.

Формат команды:

Язык кода:javascript
копировать
wget [параметр] ftp://<целевая машинаipили Хозяинимя>/<документизабсолютныйпуть>   Формат #proftpd

Пример:

Язык кода:javascript
копировать
wget ftp://192.168.0.10//home/work/source.txt    #Копируем папку документа source.txt из 192.168.0.10

wget ftp://www.myhost.com//home/work/source.txt       #использовать Хозяинимя

wget -nH -P /home/work/  ftp://www.myhost.com//home/work/source.txt

#Укажите локальный путь сохранения, используйте параметр "-P путь» или «--directory-prefix=путь»; -nH, --no-host-directories Директория Хозяин не создана

wget -r -l 0 -nH -P /home/work/ ftp://www.myhost.com//home/work/sourcedir

#рекурсия Скачайте каталог sourcedir, используйте параметр -r, параметр -l; --level=NUMBER Максимальная глубина рекурсии (inf или 0 представляет бесконечность).

wget --cut-dirs=3 -r -l 0 -nH -P /home/work/ ftp://www.myhost.com//home/work/sourcedir

#-parameter-cut-dirs=НОМЕР пренебрегать Удаленный каталог уровня NUMBER. В этом примере каталог myhostнаsourcedir сохраняется в локальном рабочем каталоге.

wget --limit-rate=200k --cut-dirs=3 -r -l 0 -nH -P /home/work/ ftp://www.myhost.com//home/work/sourcedir #-Параметр –limit-rate=RATE Ограниченный коэффициент потери загрузки

wget --limit-rate=200k --cut-dirs=3 -r -l 0 -nH -P /home/work/ -X /home/work/sourcedir/notincludedir ftp://www.myhost.com//home/work/sourcedir #Исключаем пути с помощью параметра -X

wget -q --limit-rate=200k --cut-dirs=3 -r -l 0 -nH -P /home/work/ -X /home/work/sourcedir/notincludedir ftp://www.myhost.com//home/work/sourcedir #параметр-qозначает тихомодель,Нет вывода; по умолчанию — -v.,резервный режим

rsync

[Отличная точка] Мощные функции,Операция аналогична scp,Поддержка исключенных каталогов,Поддержка параметров ограничения скорости;Также поддерживает локальныйкопировать。 【Отсутствует точка】На данный момент нет [использование] rsync — это инструмент резервного копирования зеркальных данных под unixсистемой, что видно из названия программного обеспечения — удаленный sync。этоиз Режим работыиscpисходство,Но он гораздо мощнее SCP. При использовании двойного двоеточия для разделения пути к хозяйнидокументу,это использовать rsyncсервер,Здесь нет введения.

Формат команды:

Язык кода:javascript
копировать
rsync [параметр] <Исходный адрес(имя пользователя@IPадресили Хозяинимя)>:<документпуть> <глазизадрес(имя пользователя @IP адресили Хозяинимя)>:<документпуть>

Пример:

Язык кода:javascript
копировать
rsync /home/work/source.txt work@192.168.0.10:/home/work/

#Скопируйте локальный документ source.txt в каталог на/home/work на машине 192.168.0.10.

rsync work@192.168.0.10:/home/work/source.txt /home/work/

#Скопируйте документ 192.168.0.10 машины наsource.txt в локальный каталог /home/work

rsync work@192.168.0.10:/home/work/source.txt work@192.168.0.11:/home/work/

#Скопируйте документ source.txt машины 192.168.0.10 в каталог /home/work машины 192.168.0.11

rsync -r /home/work/sourcedir work@192.168.0.10:/home/work/

#Скопируйте папку с документами и добавьте параметр -r

rsync -r /home/work/sourcedir work@www.myhost.com:/home/work/ #использовать Хозяинимя

rsync -r -v /home/work/sourcedir work@www.myhost.com:/home/work/ #Отобразить детали, добавить параметр -v

rsync -r -v --exclude sourcedir/notinclude /home/work/sourcedir work@www.myhost.com:/home/work/ #Исключаем подкаталоги

Уведомление:–excludeпозжеизпуть不能为абсолютныйпуть,Это должен быть относительный путь,В противном случае он не будет соответствовать,не будет исключено.

Ссылка: https://blog.csdn.net/weixin_44256848/article/details/126466072.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose