/ bin / sh: ошибка при импорте определения функции для `module '

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

Если это виртуальная машина, вам должен быть предоставлен доступ к гипервизору (возможно, называемому «панелью управления» или другим подобным), который позволяет, например, включать, выключать, или при необходимости перезагрузите машину с помощью эмулируемого переключателя питания. Эти интерфейсы также обычно предоставляют вам доступ к «удаленной консоли», которая представляет собой версию виртуальной машины, которая находится перед физической клавиатурой, подключенной к реальной машине. Благодаря этому вы можете загрузить ISO-образ, содержащий загрузочную версию gparted или какого-либо другого редактора разделов, который затем можно использовать для изменения размера ваших разделов по желанию.

Если это физическая машина, большинство хороших хостинговых компаний предлагают «KVM-over-IP», то есть удаленный способ доступа к реальной физической консоли, очень похожий на консольный интерфейс гипервизора виртуальной машины. . Вам, вероятно, придется попросить вашего хостинг-провайдера вставить загрузочный носитель в USB-накопитель или оптический привод для загрузки, если в вашей установке еще нет опции для загрузки в parted в меню GRUB. Если это управляемый хостинг, они, вероятно, могли бы изменить размер за вас - это, в конце концов, управление, за которое вы будете платить в этом случае.

Естественно, каждый раз, когда вы смотрите на возня с размерами разделов, сначала сделайте резервную копию ваших данных, потому что, если что-то пойдет не так, восстановление после сбойного изменения размера раздела в лучшем случае затруднено.

1
18.05.2017, 10:34
1 ответ

Похоже, у вас есть неправильная экспортируемая функция в среде, как здесь (в функции отсутствует точка с запятой и закрывающая фигурная скобка):

$ env "BASH_FUNC_foo%%"="() {  echo foo" bash -c "echo blah"
bash: foo: line 1: syntax error: unexpected end of file
bash: error importing function definition for `foo'
blah

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

#!/bin/sh
echo hello

Вы можете проверить, что у вас есть в среде, с помощью чего-то вроде env | модуль grep (префикс BASH_FUNC_ и суффикс %% могут не совпадать). Затем вам нужно выяснить, где установлена ​​​​эта переменная среды. Однако установить его в сценарии Bash довольно сложно, поскольку % не является допустимым символом в именах переменных оболочки.

3
27.01.2020, 23:24

Теги

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