Obrazy serwerowe AMI nie pozwalają użytkownikowi na wielokrotne logowanie

8

Kiedy zaloguję się dwukrotnie do nowej instancji serwera Ubuntu zbudowanego dla Amazon EC2, oba okna będą dokładnie takie same. Wszystko, co wpisuję w jednym, jest replikowane w drugim.

Nigdy sobie z tym nie poradziłem, kiedy sam zbudowałem obraz. Czy ktoś o tym wie? Zwykle lubię mieć kilka otwartych okien szpachli zalogowanych na terminalu moich serwerów.

David Parks
źródło

Odpowiedzi:

2

Kiedy uruchamiasz instancję w EC2, masz opcję dostarczenia „danych użytkownika”, które są dostępne dla instancji przy pierwszym uruchomieniu (i później). Ubuntu zużywa dane użytkownika za pomocą programu o nazwie cloud-init, który jest niesamowicie potężny.

Możesz wyłączyć byobu za pomocą przyjaznej dla użytkownika funkcji cloud-config programu cloud-init.

Aby wyłączyć byobu, wystarczy podać dwuliniowe dane użytkownika:

#cloud-config
byobu_by_default: disable

Pełne szczegóły na temat inicjowania w chmurze tutaj: https://help.ubuntu.com/community/CloudInit

Składnia Cloud-config, w tym wszystkie inne niesamowite rzeczy, które możesz z tym zrobić, tutaj: http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/view/head:/doc/examples /cloud-config.txt

semioza
źródło
6

Niestety, wstępne wersje Oneiric AMI automatycznie uruchamiają polecenie screen na ssh z terminala, co powoduje, że wszystkie twoje sesje ssh korzystają z tego samego ekranu. Możesz nauczyć się korzystać z ekranu, aby oddzielić to, co widzą twoje terminale, lub ...

Możesz wyłączyć to w danej instancji, wpisując polecenie:

byobu-disable

który wyloguje cię. Następny ssh będzie działał dobrze.

Mamy nadzieję, że Oneiric nie uwzględni tego zachowania, gdy zostanie wydane, ale zbliża się nasza data.

Uwaga: ten post zawiera oświadczenia, które wyrażają moje osobiste opinie. Inni ludzie mają różne opinie.

Eric Hammond
źródło
6

Jak powiedział Eric, możesz wyłączyć byobu na hoście za pomocą:

 $ byobu-disable

Po ssh'd możesz rozłączyć się z bieżącą sesją, ale utrzymywać lokalną powłokę za pomocą.

Możesz ssh in i uruchomić bash zamiast byobu:

 $ ssh -t <hostname> bash

Możesz także uczynić to trwałym i wpływać na wszystkie sesje ssh na hostach Ubuntu / byobu (gdzie byobu> 4.0), ustawiając LC_BYOBU = 0 w twoim lokalnym ~ / .bashrc:

 $ echo "export LC_BYOBU=0" >> ~/.bashrc
 $ . ~/.bashrc
 $ ssh <hostname>
Dustin Kirkland
źródło
Jeśli używasz PuTTY, możesz zreplikować zachowanie ssh -t <hostname> bash, ustawiając Remote commandwartość na bash„Połączenie” -> „SSH”.
Kevin Pullin