यहां नवजात शिशु के सापेक्ष, हर बार जब मैं एक नया उबंटू वीएम स्पिन करना चाहता हूं, तो मैन्युअल रूप से इंस्टॉल प्रक्रिया से गुजरने की कोशिश कर रहा हूं।
मेरी सामान्य प्रक्रिया, इंस्टॉल पूरा करने के बाद, मशीन के सभी सॉफ्टवेयर को अपडेट करना है , apt-get updateऔर apt-get dist-upgrade -yफिर सभी अपग्रेड प्रभाव को सुनिश्चित करने के लिए इसे रिबूट करना है। उस अंत तक, मैंने वैग्रांटफाइल को इस तरह बनाया:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/xenial64"
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
end
config.vm.provision "shell", inline: <<-SHELL
apt-get update
apt-get dist-upgrade -y
shutdown -r now
SHELL
end
यह ज्यादातर काम करता है - मैं वीएम से आउटपुट को पैकेज अपडेट के रूप में देख सकता हूं - लेकिन इसके रिबूट होने के बाद और मैं vagrant sshइसमें, मेरी कोई भी फाइल सामने नहीं आई /vagrant। मैं मान रहा हूं कि साझा किए गए फ़ोल्डर को किसी कारण से हटाया नहीं जा रहा है।
मुझे लगता है कि मेरा पहला सवाल यह है: क्या यह इस तरह से सिस्टम को अपडेट करने के लिए समझ में आता है कि शेल प्रोलेक्टर का हिस्सा है? और यदि हां, तो मैं अतिथि को कैसे रिबूट कर सकता हूं और अभी भी /vagrantशेयर माउंट है?
vagrant provisionकमांड पूरा होने के बाद चलाया जाएगा । पहले प्रावधान किए जाने के बाद यह नहीं चलेगाvagrant up। (देखें: github.com/hashicorp/vagrant/issues/10480 )