Как запустить последующие оболочки как корень?

Можно проверить на новые строки в переменной очень легко в ударе с:

[[ $var = *$'\n'* ]]

Я нахожу более удобным использовать:

declare -r EOL=$'\n' TAB=$'\t' # at top of script
..
if [[ $var = *$EOL* ]]; then # to test (no field-splitting in [[ )
2
17.01.2013, 12:52
3 ответа

Вы просто открыли бы эмулятор терминала как корень.

su -l -c gnome-terminal

Это запустит "терминал гнома" как корень. Таким образом, любая вкладка в том эмуляторе терминала будет корневой.

sudo -b gnome-terminal мог работать лучше, но у меня нет человечности, чтобы проверить, работает ли она из поля.

2
27.01.2020, 22:01

На графической сессии

Когда Вы зарегистрированы графически, можно запустить приложение эмулятора графического терминала как root, поскольку другие сказали. Лучший способ сделать это обычно с gksu или gksudo, поскольку это автоматически обрабатывает изменение HOME кому: /root и (менее значительно) использует временный файл .Xauthority файл (источник). gksu frontend для обоих su и sudo и на большинстве Ose будет настроен для использования, какой бы ни каждый - более стандартный способ для администраторов запустить программы как root. (Или можно указать который с gksu --su-mode и gksu --sudo-mode, последний которого всегда эквивалентен выполнению gksudo без любого флага.)

GNOME

gksu gnome-terminal или gksudo gnome-terminal

KDE (использование kdesu или kdesudo вместо этого)

kdesu gnome-terminal или kdesudo gnome-terminal

  • Обратите внимание на то, что kdesu обычно только присутствует и в PATH в системах, где su поддерживаемый путь состоит в том, чтобы запустить программы как root. Дело не в этом на некоторых Ose GNU/Linux, таких как Ubuntu.

Xfce

gksu xfce4-terminal или gksudo xfce4-terminal

LXDE

gksu lxterminal или gksudo lxterminal

Поскольку andcoz и aurelien lambrosse сказали, выполнив Ваш эмулятор графического терминала как root делает все оболочки, которые подходят на его вкладках (и новые окна, если создано из root меню терминала) выполненный как root.

На основанной на тексте сессии

Если у Вас нет способности запустить программы GUI (вход в систему виртуальной консоли, ssh вход в систему без -X, или Вы просто не хотите к), вышеупомянутое решение не будет работать на Вас. В этом случае Вы могли бы рассмотреть использование менеджера по экрану, который позволяет Вам управлять несколькими терминалами в одном. Это эффективно достигает той же цели как a root- находящийся в собственности терминал GUI с несколькими вкладками... только без GUI.

screen наиболее распространенный менеджер по экрану. Можно использовать эти команды для управления им, после того как это работает.

Или используйте byobu, удобная обертка для экрана. byobu часто не обеспечивается в системах не-Ubuntu (хотя это может быть установлено на них). Но Вы указали на выполнение таким образом, необходимо смочь использовать ее.

A just-launched byobu screen showing a shell and various information in the last two lines. byobu работа Ubuntu 11.10. Информацию о текущем "окне" и системе показывают внизу.

В byobu очень легко создать новые "окна" и переключиться между ними. F2 делает один, F3 переключается назад, переключатели F4 вперед, и F9 поднимает интерактивное главное меню.

Существует больше значения по умолчанию byobu привязки клавиш. Здесь они:

F2    Create a new window    |  F7    Scrollback and search
F3    Go to the prev window  |  F8    Rename a window
F4    Go to the next window  |  F9    Configuration
F5    Reload profile         |  F12   Screen escape sequence
F6    Detach from session    |  'man byobu'  - byobu's help
'byobu'  - reattach session  |  'man screen' - screen's help

Источник: byobu встроенная справка, доступная в меню конфигурации F9

См. также документацию относительно веб-сайта Ubuntu для Экрана (в общественной Wiki) и Byobu (в Серверном руководстве).

2
27.01.2020, 22:01

можно запустить, например, терминальный гномом экземпляр как корень:

$ sudo gnome-terminal

Затем все вкладки в этом терминальном гномом экземпляре будут открыты как корень

0
27.01.2020, 22:01
  • 1
    , Это работает. Однако я должен спросить две вещи: 1), Почему я не могу сделать gnone-терминала, в то время как зарегистрированный как корня? Это - то, что я получаю ** (gnome-terminal:2875): WARNING **: Failed to connect to the session manager: None of the authentication protocols specified are supported g_dbus_connection_real_closed: Remote peer vanished with error: Underlying GIOStream returned 0 bytes on an async read (g-io-error-quark, 0). Exiting. Terminated –  Saad Rehman Shah 17.01.2013, 12:04
  • 2
    @SaadRehmanShah, Если это - неграфическое root вход в систему, Вы не можете запустить графические программы (не настраивая X дисплеев). Если это - графическое root вход в систему, не много, как гарантируют, будет работать правильно над актуальнейшими подобными Unix системами - Вы, как предполагается, не входите в систему графически как root, программы не тестируются при этих обстоятельствах, и много материала не будет работать. –  Eliah Kagan 17.01.2013, 12:17

Теги

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