В первую очередь, нет действительно никакой стопки графики Linux. Linux не имеет никаких возможностей графического дисплея.
Однако приложения Linux могут использовать графические дисплеи и существует много различных систем для того, чтобы сделать это. Наиболее распространенные все создаются сверх X-окон.
X сетевой протокол, потому что посреди стопки X-протокола у Вас может быть сеть как стандартный компонент. Давайте посмотрим на определенный вариант использования. Физик в Берлине хочет выполнить эксперимент в CERN в Швейцарии на одном из коллайдеров ядерной частицы. Он входит в систему удаленно и запускает программу анализа данных на одном из суперкомпьютерных массивов CERN и изображает результаты в виде графика на своем экране.
В Берлине у физика есть X-оконечное-устройство, запускающее некоторое программное обеспечение X-сервера, которое предоставляет возможность графического дисплея удаленным приложениям. Программное обеспечение X-сервера имеет кадровый буфер, который говорит с определенным драйвером устройства для определенных аппаратных средств. И программное обеспечение X-сервера говорит X-протокол. Таким образом, слои могли бы быть графическим устройством-> драйвер устройства-> кадровый буфер-> X-сервер-> X-протокол.
Затем в Швейцарии приложение соединяется с дисплеем с помощью X-протокола и отправляет, команды графического дисплея как "тянут прямоугольник" или "альфа-смешение". Приложение, вероятно, пользуется графической библиотекой высокого уровня, и та библиотека будет, вероятно, в свою очередь, основана на более низкой библиотеке уровня. Например, приложение может быть записано в Python с помощью инструментария WxWidget, который создается сверху GTK, который пользуется библиотекой под названием Каир для базовых графических команд рисования. Может также быть OpenGL также сверху Каира. Слои могли бы быть похожими на это: WxWidgets-> GTK-> Каир-> X Инструментариев-> X-протокол. Очевидно это - протокол в середине, которая соединяет вещи, и так как Linux также поддерживает сокеты UNIX, абсолютно внутренний транспорт для данных, эти два типа вещей могут работать на одной машине, если Вы хотите.
X обращается к протоколу и чему-либо фундаментальному для архитектуры, такой как X-сервер, который выполняет графический дисплей, манипулятор и клавиатуру.
GTK и QT являются двумя библиотеками GUI общего назначения, которые поддерживают окна, диалоговые окна, кнопки, и т.д.
GNOME и KDE являются двумя настольными средами, которые управляют окнами на графическом рабочем столе, обеспечивают полезные апплеты и панели кнопки Мне нравится штук. Они также позволяют нескольким приложениям связываться через X-сервер (X-оконечное-устройство), даже если приложения работают на различных удаленных компьютерах. Например, копия и вставка являются формой общения межприложения. GNOME создается сверху GTK. KDE является сборкой сверху QT. И возможно запустить приложения GNOME на рабочем столе KDE или приложения KDE на рабочем столе GNOME, потому что они все работают с тем же базовым X-протоколом.
Единственное не субъективный недостаток, который я знаю, ли то, что, когда пользователю root не установили пароль, он предоставляет доступ к однопользовательскому режиму без пароля.
Действительно безопасная машина будет в заблокированном случае, иметь начальную загрузку от отключенных съемных носителей, набор пароля BIOS для предотвращения изменений, набор пароля загрузчика для предотвращения начальной загрузки ядра cmdline от того, чтобы быть измененным (так никакое добавление init=/bin/sh
), и пароль потребовался бы, чтобы однопользовательский режим доступа.
В основном sudo дает Вам административные привилегии. Если у Вас нет корневой учетной записи, и Ваш пользователь имеет ALL=(ALL) ALL
в /etc/sudoers
, затем Ваш пользователь является суперпользователем. Это не рекомендуется, так как можно выполнить команды с использованием административных привилегий sudo
и ВАШ пароль пользователя.
Администратор ДОЛЖЕН настроить sudo
допустить некоторые команды для пользователей, но некоторые задачи администрирования будет root
только, таким образом, root
настоящий суперпользователь.
Настоящая проблема состоит в том, что полномочия являются полномочием. БОЛЬШАЯ ЧАСТЬ защищенной системы будет иметь всего 1 суперпользователя, и это root
.
Посмотрите это
В тех других дистрибутивах Вы упоминаете, желательно создать (или скорее не прокомментировать) строка в /etc/sudoers
, это дает группу wheel
неограниченный доступ, и затем добавляет себя к той группе.
Это не только эксклюзивно к Linux, но также и стандарту на *BSD, и я верю даже на Mac OS X (не уверенный в последнем, поскольку я не использую Mac regularily).
sudo
не новый invetion, это было там в течение многих лет. Возможно, Ubuntu имеет что-то даже различное в памяти или просто пытается скопировать поведение Windows.
– polemon
20.03.2011, 23:40
sudo passwd
и заблокируйте всех остальных. Как всегда, слабое звено в безопасности между стулом и клавиатурой.
– Shadur
21.03.2011, 00:00
Как mattdm указанный, на этот вопрос (по большей части) уже ответили здесь: Который является самым безопасным способом получить права пользователя root: sudo, su или вход в систему?
При использовании vi вместо visudo, чтобы отредактировать/etc/sudoers в удаленной системе и испортить синтаксис, Вы больше не можете sudo, или использовать su, поскольку нет никакого набора пароля root.
Я сделал это. Я извлек уроки из этого. Это горело.:-)
Я подозреваю, что это - в основном вопрос инерции. Когда-то давно, sudo
команда не существовала, таким образом, корневая учетная запись должна была быть настроена с паролем. Согласно "Краткой истории Sudo", ссылаемый из этой статьи Wikipedia, sudo
был сначала реализован приблизительно в 1980, но это, вероятно, не становилось широко распространенным до 1990-х.
Может все еще быть тенденция просмотреть sudo
как дополнительное удобство, а не как что-то, что должно быть в ядре того, как управляют системами.
init=/bin/sh
, Вы не можете добавитьsingle
также, таким образом, в любом случае пароль загрузчика обеспечивает Вашу защиту там. – mattdm 21.03.2011, 15:34sulogin
; это могло быть настроено по-другому. – mattdm 21.03.2011, 20:24