ubuntu xenial64 box password?


35

Probabilmente una domanda stupida ma

Ho usato la scatola trusty64 prima con Vagrant e stavo provando la scatola Xenial64 ma non accetta il solito utente: Vagrant Password: Vagrant Login?



1
Allora, qual è il nuovo utente? utente: ubuntu password: ???
KillerSnail,

9
Qualcuno conosce la password per l'utente di Ubuntu?
Victor Bocharsky,

3
Breve commento, perché non è stata ancora accettata una risposta ... È possibile trovare il PASS in ~/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-xenial64/20170311.0.0/virtualbox/Vagrantfile:, dove "20170311.0.0" dovrebbe essere un nome di directory diverso ... quindi andare su ~/.vagrant.d/boxes/e trovare la casella e il file vagabondo.
Ministro

2
Sono passato alla bento/ubuntu-16.04scatola e ho risolto una serie di problemi.
jchook,

Risposte:


30

Come menzionato dall'utente @prometee in questa discussione sul launchpad # 1569237 , puoi trovare la password in:

~/.vagrant.d/ubuntu-VAGRANTSLASH-xenial64/20161221.0.0/virtualbox/Vagrantfile

o:

~/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-xenial64/20161221.0.0/virtualbox/Vagrantfile

a seconda della versione di Vagrant. (Nota che la 20161221.0.0parte del percorso varierà in base a quando è stato scaricato il box. Inoltre, potrebbe essercene più di uno nella tua directory.)

Ecco il mio (linea 8):

# Front load the includes
include_vagrantfile = File.expand_path("../include/_Vagrantfile", __FILE__)
load include_vagrantfile if File.exist?(include_vagrantfile)

Vagrant.configure("2") do |config|
  config.vm.base_mac = "022999D56C03"
  config.ssh.username = "ubuntu"
  config.ssh.password = "fbcd1ed4fe8c83b157dc6e0f"

  config.vm.provider "virtualbox" do |vb|
     vb.customize [ "modifyvm", :id, "--uart1", "0x3F8", "4" ]
     vb.customize [ "modifyvm", :id, "--uartmode1", "file", File.join(Dir.pwd, "ubuntu-xenial-16.04-cloudimg-console.log") ]
  end
end

Cordiali saluti, l'utente @racb menziona nella stessa discussione che il this bug report having been filed Ubuntu e così lontano no [...] decision has been made yet.


Non ci sono file in quella posizione per me
Felix Eve,

2
L'ho trovato su ~ \ .vagrant.d \ boxes \ ubuntu-VAGRANTSLASH-xenial64 \ 20170331.0.0 \ virtualbox \ Vagrantfile (in Windows)
Rob H

Ha funzionato perfettamente. Il mio percorso era ~/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-xenial64/20170317.0.0/virtualboxma ho avuto l'idea di dove cercare la password.
Ariful Haque,

2
Questa risposta deve essere la risposta accettata!
Sangar82,

1
-È sicuro cambiare il nome utente e la password in "vagrant: vagrant" lì? - Aggiornamento : No; vagrant reload chiederà una password per vagrant@127.0.0.1 e non accetterà il valore che hai usato lì.
Juha Untinen,

11

Ieri ho sbattuto la testa contro il muro per mezza giornata ieri fino a quando mi sono reso conto che stavo eseguendo una vecchia versione di Virtualbox (5.0.x) e Vagrant (1.8.0)

Aggiornato a VirtualBox 5.1.xe Vagrant 1.8.7 e ottenuto risultati migliori

Fondamentalmente le immagini ubuntu/xenial32e ubuntu/xenial64sono imperfette in quanto non arrivano con l' vagrantutente fuori dalla scatola.

Questo è contro le specifiche Vagrant

Ho finito per usare v0rtex/xenial64come raccomandato in questa segnalazione di bug . Non sono sicuro del perché canonicalnon stia risolvendo questo problema

Il mio file vagabondo è il seguente

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  config.vm.box = "v0rtex/xenial64"

  config.vm.network :private_network, ip: "10.10.10.10"

  config.ssh.username = 'vagrant'
  config.ssh.password = 'vagrant'

  config.vm.provider :virtualbox do |vb|
     vb.name = "supercool"
     vb.customize ["modifyvm", :id, "--memory", "768"]
     vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  end

