2016-06-04 8 views
3

Я пытаюсь подключиться к удаленному lisp, который работает на виртуальной машине на моем ноутбуке. В slime manual, я нашел эту линиюподключение к удаленному lisp без SSH

есть способ подключения без SSH туннеля, но у него есть побочный эффект дает весь доступ к вашим LISP изображения мира, поэтому мы не будем об этом говорят

Это кажется немного устаревшим. Я бы предположил, что запуск lisp на виртуальной машине не позволит никому другому получить доступ к lisp.

Мой вопрос: Как подключиться к удаленному lisp без SSH?

[EDIT]

Я видел вопрос here, но когда я переадресовать порт, слизь не может подключиться к Суонк и дает мне следующую ошибку

Lisp connection closed unexpectedly: connection broken by remote peer 
+1

Возможный дубликат [Как я могу определить адрес, который должен прослушивать сервер с чертами?] (Http://stackoverflow.com/questions/5930230/how-can-i-define-the-address -that-swank-server-should-listen-to) – hcs

ответ

2

Вы можете использовать quicklisp и swank в виртуальной машине, затем переместите порт, который вы открываете, после this tutorial или один для среды, которую вы используете для виртуализации.

В вашей шепелявости на виртуальной машине:

Welcome to Clozure Common Lisp Version 1.11-r16635 (DarwinX8664)! 

CCL is developed and maintained by Clozure Associates. For more information 
about CCL visit http://ccl.clozure.com. To enquire about Clozure's Common Lisp 
consulting services e-mail [email protected] or visit http://www.clozure.com. 

? (ql:quickload :swank) 
To load "swank": 
    Load 1 ASDF system: 
    swank 
; Loading "swank" 
..... 
(:SWANK) 
? (swank:create-server) 
;; Swank started at port: 4005. 
4005 
? 

затем использовать шламовое подключение для подключения к виртуальной машине IP и порту, который вы выбрали для шикарного-сервера.

В другом случае для SSH также easy.if вы хотите подключить к одному порту в одной удаленной машине с помощью SSH простой способ использует опцию -L, как этот

ssh [email protected] -p22 -L local_port:localhost:remote_port 

затем использовать slime- подключитесь и подключитесь к localhost и local_port

Это настройка с использованием бродяг, только подключайте к ssh к машине для запуска swank, но вы можете ее автоматизировать.

1) Vagrantfile: с портом пересылки и ip и настройкой roswell вы можете установить непосредственно sbcl, это не важно, но с roswell легко получить пропуск и запустить в минуту, что важно здесь имеет быстрый ход.

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

Vagrant.configure(2) do |config| 

    config.vm.box = "ubuntu/trusty64" 

    config.vm.network "forwarded_port", guest: 4005, host: 4005 

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

    config.vm.provider "virtualbox" do |vb| 
     vb.name = "lisp_host" 
     vb.gui = false 
     vb.memory = "1024" 
    end 

    config.vm.provision "shell", 
    inline: "apt-get update 
    if which apt-get > /dev/null; then sudo apt-get -y install git build-essential automake libcurl4-openssl-dev;fi 
    git clone -b release https://github.com/roswell/roswell.git 
    cd roswell 
    sh bootstrap 
    ./configure 
    make 
    sudo make install 
    sudo ros setup" 
    # SHELL 

end 

2) Бродячие до драм бродячую SSH идти внутри машины

3) ROS запустить -Д #after установки SBCL вы можете использовать quicklisp в РЕПЛ

4) Подготовка Суонк

2016-06-06 12:32:55 ☆ |[email protected]| Antonios-MBP in ~/learn/lisp/stackoverflow/vagrant-env 
    ○ → vagrant ssh 
    Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-79-generic x86_64) 

    * Documentation: https://help.ubuntu.com/ 

     System information as of Mon Jun 6 10:26:56 UTC 2016 

     System load: 0.41    Processes:   84 
     Usage of /: 4.7% of 39.34GB Users logged in:  0 
     Memory usage: 12%    IP address for eth0: 10.0.2.15 
     Swap usage: 0%    IP address for eth1: 192.168.33.24 

     Graph this data and manage this system at: 
     https://landscape.canonical.com/ 

     Get cloud support with Ubuntu Advantage Cloud Guest: 
     http://www.ubuntu.com/business/services/cloud 


    Last login: Mon Jun 6 10:26:56 2016 from 10.0.2.2 
    [email protected]:~$ ros run -Q 
    WARNING: Setting locale failed. 
     Check the following variables for correct values: 
     LC_CTYPE=UTF-8 
     LANG=en_US.UTF-8 
    * (ql:quickload :swank) 
    To load "swank": 
     Load 1 ASDF system: 
     swank 
    ; Loading "swank" 
    . 
    (:SWANK) 
    * (setf swank::*loopback-interface* "192.168.33.24") ;Important to listen throught the internet IP 

    "192.168.33.24" 
    * (swank:create-server) 
    ;; Swank started at port: 4005. 

4005 

5) Затем перейдите к вам Emacs окружение:

шламовых подключения

хост 192.168.33.24 порт 4005

6), может быть другая версия принять его и перейти на

Наконец, вы можете использовать его

Я считаю, что это фокусы может работать для вас наиболее важным является Суонк :: loopback-interface

+0

, но я стараюсь избегать использования ssh – saq7

+1

Первой частью является avoifing ssh, единственное, что вам нужно сделать, - это подключиться к slime-connect, выбрать виртуальный компьютер ip и порт, который вы положили на swank-сервер, и вы превалировали вперед – anquegi

+1

@ saq7 Почему вы хотите избежать SSH? – sigjuice

 Смежные вопросы

  • Нет связанных вопросов^_^