我試圖在virtualbox中模擬一個英特爾NUC網關。我在亞馬遜EC2實例中運行這個虛擬框。由於連接不暢,我無法查看桌面的GUI。因此開始使用命令行。下面是我在resin.io創建的應用程序的步驟如何使用命令行在ubuntu中創建虛擬機
1)來創建虛擬機,拿起英特爾NUC板作爲應用程序與下載的圖像
2)轉換的.IMG到.vmdk圖像並保存在我的ec2實例中的這個圖像
3)現在我創建了我的虛擬機在EC2中使用命令行參數,當我嘗試導入此圖像..我感到了..我沒有得到相關命令
請幫我出去
我試圖在virtualbox中模擬一個英特爾NUC網關。我在亞馬遜EC2實例中運行這個虛擬框。由於連接不暢,我無法查看桌面的GUI。因此開始使用命令行。下面是我在resin.io創建的應用程序的步驟如何使用命令行在ubuntu中創建虛擬機
1)來創建虛擬機,拿起英特爾NUC板作爲應用程序與下載的圖像
2)轉換的.IMG到.vmdk圖像並保存在我的ec2實例中的這個圖像
3)現在我創建了我的虛擬機在EC2中使用命令行參數,當我嘗試導入此圖像..我感到了..我沒有得到相關命令
請幫我出去
(見下面的編輯!)
看起來這是目前不可能與AWS EC2。他們有很好的basic info和詳細的step-by-step guide來導入虛擬機映像,但resin.io映像不符合它們的operating systems prerequisits:基本上,在EC2上運行的OS映像必須是列出的操作系統類型之一(Ubuntu,Red Hat ,SUSE等),但resin.io映像是一個自定義的Linux系統,它不被EC2平臺所接受。我試圖運行他們的導入程序,並且所有不同類型的嘗試都被拒絕了。
建議嘗試不同的方式來運行虛擬機。如果你只是嘗試一個虛擬設備(我猜根據this blogpost),並且你不需要NUC映像,只需要任何虛擬設備就可以完成,那麼在resin.io上也可以找到基於QEMU的映像。也可以在本地機器上運行(由於相同的原因,這些功能也無法在EC2上運行)。
編輯:
重讀你的問題,它是關於EC2本身少了很多,而且更多的是VirtualBox的,我道歉。 VBoxManage有豐富的文檔。在這種情況下,這是一個腳本,可以在命令行上在VirtualBox上設置和啓動resin.io NUC映像。
需要什麼:從resin.io儀表板下載NUC圖像,並轉換成VMDK圖像。在主機上安裝VirtualBox,將VMDK複製到那裏,然後修改下面文件中的設置(根據需要調整可用內存,磁盤存儲和文件名)。
腳本將:
然後你的機器準備好運行時,此過程將關閉虛擬機。
#!/bin/bash
## Fill in these Variables
# the virtualmachine's name
MACHINE=MyMachine2
# memory in MB
MEMORY=2048
# storage in MB
STORAGE=8096
# resin installation media path & filename
RESIN_DISK="resin-MyApplication-1.8.0-1.13.0-eb7236d1bd7e.vmdk"
# Storage disk, by defalt created in the current working directory!
DISKFILE="./${MACHINE}.vdi"
###
## Convert the original image to a Virtualbox image as:
# VBoxManage convertdd resin.img resin.vmdk --format vmdk
# and then use RESIN_DISK="resin.vmdk" above
echo "Createing Machine" && \
VBoxManage createvm --name "$MACHINE" \
--ostype Linux_64 \
--register && \
\
echo "Setting up Machine" && \
VBoxManage modifyvm "$MACHINE" \
--memory $MEMORY \
--ioapic off \
--firmware efi64 \
--rtcuseutc on && \
\
echo "Createing Storage Controller" && \
VBoxManage storagectl "$MACHINE" \
--name SATA \
--add sata && \
\
echo "Creating Main Disk" && \
VBoxManage createmedium disk \
--filename "$DISKFILE" \
--size $STORAGE && \
\
echo "Attaching Main Disk" && \
VBoxManage storageattach "$MACHINE" \
--storagectl SATA \
--port 0 --device 0 --type hdd --medium "$DISKFILE" && \
\
echo "Attaching Resin Install Media" && \
VBoxManage storageattach "$MACHINE" \
--storagectl SATA \
--port 1 --device 0 --type hdd --medium "$RESIN_DISK" && \
\
echo "Starting machine for first time setup" && \
VBoxHeadless --startvm "$MACHINE" && \
\
echo "Removing install media" && \
VBoxManage storageattach "$MACHINE" \
--storagectl SATA \
--port 1 --device 0 --type hdd --medium none && \
\
echo -e "You now can start machine for future use as: \nVBoxHeadless --startvm \"$MACHINE\""
附加:
作爲一個側面說明,如果你是在命令行上工作,還可以獲得通過命令行所需要的resin.io形象呢!
安裝resin-cli到您的主機,並使用resin login
登錄(例如,使用從resin.io儀表板/首選項部分的API密鑰),
下載裸操作系統映像的NUC,爲例如:
resin os download intel-nuc -o intel-nuc.img
爲應用程序創建一個配置,讓我們說你的應用程序的名稱是MyApp的:
resin config generate --app MyApp -o config-MyApp.json
釷恩這個配置添加到您的形象:
sudo resin config inject config-MyApp.json --type intel-nuc --drive intel-nuc.img
(對於這一點,你可能必須運行sudo resin login
所以你能夠正確使用sudo與樹脂的命令。)
在這之後,你可以做轉換的intel-nuc.img
爲VMDK格式,並設置您的虛擬機,如上所述。
嗨Gergely,感謝您的幫助!但我面臨問題,而開始我的虛擬機有樹脂VMDK圖像。這次我不使用EC2實例。我正在組織網絡中工作,我無法在VM啓動時查看啓動過程。請你能爲我提出任何解決方法 – Arul
你如何運行Virtualbox?遠程?如果您通過'VBoxHeadless'運行映像,則不會看到任何引導過程。幾分鐘後,您的設備是否會顯示在resin.io儀表板中?通過查看啓動過程,您試圖解決的問題是什麼? – Gergely
我的設備doest顯示在resin.io中。我需要我的vmware intel nuc鏡像在resin.io儀表板中顯示。 – Arul