end

Se si desidera ancora utilizzare le canonicalimmagini fornite, è possibile utilizzare il seguente approccio

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  config.vm.box = "ubuntu/xenial64"

  config.vm.network :private_network, ip: "10.10.10.10"

  config.ssh.insert_key = true
  config.ssh.forward_agent = true

  config.vm.provider :virtualbox do |vb|
     vb.name = "supercool"
     vb.customize ["modifyvm", :id, "--memory", "768"]
     vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  end

end

Se lo fai, la /vagrantcartella sarà di proprietà ubuntu:ubuntuinvece di vagrant:vagrant. Se hai degli script che fanno affidamento vagrantsull'utente per essere lì, si romperanno



3

Un modo è installare aspettarsi e avviare una modifica della password. L'esempio seguente imposta la password Ubuntu per l'utente Ubuntu.

Vagrant.configure("2") do |config|
    apt-get install -y expect
    echo '#!/usr/bin/expect
      set timeout 20
      spawn sudo passwd ubuntu
      expect "Enter new UNIX password:" {send "ubuntu\\r"}
      expect "Retype new UNIX password:" {send "ubuntu\\r"}
      interact' > change_ubuntu_password
    chmod +x change_ubuntu_password
  ./change_ubuntu_password
end

1

La nuova ubuntu/xenial64immagine non viene fornita con un nome utente e una password predefiniti. Comunque puoi usare ssh usando un tasto ssh generato nella tua cartella vagrant.

Diciamo che il tuo Vagrantfile è a /vagrant/vm01/Vagrantfile, la chiave ssh sarebbe dentro/vagrant/vm01/.vagrant/machines/..../private_key

Puoi accedere al tuo vagrant vm usando questo private_key. Se la macchina ospite richiede la passphrase della chiave, basta premere ENTER(specificando una passphrase vuota). Ad esempio, sul mio Mac:

ssh -i /vagrant/vm01/.vagrant/..../private_key <your vm ip> <your vm port>

Se desideri comunque accedere utilizzando nome utente e password, dopo aver effettuato l'accesso utilizzando la chiave privata, puoi aggiungere il tuo utente per accedere in un secondo momento:

# create a user for log in
sudo useradd yourusername

# specify a password
sudo passwd yourusername
# then type your password when prompted

# add the user to sudo group
sudo adduser yourusername sudo    

# create a home folder for your user
sudo mkdir /home/yourusername

# add a shell command for your user (normally /bin/bash)
sudo vim /etc/passwd
# find yourusername line, and add /bin/bash to the end.
# the end result would look like this:
yourusername:x:1020:1021::/home/yourusername:/bin/bash

Ora puoi ssh usando il nuovo nome utente e password.


1

È possibile generare una configurazione valida OpenSSH per connettersi alla macchina digitando vagrant ssh-configdalla cartella Vagrantfile. L'output mostrerà che l'autenticazione della password è disabilitata, tuttavia è possibile puntare al file della chiave privata:

Host default
  HostName 127.0.0.1
  User ubuntu
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /path/to/project/folder/.vagrant/machines/default/virtualbox/private_key
  IdentitiesOnly yes
  LogLevel FATAL

Ora puoi:

ssh -i /path/to/project/folder/.vagrant/machines/default/virtualbox/private_key ubuntu@machine-ip

1

Sto usando Vagrant su Windows e l'immagine di Ubuntu / Xenial64 non ha una password configurata per questo.

  • Nome utente predefinito: vagabondo
  • Host predefinito: 127.0.0.1:2222
  • Chiave SSH predefinita: C: /Vagrant/.vagrant/machines/default/virtualbox/private_key

Puoi accedere al tuo VM box tramite il comando:

 vagrant ssh

o da

ssh -i private_key vagrant:127.0.0.1 -p 2222

0

Se non sei interessato alla ubuntu/xenial64scatola ma a qualsiasi altra scatola 16.04 LTS ho usato quella bento che funziona con il solito vagrantnome utente e password:

config.vm.box = 'bento/ubuntu-16.04'
config.vm.box_version = "201708.22.0"
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.