SSH

格式:

vagrant ssh [options] [name|id] [-- extra ssh args]

这将SSH导入正在运行的vagrant机器,并允许你访问机器的shell。

userdeMacBook-Pro:~ user$ vagrant ssh -h
Usage: vagrant ssh [options] [name|id] [-- extra ssh args] Options: -c, --command COMMAND Execute an SSH command directly 直接执行SSH命令
-p, --plain Plain mode, leaves authentication up to user 普通模式,将身份验证留给用户
-t, --[no-]tty Enables tty when executing an ssh command (defaults to true) 在执行ssh命令时启用tty(默认为true)
-h, --help Print this help 打印帮助信息

1.

1)在一个简单的vagrant项目中,创建的实例将被命名为default。即不使用实例的名字和使用default得到的结果是一样的,如:

userdeMacBook-Pro:~ user$ vagrant ssh
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.--generic x86_64) * Documentation: https://help.ubuntu.com/
New release '14.04.5 LTS' available.
Run 'do-release-upgrade' to upgrade to it. Welcome to your Vagrant-built virtual machine.
Last login: Mon Dec :: from 10.0.2.2
vagrant@precise64:~$ logout
Connection to 127.0.0.1 closed.

使用default:

userdeMacBook-Pro:~ user$ vagrant ssh default
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.--generic x86_64) * Documentation: https://help.ubuntu.com/
New release '14.04.5 LTS' available.
Run 'do-release-upgrade' to upgrade to it. Welcome to your Vagrant-built virtual machine.
Last login: Mon Dec :: from 10.0.2.2
vagrant@precise64:~$ logout
Connection to 127.0.0.1 closed.

可见在同一个项目中都是打开同一个实例

2)在多机器设置中,你可以使用vagrant状态中显示的名称登录到每个vm,如:

 $ vagrant status
Current machine states: node1 running (virtualbox)
node2 running (virtualbox) This environment represents multiple VMs. The VMs are all listed
above with their current state.
$ vagrant ssh node1
Welcome to your Vagrant-built virtual machine.
Last login: Fri Sep :: from 10.0.2.2
vagrant@precise64:~$ logout
Connection to 127.0.0.1 closed.
$ vagrant ssh node2
Welcome to your Vagrant-built virtual machine.
Last login: Fri Sep :: from 10.0.2.2
vagrant@precise64:~$ logout
Connection to 127.0.0.1 closed.

3)在运行来自不同项目的机器的系统中,你可以使用流浪全局状态中列出的id:

userdeMacBook-Pro:~ user$ vagrant global-status
id name provider state directory
------------------------------------------------------------------------
547b2b8 default virtualbox running /Users/user The above shows information about all known Vagrant environments
on this machine. This data is cached and may not be completely
up-to-date (use "vagrant global-status --prune" to prune invalid
entries). To interact with any of the machines, you can go to that
directory and run Vagrant, or you can use the ID directly with
Vagrant commands from any directory. For example:
"vagrant destroy 1a2b3c4d"

然后使用上面显示的id-547b2b8运行机器:

userdeMacBook-Pro:~ user$ vagrant ssh 547b2b8
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.--generic x86_64) * Documentation: https://help.ubuntu.com/
New release '14.04.5 LTS' available.
Run 'do-release-upgrade' to upgrade to it. Welcome to your Vagrant-built virtual machine.
Last login: Mon Dec :: from 10.0.2.2
vagrant@precise64:~$ logout
Connection to 127.0.0.1 closed.

如果在命令行中找到--(两个连字符),则在此之后的任何参数都将直接传递到ssh可执行文件中。这允许你传递任意命令,以便执行诸如反向隧道深入到ssh程序中的操作。

2.SSH客户机使用

vagrant将尝试使用安装在主机上的本地SSH客户机。在POSIX机器上,必须安装SSH客户机,并在路径上可用

对于Windows安装,安装程序镜像中提供了SSH客户机。如果在当前路径上没有找到SSH客户机,vagrant将使用它提供的SSH客户机。根据用于运行vagrant程序的本地环境,安装程序提供的SSH客户机可能无法正常工作。例如,当使用cygwin或msys2 shell时,SSH客户机在交互运行时将无法按预期工作。安装为当前工作环境构建的SSH包将解决这个问题。

3.后台执行

如果你指定的命令在后台运行(例如将&追加到shell命令中),它几乎会立即终止。这是因为,当Vagrant执行该命令时,它将在shell上下文中执行该命令,当shell退出时,所有子进程也将退出。

为了避免这种情况,你需要将流程从shell中分离出来。请谷歌了解如何为你的shell执行此操作。其中一种方法是nohup命令。

4.Pageant on Windows

SSH可执行文件将无法访问Windows上的Pageant。虽然vagrant可以通过内部库访问Pageant,但是SSH可执行文件不支持Pageant。这意味着,当使用vagrant ssh命令时,Pageant中的键不可用于转发。

