Не удается создать образ linux vm в лазури — обобщение стирает мою работу

Я явно упускаю что-то ОЧЕНЬ простое в своей логике. Может кто-нибудь помочь. Моя проблема:

  1. Я создаю виртуальную машину Linux в Azure через Azure CLI.
  2. Я подключаюсь по ssh и снабжаю свою виртуальную машину нужными мне пакетами/программами (например, загружаю Anaconda, Keras и т. д.).
  3. ПРОБЛЕМА. Когда я выполняю шаги по захвату образа (AZ_cli_makeImage_link), ВСЯ моя работа стирается, когда я "обобщаю" виртуальную машину, потому что стирается домашний каталог. Это происходит даже тогда, когда я делаю mkdir в отдельный каталог и устанавливаю туда.

Как мне подготовить мою виртуальную машину Linux таким образом, чтобы фиксировать изменения, которые я сделал, когда виртуальная машина «обобщена». Благодарю вас!


person user1267299    schedule 13.02.2019    source источник


Ответы (1)


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

введите здесь описание изображения

Обобщение означает отсутствие информации о пользователе, и вы не можете изменить шаги в Azure, которые выполняло бы обобщение, насколько мне известно.

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

Шаги, на которых вы можете просто освободить виртуальную машину и скопировать диск ОС с виртуальной машины. Затем создайте новую виртуальную машину и подключите диск. Но есть проблема, на изображении осталась пользовательская информация. Поэтому вам следует обратить внимание на этот момент при создании новой виртуальной машины. См. другую проблему Как для захвата специального образа с ВМ.

Но я предлагаю вам создать обобщенный образ без установки пакетов в домашнюю директорию пользователя. Это больше безопасности и не будет проблем в целом.

person Charles Xu    schedule 13.02.2019
comment
Благодарю вас! Я думаю, что мне нужно сделать, как вы говорите, просто установить мои пакеты за пределами каталога ~/usr/home, и он сохранится. то есть cd / а затем установить пакеты. Но это было не просто для новичка! ;) - person user1267299; 13.02.2019
comment
@ user1267299 Да, устанавливать пакеты в Linux не так просто, как в Windows. Но узнать больше - это счастливая вещь, как я думаю :) - person Charles Xu; 13.02.2019