# Команды Vagrant

В самом начале были описаны базовые команды Vagrant. В данном же разделе будут рассмотрены другие команды, которые необходимы для выполнения в последующих лабораторных работах.

## Приостановка машины

Возможно нет необходимости уничтожать машину. В Vagrant есть возможность приостановить её с помощью следующей команды:&#x20;

```bash
$ vagrant suspend
```

После выполнения машина сохранит своё состояние на диск, а при последующем выполнении команды `vagrant up` её состояние возобновиться с того момента, после которого она была приостановлена.&#x20;

Данный способ позволяет быстро вернуться в работе, но требует дискового пространства для сохранения состояния ОЗУ виртуальной машины.&#x20;

## Остановка машины

Остановка виртуальной машины корректно  полностью завершит работу гостевой операционной системы и выключит гостевую машину.  Осуществить это можно с помощью команды:&#x20;

```
$ vagrant halt
```

Виртуальную машину можно будет запустить вновь, но запуск займет больше времени чем если бы она была приостановлена.&#x20;

## Снимки виртуальной машины

Vagrant также поддерживает снимки виртуальной машины, которые фиксируют состояние машины в момент их создания. Их очень удобно использовать в случае если необходимо откатить состояние машины или восстановить файлы.&#x20;

Чтобы создать снимок и сохранить состояние машины необходимо выполнить следующую команду:&#x20;

```
$ vagrant snapshot save [vm-name] NAME
```

Где, \[vm-name] - имя виртуальной машины, а NAME - имя создаваемого снимка.

Список созданных снимков можно получить с помощью следующей команды:&#x20;

```
$ vagrant snapshot list
```

Команда для восстановления снимка схожа с командой создания за исключением одного параметра:&#x20;

```
$ vagrant snapshot restore [vm-name] NAME
```

Чтобы удалить снимок виртуальной машины достаточно выполнить следующую команду:&#x20;

```
$ vagrant snapshot delete NAME
```

Вместо параметра `NAME` необходимо указать имя снимка.

## Создание собственного образа&#x20;

В самом начале было упомянуто о возможности создания собственного образа на основе базового. Процесс достаточно простой и требует лишь выполнения нескольких команд.&#x20;

После того как настройка виртуальной машины будет закончена. Необходимо выполнить следующую команду:&#x20;

```
$ vagrant package
```

После её выполнения настроенная машина будет остановлена и Vagrant создаст в текущей директории файл с именем "package.box", содержащий образ настроенной машины. Далее необходимо данный образ добавить в локальный репозиторий.&#x20;

```
$ vagrant box add --name my-box package.box
```

Параметр `my-box`  задает имя виртуальной машины. Имя необходимо чтобы инициализировать именно данный образ машины с помощью команды  `vagrant init`.

Также можно загрузить созданный образ машины в облачный репозиторий [Vagrant Cloud](https://app.vagrantup.com/)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nskarapetyants.gitbook.io/linux-hevd-tutorial/laboratornaya-rabota-0/vagrant/zadanie/vagrant-commands.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
