При запуске программы в терминале терминал "зависнет", пока программа не останавливается. Путем нажатия Ctrl+c Вы закрываете свою программу и таким образом возвращаетесь к подсказке. Вы будете видеть это со всеми приложениями для GUI, попробовать Firefox, например.
При использовании некоторого другого метода, такого как Alt+F2 или нажимающий через меню программа запущена в фоновом режиме, таким образом, ничего странного не происходит (и нет никакой командной строки так или иначе).
Если Вы все еще хотите запустить приложения для GUI от терминала, добавить &
в конце Вашей команды, как так
lxpanel &
Это говорит терминалу работать lxpanel
в фоновом режиме и дайте Вам другую подсказку сразу.
От звука его Ваш брандмауэр кампуса не позволяет никакому соединению инициироваться снаружи кампуса к Вашей машине. Таким образом, для соединения с машиной, необходимо будет инициировать соединение с внутренней части.
Таким образом, необходимо будет установить некоторое соединение между машиной общежития D и некоторой внешней машиной E вне кампуса. Затем когда Вы захотите соединиться со своей машиной общежития от некоторого клиента C, соединиться с E вместо этого и настроить E так, чтобы это передало соединение.
Для соединения D→E можно использовать VPN. Это требует доступа корневого уровня и на D и на E. VPN дает возможность соединения IP между D и E, таким образом, от C Вы сможете получить доступ к любой сетевой службе на D, который E готов направить между C и D.
Решение более легкого веса состоит в том, чтобы установить соединение SSH от D и E, который только требует учетной записи с доступом через оболочку с обеих сторон (и E должен позволить SSH, конечно). От D, выполненного
ssh -R 2242:localhost:22 E sleep 999999999
Это создает перенаправление портов от E до D: любая связь, установленная с E на порте 2242, передается к D на порте 22. Порт 22 является ssh портом, поэтому когда Вы работаете ssh -p 2242 E
, это подключает Вас к D, где можно войти в систему. Для автоматизации этого можно определить псевдоним в ~/.ssh/config
как следующее (PuTTY имеет подобные настройки, консультируйтесь с его руководством):
Host dorm
UserName bob
HostName E
Port 2242
Можно направить несколько портов тот путь. Например, к также релейному порту 8042 на E для портирования 80 на D:
ssh -R 2242:localhost:22 -R 8042:localhost:80 E sleep 999999999
Необходимо будет повторно выполнить ту команду каждый раз, когда сетевое соединение запускается на D.
Если у Вас есть машина, которая не находится позади NAT (т.е. свободно доступный из Интернета), Вы можете ssh
в него от машины в кампусе и передают произвольные удаленные порты соответствующему локальному (на машине кампуса) порты через это ssh сессия - опция для OpenSSH -R
. Вы затем соединились бы с переданным портом на non-NATed машине, и ssh от компьютера кампуса туннелирует данные через кампус NAT. Немного неуклюжий, но это работает.
VPN может решить это, да.
А именно, Вам будет нужна VPN, которая позволяет перенаправление портов. У меня только есть опыт с Mullvad, и они делают это, но я уверен, что много других VPNs также обеспечивают это.
С большинством сервисов Вы, вероятно, не можете ожидать передавать произвольные порты (22 для ssh, например), таким образом, необходимо было бы использовать некоторый "случайный" порт высокого числа. Но конфигурирование ssh/ftp для этого должно быть очень простым.