Вопрос о chroot

Сценарий

  • У меня есть 2 рабочих раздела Ubuntu на моем жестком диске, давайте назовем их A и B. Они используют единственный раздел подкачки.
  • Я загрузился в A и вошел в рабочий стол. Теперь я хочу сделать раздел большим (существует достаточно пространства) без перезагрузки.

Вопрос

Я могу использовать chroot для

  • выполнение переключателя к B и затем размонтировало раздел A.
  • Затем от B запускают gparted и изменяют размер раздела A.
  • Затем (в B) монтируют в/mnt/temp и используют chroot для переключения выполнения назад на A?

Прокомментируйте или ответьте, знаете ли Вы, возможно ли это вообще. Даже когда Вы не знаете точные шаги. Это уже помогло бы мне и не намного лучше, чем никакой ответ вообще.

Конечно, более полезный была бы пошаговая процедура командной строки для движения в B, раздел размонтирования A и как запустить графический gparted.

Что я сделал

  • Я использовал chroot для переключения с живого CD или другого раздела для фиксации личинки. Это было в текстовом режиме только. Я использовал стандартную процедуру, которая объяснена во многих сообщениях (смонтируйте другой раздел, смонтируйтесь - связывают виртуальные папки и затем перемещаются с chroot в подсоединенный внешний диск).
  • Я создал клон к недавно созданному разделу B. Клон хорошо работает и полностью при начальной загрузке от личинки, таким образом, я знаю его полностью функциональное. Я действительно получал доступ к командной строке с chroot ('#' подсказка) от A.
  • Я не нашел способ запустить рабочий стол в B или полностью переключиться для работы в B как то, если я перезагружу систему в B.
  • Я не видел другое сообщение, которое содержало тот вопрос
2
задан 4 May 2017 в 14:45

1 ответ

Поскольку я знаю: chroot означает изменять корень.

chroot в подобных Unix операционных системах является операцией, которая изменяет очевидный корневой каталог для текущего рабочего процесса и его детей. [отсюда]

Вы изменяете корень своей рабочей системы; Так Ваша система (A) все еще выполняет все, что Вы видите, часть Вашей рабочей системы, и Вы не можете просто размонтировать ее занятые ресурсы (блочные устройства).

Также система, Вы изменяете свой корень на (B), не способно к выполнению никакого материала без справки A. Как пример, я предполагаю, что Вы использовали команду как mount --bind /xxx /mnt/xxx связывать пути как /proc или /dev как часть chroot процесс; Эти пути являются manged Вашей рабочей системой (A) и необходимы для chrooted среды (B).

Вы просто не можете сделать то, что Вы - Тринг, чтобы сделать.

Поскольку Википедия говорит, использования chroot :

  • Тестирование и разработка
  • Управление зависимостью
  • Совместимость
  • Восстановление
  • Разделение полномочия

Запускать графическую программу от Вашей chrooted среды (B внутри A); необходимо разрешить доступ к выполнению X.

Сторона chroot среды работает (откройте другой терминал):

xhost +local:
echo $DISPLAY

Затем экспортируйте то, что Вы получаете как вывод в Вашу chrooted среду:

export DISPLAY=[output of above command]

Теперь необходимо смочь запустить графические приложения.

Источник


Я не могу добраться, почему Вы делаете это, просто загружаетесь в живой диск, применяете Ваши изменения, chroot к Вашим различным машинам для фиксации чего-нибудь, если это необходимо. затем перезагрузка и использование Ваши системы.

2
ответ дан 2 December 2019 в 03:40

Другие вопросы по тегам:

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