Можно ли развернуть локальный iso-файл на жестком диске на удаленной машине?

335
RickwhoPrograms

поэтому у меня есть ISO, который я создал, и это примерно 197 ГБ. Я сжал файл в iso.gz и сохранил его на моем локальном компьютере. Теперь я хотел бы попытаться развернуть этот iso на удаленной машине. Теперь для более подробных порций:

Я использую действующий USB RHEL 7.5, который подключен к удаленному устройству, и я ввожу следующую команду для просмотра дисков, установленных в настоящий момент в системе:

Fdisk -l 

который возвращает мне, что желаемый диск (мой целевой диск 1 ТБ ) является / dev / sda

Я попытался выполнить следующую команду безуспешно, и я не уверен, является ли это правильной последовательностью или возможно ли удаленное выполнение zcat:

zcat myisoname.iso.gz | ssh root@xxx.xxx.xxx.xxx | /dev/sda 

при выдаче вышеуказанной команды zcat консоль на мгновение останавливается, а затем начинает печатать случайные буквы и символы. Любая помощь будет принята с благодарностью.

0
Я думаю, что вторая труба происходит на вашей локальной машине. Вы должны процитировать удаленную команду. Что-то вроде `zcat myisoname.iso.gz | ssh root@xxx.xxx.xxx.xxx 'dd of = / dev / sda'` должно работать. fra-san 5 лет назад 1
Я вижу, и обычно с zcat, когда вы делаете это локально, вам нужно использовать перенаправление ">", нужно ли мне использовать это вместо 'dd of = / dev / sda'? или в этом случае я предполагаю, что команда dd просто направляет вывод? RickwhoPrograms 5 лет назад 0
Я думаю, что `ssh root@xxx.xxx.xxx.xxx 'cat -> / dev / sda'` тоже будет работать. fra-san 5 лет назад 1
Спасибо за вашу помощь @ fra-san, если вы хотите оставить свой комментарий в качестве ответа, и я приму его, виновником этого были кавычки! RickwhoPrograms 5 лет назад 0
Мне не очень нравится отвечать после того, как проблема была решена в комментариях - это похоже на просто поиск репутации - но ... на самом деле комментарии в конечном итоге исчезнут, и принятый ответ поможет другим лучше понять вопрос. fra-san 5 лет назад 0

1 ответ на вопрос

1
fra-san

В принципе, то, что вы пытаетесь сделать, вполне правдоподобно.
Проблема с вашей командой в том, что второй канал происходит на вашем локальном компьютере. Команды, являющиеся аргументами, sshдолжны быть заключены в кавычки.

(Особое внимание следует уделить специальным символам, таким как $: если раскрытие и / или подстановка команд должны выполняться удаленно, эти специальные символы должны быть экранированы или, альтернативно, удаленная команда заключена в одинарные кавычки. См., Для справки, QUOTINGраздел вman bash )

Что вам, вероятно, нужно, это что-то вроде

$ zcat myisoname.iso.gz | ssh root@xxx.xxx.xxx.xxx 'dd of=/dev/sda' 

Здесь ddпросто возможность. Вы должны быть в состоянии использовать канал в файл тоже, как в

$ ssh root@xxx.xxx.xxx.xxx 'cat - >/dev/sda' 

Похожие вопросы