Случайно освободить мой жесткий диск .vdi с виртуальной машины

Не стесняйтесь пропустить этот ответ, если хотите решить проблему с сертификатами. Этот ответ касается туннелирования ssh через брандмауэр, который, на мой взгляд, является лучшим решением для работы с брандмауэрами / прокси-серверами.

Существует лучший способ, чем использование доступа по протоколу http, а именно использование службы ssh, предлагаемой github на порту 443 сервера ssh.github.com.

Мы используем инструмент под названием штопор. Это доступно как для CygWin (через настройку с домашней страницы cygwin), так и для Linux с использованием вашего любимого инструмента упаковки. Для MacOSX это доступно из macports и варится по крайней мере.

Командная строка выглядит следующим образом:

$ corkscrew     

Proxyhost и proxyport - это координаты прокси https. Targethost и targetport - это местоположение хоста для туннелирования. Authfile представляет собой текстовый файл с 1 строкой, содержащей имя пользователя и пароль прокси-сервера, разделенные двоеточием

, например:

abc:very_secret

Установка для использования «обычного» протокола ssh для связи git

Добавив это в ~/.ssh/config, этот трюк можно использовать для обычных соединений ssh.

Host github.com
  HostName ssh.github.com
  Port 443
  User git
  ProxyCommand corkscrew   %h %p ~/.ssh/proxy_auth

Теперь вы можете проверить его работоспособность, выполнив команду ssh-ging для gitproxy

pti@pti-laptop:~$ ssh github.com
PTY allocation request failed on channel 0
Hi ptillemans! You've successfully authenticated, but GitHub does not provide shell access.
       Connection to github.com closed.
pti@pti-laptop:~$

(Примечание: если вы никогда ранее не входили в github, ssh попросит добавить ключ сервера в файл известных хостов. Если вы параноик, рекомендуется проверить отпечаток RSA на тот, который указан на сайте github, куда вы загрузили свой ключ).

Небольшой вариант этого метода - это случай, когда вам нужен доступ к хранилищу с другим ключом, например, отделить вашу личную учетную запись от вашей профессиональной учетной записи.

# 
# account dedicated for the ACME private github account 
#
Host acme.github.com
  User git
  HostName ssh.github.com
  Port 443
  ProxyCommand corkscrew  <3128> %h %p ~/.ssh/proxy_auth
  IdentityFile ~/.ssh/id_dsa_acme

наслаждайтесь!

Мы используем его уже много лет как на Linux, Mac, так и на Windows.

Если вы хотите, вы можете узнать больше об этом в этом блоге

4
задан 05.05.2020, 12:55

3 ответа

Выберите вашу виртуальную машину в VirtualBox Manager, выберите «Настройки» и перейдите в «Хранилище». Щелкните правой кнопкой мыши контроллер SATA и выберите «Добавить жесткий диск». Затем вы выбираете существующий файл виртуального жесткого диска и присоединяете свой старый .vdi, который вы выпустили ранее.

6
ответ дан 05.05.2020, 12:56

Проблема с попыткой подключить ранее подключенный виртуальный диск заключается в том, что VirtualBox запоминает UUID этого диска. Самый простой способ восстановить ранее отсоединенный диск - это изменить UUID образа диска.

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

vboxmanage internalcommands sethduuid "your old image" $(uuidgen)
VBoxManage modifyvm "your vm name" --hda "your old image"
1
ответ дан 05.05.2020, 12:56

В приведенной выше процедуре вы можете получить сообщение об ошибке «Не удалось открыть файл образа диска». Лучший вариант, который я бы предложил, - это создать новую виртуальную машину. Когда он запрашивает создание диска, выберите опцию «Использовать существующий виртуальный жесткий диск» и выберите файл .vdi, который решит все проблемы.

0
ответ дан 05.05.2020, 12:57

Теги

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