Ваша конкретная ошибка вызвана неправильным использованием опции --execute. Если вы посмотрите на выдержку из страницы руководства ниже, вы заметите, что --execute не имеет знака равенства, указанного как часть синтаксиса, поскольку он просто выполняет всю оставшуюся часть командной строки. Примером правильного использования может быть:
gnome-terminal --execute play '/home/cjohnson/Still Alive.mp3'
ВАЖНОЕ ПРИМЕЧАНИЕ: Использование cd в любом случае является чем-то особенным. cd не похож на большинство команд - он не запускает собственный бинарный / исполняемый файл. Он интерпретируется непосредственно с помощью bash (или любой другой оболочки, которую вы используете). Поэтому попытка вызвать cd не согласуется с флагами --execute и -x (которые, как представляется, хотят непосредственно порождать дочерний процесс). Такая же проблема будет (я проверял) с другими командами, которые непосредственно обрабатываются с помощью bash, например home. Даже если он используется правильно, без знака равенства, он все равно приведет к ошибке: «Файл или каталог не найдены». Поэтому использование опции --working-directory=[DIRECTORY] - лучший способ сделать то, что вы хотите сделать.
ВАЖНОЕ ЗАМЕЧАНИЕ: Даже если это были не случай, вы все равно столкнетесь с проблемами. Проблема заключается в попытке использовать параметр --execute, когда вы действительно намереваетесь использовать значение параметра --command. В документации справочной страницы он конкретно указывает
-e, --command = STRING Выполните аргумент этой опции внутри терминала. -x, --execute Выполнить оставшуюся часть командной строки внутри терминала.(выделено мной)
Другими словами, это, вероятно, не будет анализировать его так, как вы думаете. Использование --execute предотвращает передачу каких-либо дополнительных параметров gnome-terminal.
Выдержка из одного из моих собственных сценариев, в которых я запускаю несколько команд на отдельных вкладках (имена изменены для моей конфиденциальности / безопасности): [ ! d18]
gnome-terminal --tab --command="ssh cjohnson@GLaDOS" --tab --command="ssh drattman@GLaDOS"
(Кстати, попытка использовать флаг --command с cd или home также приведет к знакомой ошибке «Нет такого файла или каталога». )
Надеюсь, это не слишком долго. Я просто стараюсь быть основательным.
Прежде всего, cp -a не подходит в этой ситуации. Вы хотите сделать CLONE раздел. Здесь мы будем использовать инструмент «dd», но есть другие, доступные с графическим интерфейсом и т. Д., Если вы предпочитаете, например, Clonezilla.
Подключите оба диска к компьютеру. Убедитесь, что новый диск имеет тот же размер или больше, чем тот раздел, который вы хотите скопировать.
Загрузите живой DVD / USB и запустите:
sudo blkid
В этом списке будут перечислены все диски и разделы на твой компьютер. Обратите внимание на раздел, который вы хотите скопировать, например. / dev / sda1 и новый пустой диск, например. / dev / sdb (no number).
Используйте dd для клонирования вашего раздела на новом диске - будьте очень осторожны, это может уничтожить ваши данные, если вы введете неправильную команду! 'if' - это (старый) раздел, который вы хотите скопировать. 'of' - новый (пустой) диск. Не перепутайте их! Например:
sudo dd if=/dev/sda1 of=/dev/sdb status=progress
Вы можете добавить bs = 4096, если хотите, чтобы он работал быстрее, но я не хочу этого делать. Теперь уходите и делайте что-то еще, потому что это займет некоторое время.
Когда это будет сделано (вы все еще в реальном времени на этой стадии), вы можете добавить раздел подкачки на новый диск, если хотите , используя gparted, затем установите / запустите Boot Repair, как показано ниже: это установит приятный свежий Grub на ваш диск (перезаписывает любой существующий) и найдет любую ОС на любом подключенном диске:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
[d7 ] Перезагрузитесь и наслаждайтесь. Примечание: вам нужно убедиться, что ваш BIOS загружает диск с новым Grub на нем. ~~~~~~~~~~
UPDATE: Извините за поздний ответ. Так что да, если вы еще этого не сделали, то то, что вы сказали ранее, - это то, что вы хотите сделать. Создайте пустой раздел ext4 размером около 20 ГБ на новом диске, чтобы установить новую систему Ubuntu. Клонирование раздела / home из старого диска на новый (убедитесь, что у вас достаточно места), а затем, наконец, добавьте раздел подкачки. Затем вы будете готовы установить систему на новый диск с вашего сеанса USB - выберите опцию «что-то еще» во время установки, выберите установку / на пустой раздел 20Gb с форматированием, выберите новый клонированный раздел для / home БЕЗ форматирования и поместите Grub на новый диск (см. раскрывающийся список внизу, новый диск уже должен быть выбран по умолчанию), и это должно сделать трюк.
Помните, что когда вы закончите, Grub должен показать Ubuntu x2 и Windows x1, поэтому убедитесь, что вы загрузили правильный.
Прежде всего, cp -a не подходит в этой ситуации. Вы хотите сделать CLONE раздел. Здесь мы будем использовать инструмент «dd», но есть другие, доступные с графическим интерфейсом и т. Д., Если вы предпочитаете, например, Clonezilla.
Подключите оба диска к компьютеру. Убедитесь, что новый диск имеет тот же размер или больше, чем тот раздел, который вы хотите скопировать.
Загрузите живой DVD / USB и запустите:
sudo blkid
В этом списке будут перечислены все диски и разделы на твой компьютер. Обратите внимание на раздел, который вы хотите скопировать, например. / dev / sda1 и новый пустой диск, например. / dev / sdb (no number).
Используйте dd для клонирования вашего раздела на новом диске - будьте очень осторожны, это может уничтожить ваши данные, если вы введете неправильную команду! 'if' - это (старый) раздел, который вы хотите скопировать. 'of' - новый (пустой) диск. Не перепутайте их! Например:
sudo dd if=/dev/sda1 of=/dev/sdb status=progress
Вы можете добавить bs = 4096, если хотите, чтобы он работал быстрее, но я не хочу этого делать. Теперь уходите и делайте что-то еще, потому что это займет некоторое время.
Когда это будет сделано (вы все еще в реальном времени на этой стадии), вы можете добавить раздел подкачки на новый диск, если хотите , используя gparted, затем установите / запустите Boot Repair, как показано ниже: это установит приятный свежий Grub на ваш диск (перезаписывает любой существующий) и найдет любую ОС на любом подключенном диске:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
Перезагрузитесь и наслаждайтесь. Примечание: вам нужно убедиться, что ваш BIOS загружает диск с новым Grub на нем.
~~~~~~~~~~
UPDATE: Извините за поздний ответ. Так что да, если вы еще этого не сделали, то то, что вы сказали ранее, - это то, что вы хотите сделать. Создайте пустой раздел ext4 размером около 20 ГБ на новом диске, чтобы установить новую систему Ubuntu. Клонирование раздела / home из старого диска на новый (убедитесь, что у вас достаточно места), а затем, наконец, добавьте раздел подкачки. Затем вы будете готовы установить систему на новый диск с вашего сеанса USB - выберите опцию «что-то еще» во время установки, выберите установку / на пустой раздел 20Gb с форматированием, выберите новый клонированный раздел для / home БЕЗ форматирования и поместите Grub на новый диск (см. раскрывающийся список внизу, новый диск уже должен быть выбран по умолчанию), и это должно сделать трюк.
Помните, что когда вы закончите, Grub должен показать Ubuntu x2 и Windows x1, поэтому убедитесь, что вы загрузили правильный.
Прежде всего, cp -a не подходит в этой ситуации. Вы хотите сделать CLONE раздел. Здесь мы будем использовать инструмент «dd», но есть другие, доступные с графическим интерфейсом и т. Д., Если вы предпочитаете, например, Clonezilla.
Подключите оба диска к компьютеру. Убедитесь, что новый диск имеет тот же размер или больше, чем тот раздел, который вы хотите скопировать.
Загрузите живой DVD / USB и запустите:
sudo blkid
В этом списке будут перечислены все диски и разделы на твой компьютер. Обратите внимание на раздел, который вы хотите скопировать, например. / dev / sda1 и новый пустой диск, например. / dev / sdb (no number).
Используйте dd для клонирования вашего раздела на новом диске - будьте очень осторожны, это может уничтожить ваши данные, если вы введете неправильную команду! 'if' - это (старый) раздел, который вы хотите скопировать. 'of' - новый (пустой) диск. Не перепутайте их! Например:
sudo dd if=/dev/sda1 of=/dev/sdb status=progress
Вы можете добавить bs = 4096, если хотите, чтобы он работал быстрее, но я не хочу этого делать. Теперь уходите и делайте что-то еще, потому что это займет некоторое время.
Когда это будет сделано (вы все еще в реальном времени на этой стадии), вы можете добавить раздел подкачки на новый диск, если хотите , используя gparted, затем установите / запустите Boot Repair, как показано ниже: это установит приятный свежий Grub на ваш диск (перезаписывает любой существующий) и найдет любую ОС на любом подключенном диске:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
Перезагрузитесь и наслаждайтесь. Примечание: вам нужно убедиться, что ваш BIOS загружает диск с новым Grub на нем.
~~~~~~~~~~
UPDATE: Извините за поздний ответ. Так что да, если вы еще этого не сделали, то то, что вы сказали ранее, - это то, что вы хотите сделать. Создайте пустой раздел ext4 размером около 20 ГБ на новом диске, чтобы установить новую систему Ubuntu. Клонирование раздела / home из старого диска на новый (убедитесь, что у вас достаточно места), а затем, наконец, добавьте раздел подкачки. Затем вы будете готовы установить систему на новый диск с вашего сеанса USB - выберите опцию «что-то еще» во время установки, выберите установку / на пустой раздел 20Gb с форматированием, выберите новый клонированный раздел для / home БЕЗ форматирования и поместите Grub на новый диск (см. раскрывающийся список внизу, новый диск уже должен быть выбран по умолчанию), и это должно сделать трюк.
Помните, что когда вы закончите, Grub должен показать Ubuntu x2 и Windows x1, поэтому убедитесь, что вы загрузили правильный.
Grub получает доступ к своим конфигурационным файлам до того, как монтируются диски / файловые системы. Если вы не дублируете оригинальный диск, скорее всего, вы получите командную строку grub.
Вам нужно будет загрузиться в новую ОС и обновить grub. В той же ситуации я сделал следующее:
скопировал ваши файлы на новый диск и отредактировал новый / etc / fstab, чтобы отразить новые UUID. Обновите grub, чтобы вы получили запись grub для нового диска в старой grub. загрузитесь в новый диск. Переустановите grub, обновите grub и обновите initramfs. Обязательно настройте новый диск с помощью установки grub. удалите старый диск, и вы должны быть хорошо с новым диском. после загрузки только с новым приводом, снова обновите grub, чтобы удалить запись для старого диска.Grub получает доступ к своим конфигурационным файлам до того, как будут установлены диски / файловые системы. Если вы не дублируете оригинальный диск, скорее всего, вы получите командную строку grub.
Вам нужно будет загрузиться в новую ОС и обновить grub. В той же ситуации я сделал следующее:
скопировал ваши файлы на новый диск и отредактировал новый / etc / fstab, чтобы отразить новые UUID. Обновите grub, чтобы вы получили запись grub для нового диска в старой grub. загрузитесь в новый диск. Переустановите grub, обновите grub и обновите initramfs. Обязательно настройте новый диск с помощью установки grub. удалите старый диск, и вы должны быть хорошо с новым диском. после загрузки только с новым приводом, снова обновите grub, чтобы удалить запись для старого диска.Grub получает доступ к своим конфигурационным файлам до того, как будут установлены диски / файловые системы. Если вы не дублируете оригинальный диск, скорее всего, вы получите командную строку grub.
Вам нужно будет загрузиться в новую ОС и обновить grub. В той же ситуации я сделал следующее:
скопировал ваши файлы на новый диск и отредактировал новый / etc / fstab, чтобы отразить новые UUID. Обновите grub, чтобы вы получили запись grub для нового диска в старой grub. загрузитесь в новый диск. Переустановите grub, обновите grub и обновите initramfs. Обязательно настройте новый диск с помощью установки grub. удалите старый диск, и вы должны быть хорошо с новым диском. после загрузки только с новым приводом, снова обновите grub, чтобы удалить запись для старого диска.