Я, кажется, “теряю” эту подсказку.Что происходит?

Дать пример использования пространства имен, в SELinux (MLS или Строгий) включило системы. Пространство имен обычно используется для создания человека /tmp и или /home каталоги для каждого пользователя. Те каталоги видимы только к: пользователь, пользователи с той же маркировкой, ядром и пользователями с привилегированным доступом. Редактор пространства имен /tmp каталог маркирован SELinux-MLS для соответствия маркировке SELinux-MLS пользователя. В этом сценарии /tmp каталог, который видит пользователь, может действительно быть смонтирован где-нибудь кроме /tmp (/var/user-tmp). Пользователь однако только видит /tmp с файлами, которые создаются из-за действия пользователя. пользователь никогда не будет видеть файлов в /tmp это - продукт других пользователей.

2
23.07.2014, 17:06
2 ответа

во избежание ввода пароля SSH promts:

sudo apt-get install sshpass

Альтернативным средством для установки пакета является dpkg

загрузка пакета sshpass deb

и его установка:

sudo dpkg -i sshpass_1.04-1_amd64.deb

pattern использовать следующим образом:

sshpass -p mypassword ssh user @ server

при необходимости избежать sudo пароля promt:

ssh uder@server-abc.com «echo sudo_password | sudo -S ./script.sh»

Объяснение последнего: Если sudo выполняется после ssh, он никогда не получает пароль для sudo на удаленном сервере, поэтому решение заключается в использовании -S и передаче пароля для sudo, как описано выше.

-121--210180-

Выполняется фоновое заземление приложения, и приложение генерирует выходные данные. Ваша подсказка все еще там, она просто содержит дополнительные вещи, которые будут показаны.

Например:

$ ( sleep 1 && echo hello ) &
[1] 24764
$ █

А затем после задержки на 1 секунду я получаю:

$ ( sleep 1 && echo hello ) &
[1] 24764
$ hello
█

эхо эхо просто записывает выходной сигнал на ваш терминал и появляется там, где в данный момент находится ваш курсор. Оболочка не знает, что вывод был показан. Вы можете продолжить ввод, как если бы этого вывода не было (просто становится трудно читать).

Однако чистым решением было бы перенаправление выходных данных:

nohup python tserver.py >/dev/null 2>&1 &
-121--125849-

Хотя вы и запустили программу в фоновом режиме, указав & , выходные данные фонового процесса по-прежнему направляются на выход текущего терминала.

Это означает, что ваше приглашение перезаписывается чем-то вроде echo '\r\n ' (перезаписывает текущую строку в случае, если ваше следующее приглашение полностью исчезнет) или echo «Sometherstuff» (печатает Sometherstuff infront вашего приглашения и затем переходит к следующей строке терминала).

Если нажать ENTER , вы просто введете новую строку, которая приведет к повторной печати приглашения.

1
27.01.2020, 21:57

Вы запускаете приложение в фоновом режиме, и приложение генерирует выходные данные. Ваша подсказка все еще там, просто отображается дополнительная информация.

Например:

$ ( sleep 1 && echo hello ) &
[1] 24764
$ █

А затем после задержки в 1 секунду я получаю:

$ ( sleep 1 && echo hello ) &
[1] 24764
$ hello
█

echo просто записывает вывод на ваш терминал и появляется там, где в данный момент находится ваш курсор. Оболочка не знает, что вывод был показан. Вы можете продолжать вводить текст, как если бы этого вывода не было (его просто становится трудно читать).

Однако чистым решением этой проблемы было бы перенаправление вывода:

nohup python tserver.py >/dev/null 2>&1 &
4
27.01.2020, 21:57

Теги

Похожие вопросы