virtualbox+vagrant学习-2(command cli)-17-vagrant ssh命令的更多相关文章

  1. virtualbox+vagrant学习-2(command cli)-26-vagrant share命令

    Share share命令初始化了一个vagrant share会话,允许你与世界上任何一个人共享vagrant环境,允许在几乎任何网络环境中直接在vagrant环境中进行协作. 你可以在本博客的vi ...

  2. virtualbox+vagrant学习-2(command cli)-1-vagrant box命令

    vagrant box 这是用于管理(添加.删除等)boxes的命令. box 是一个打包好的操作系统,是一个后缀名为 .box 的文件,其实是一个压缩包,里面包含了 Vagrant 的配置信息和 V ...

  3. virtualbox+vagrant学习-2(command cli)-2-vagrant cloud命令--有问题

    Cloud https://www.vagrantup.com/docs/cli/cloud.html 命令: vagrant cloud 这是用来管理与vagrant相关的任何东西的命令. 该命令的 ...

  4. virtualbox+vagrant学习-2(command cli)-7-vagrant login命令

    Login ⚠️该命令已经弃用了,别名为vagrant cloud auth login.看本博客的 格式: vagrant cloud auth login [options] 登录命令用于使用Ha ...

  5. virtualbox+vagrant学习-2(command cli)-11-vagrant PowerShell命令

    PowerShell 格式: vagrant powershell [-- extra powershell args] 这将在主机上打开PowerShell提示符,进入正在运行的vagrant机器. ...

  6. virtualbox+vagrant学习-2(command cli)-4-vagrant global-status命令

    Global Status 格式: vagrant global-status 这个命令将告诉你当前登录的用户系统上所有活跃的vagrant环境的状态. userdeMacBook-Pro:~ use ...

  7. virtualbox+vagrant学习-2(command cli)-27-vagrant connect命令

    Connect 命令: vagrant connect NAME connect命令通过启用对共享环境的访问来补充share命令.你可以在“vagrant share”部分了解有关vagrant sh ...

  8. virtualbox+vagrant学习-2(command cli)-18-vagrant ssh-config命令

    SSH Config 格式: vagrant ssh-config [options] [name|id] 这将从SSH直接将SSH配置文件的有效配置输出到正在运行的vagrant 计算机(而不是使用 ...

  9. virtualbox+vagrant学习-2(command cli)-21-vagrant up命令

    Up 格式: vagrant up [options] [name|id] 这个命令根据你的Vagrantfile文件创建和配置客户机. 这是“vagrant”中最重要的一个命令,因为它是创建任何va ...

随机推荐

  1. 悟空模式-java-工厂方法模式

    [却说那七衣仙女自受了大圣的定身法术,一周天方能解脱,各提花篮,回奏王母说道:“齐天大圣使术法困住我等,故此来迟.”王母问道:“汝等摘了多少蟠桃?”仙女道:“只有两篮小桃,三篮中桃.至后面,大桃半个也 ...

  2. egg.js-基于koa2的node.js入门

    一.Egg.JS 简介 Egg.JS是阿里开发的一套node.JS的框架,主要以下几个特点: Egg 的插件机制有很高的可扩展性,一个插件只做一件事,Egg 通过框架聚合这些插件,并根据自己的业务场景 ...

  3. atitit.js 与c# java交互html5化的原理与总结.doc

    atitit.js 与c# java交互html5化的原理与总结.doc 1. 实现html5化界面的要解决的策略1 1.1. Js交互1 1.2. 动态参数个数1 1.3. 事件监听2 2. sen ...

  4. Memory map of an object array

    Student类: package com.itheima; /* * 自动生成构造方法: * 代码区域右键 -- Source -- Generate Constructors from Super ...

  5. spring shiro 集成

    1.向spring项目中添加shiro相关的依赖 <dependency> <groupId>commons-logging</groupId> <artif ...

  6. Java 8方法引用使用指南

    [编者按]本文作者为拥有15年 Java 开发经验的资深程序员 Per-Åke Minborg,主要介绍如何灵活地解析 Java 中的方法引用.文章系国内 ITOM 管理平台 OneAPM 编译呈现. ...

  7. Web程序中打开QQ、邮箱、阿里旺旺等

    在网页中使用链接打开QQ的聊天窗口有两种方式: uin的值为qq号 <a target="_blank" href="@Url.Content("tenc ...

  8. Datastage重启服务

    使用DS开发job时,偶尔一个Job出现卡死现象,导致工作不能进展下去,有时候需要重启datastage服务才可以. DataStage在正常运行时候有以下两个主要的进程: (1)dsrpcd(DS的 ...

  9. SQL语句还原数据库并移动文件到指定路径

    用SQL语句还原数据库时如果不指定数据库文件的存储路径,则默认把数据文件和日志文件存放到与原数据库相同的文件路径中,这样可能会产生错误,比如执行下面的语句: restore database Smar ...

  10. [翻译] CHTCollectionViewWaterfallLayout

    CHTCollectionViewWaterfallLayout https://github.com/chiahsien/CHTCollectionViewWaterfallLayout CHTCo ...