Ubuntu Server VM: копировать, вставить?


55

Я установил Ubuntu Server в Virtualbox просто для того, чтобы получить симпатичную маленькую оболочку. Я также установил VirtualBox «Гостевые дополнения» и установил «Общий буфер обмена: двунаправленный».

Я все еще не могу заставить работать копию. Я что-то здесь упускаю?


Я установил gpm, который поддерживает мышь в режиме сервера (без X) и позволяет копировать-вставлять с помощью мыши, но интеграция с VirtualBox все равно не работает.

Ответы:


59

Просто пробую это сам. Не удалось заставить его работать с gpm и консольным гостем.

Я сильно подозреваю, что интеграция с буфером обмена зависит от наличия работающего X-сервера в гостевой системе.

Обходной путь - установить openssh-сервер на гостевой и ssh, используя терминал от вашего хоста до гостя. Тогда у вас есть «интеграция с буфером обмена»


2
Это не плохое предложение. На самом деле это, вероятно, более эффективно / отзывчиво, чем использование окна виртуальной машины.
Букзор

1
@ Джеймс Блестящая идея !!! :)
TraderJoeChicago

Я столкнулся с этой проблемой сам, это определенно единственный способ, который я нашел, чтобы обойти это
adeleinr

2
Какой IP-адрес и порт вы бы использовали для подключения через SSH, если виртуальный ящик находится на локальном хосте?
DPSSpatial

1
На других сайтах есть много вопросов и ответов о том, как настроить Virtualbox, чтобы вы могли использовать SSH. Вот простой, который работал для меня с хостом Windows и гостевым сервером Ubuntu только для терминала внутри Virtualbox
user56reinstatemonica8

8

Попробуйте использовать PuTTY и подключиться через SSH к вашей виртуальной системе Linux.


См. Также cygwin, с apt-cyg (apt-cyg устанавливает openssh-сервер)
Джонатан

@JonathanLeaders Вам понадобится только SSH-клиент, а не сервер на хосте Windows.
17

1

Я придумал другой обходной путь. Откройте общую папку и создайте исполняемый скрипт в общей папке. Поставьте «#! / Bin / bash» (или любую другую оболочку, которую вы хотите использовать), а затем команду, которую вы хотите выполнить. Нравится:

#!/bin/bash
cp foo bar
echo 'copied foo to bar'

Просто замените "cp foo bar" на длинную сложную строку, которую вы хотите вырезать и вставить.

В зависимости от того, что вы делаете, вам может потребоваться создать сценарий, а не запускать его напрямую:

source ./myscript

РЕДАКТИРОВАТЬ: Ой! Я забыл добавить, что вы должны изменить окончание строк с Windows-стиля на конец Unix-стиля. В Emacs вы можете использовать

M-x set-buffer-file-coding-system

в то время как в VIM это будет

:set ff=unix

Сожалею!


Ирония: общая папка в VirtualBox еще сложнее настроить, чем общий буфер обмена.
ДЕНЬ

0

Вероятно, это не «решение», но именно так я смог получить некоторые данные с моей виртуальной машины на сервере Ubuntu. Я установил простой скрипт загрузки php-файла на одном из моих серверов, а затем запустил файл с помощью curl. Как только я закончил, я удалил его.


0

Если вы работаете с сервером в виртуальной машине, то почему бы просто не подключиться к виртуальной машине через ssh и использовать терминал?

Думаю об этом. Это сервер без графического интерфейса.

Если бы у вас была установлена ​​только версия сервера на реальном компьютере, а не на виртуальной машине, вы бы смогли скопировать вставку в командную строку? У вас нет многозадачности, доступной в том же TTY, если вы не используете мультиплексор, такой как «screen» или «tmux», или программное обеспечение, такое как «gpm», как предлагалось v3.xx.


-2

Я не думаю, что вы сможете копировать / вставлять в Ubuntu Server, в основном потому что:

  1. Если вы попытаетесь сделать Ctrl + V, ОС увидит это как последовательность управления ^ V.
  2. Вы не можете выполнить копирование / вставку с помощью меню, вызываемого правой кнопкой мыши, поскольку нет демонов мыши, которые поддерживают это. (Насколько я знаю в любом случае, кто-то может поправить меня.)

1
Ярлык, который я ожидал бы работать, это shift-insert. en.wikipedia.org/wiki/…
букзор

Не в этом суть. Это проблема виртуализации гостевого дополнения.
GregB

-3

Вам нужно использовать CTL+Shift+Vдля вставки, копирования как обычно в Host, и обратно в VM добавить Shift, если вы хотите копировать, так CTL+SHIFT+C(затем Cut с тем же + X).

Ура!


3
Вы неправы. CTL + SHIFT + V - это сочетание клавиш для терминала Ubuntu, но существует проблема с гостевыми дополнениями в Ubuntu 12.04, из-за которой копирование / вставка периодически прерывается в одном или обоих направлениях.
GregB
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.