Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e197fa131d | ||
|
|
4015fe4fa7 |
101
s4a.tex
101
s4a.tex
@@ -1746,8 +1746,109 @@ LVM, RAID и multipath). Если они вам не~нужны, вы легко
|
|||||||
(впрочем, необходимость в этом возникает достаточно редко).
|
(впрочем, необходимость в этом возникает достаточно редко).
|
||||||
\item
|
\item
|
||||||
\hreftt{http://0pointer.de/public/systemd-man/sysctl.d.html}{/etc/sysctl.d/*.conf}:
|
\hreftt{http://0pointer.de/public/systemd-man/sysctl.d.html}{/etc/sysctl.d/*.conf}:
|
||||||
|
каталог для задания параметров ядра (+sysctl+). Дополняет
|
||||||
|
классический конфигурационный файл +/etc/sysctl.conf+.
|
||||||
|
\item
|
||||||
|
\hreftt{http://0pointer.de/public/systemd-man/tmpfiles.d.html}{/etc/tmpfiles.d/*.conf}:
|
||||||
|
каталог для управления настройками временных файлов (systemd
|
||||||
|
обеспечивает создание, очистку и удаление временных файлов и
|
||||||
|
каталогов, как во время загрузки, так и во время работы
|
||||||
|
системы).
|
||||||
|
\item
|
||||||
|
\hreftt{http://0pointer.de/public/systemd-man/binfmt.d.html}{/etc/binfmt.d/*.conf}:
|
||||||
|
каталог для регистрации дополнительных бинарных форматов
|
||||||
|
(например, форматов Java, Mono, WINE).
|
||||||
|
\item
|
||||||
|
\hreftt{http://0pointer.de/public/systemd-man/os-release.html}{/etc/os-release}:
|
||||||
|
стандарт для файла, обеспечивающего идентификацию дистрибутива и
|
||||||
|
его версии. Сейчас различные дистрибутивы используют для этого
|
||||||
|
разные файлы (например, +/etc/fedora-release+ в Fedora), и
|
||||||
|
поэтому для решения такой простой задачи, как вывод имени
|
||||||
|
дистрибутива, необходимо использовать базу данных, содержащую
|
||||||
|
перечень возможных названий файлов. Проект LSB попытался создать
|
||||||
|
такой инструмент~---
|
||||||
|
\hreftt{http://refspecs.freestandards.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/lsbrelease.html}{lsb\_release}~---
|
||||||
|
однако реализация такой простой вещи через скрипт на Python'е
|
||||||
|
является не~самым оптимальным решением. Чтобы исправить
|
||||||
|
сложившуюся ситуацию, мы решили перейти к единому простому
|
||||||
|
формату представления этой информации.
|
||||||
|
\item
|
||||||
|
\hreftt{http://0pointer.de/public/systemd-man/machine-id.html}{/etc/machine-id}:
|
||||||
|
файл с идентификатором данного компьютера (перекрывает
|
||||||
|
аналогичный идентификатор D-Bus). Гарантируется, что в любой
|
||||||
|
системе, использующей systemd, этот файл будет существовать и
|
||||||
|
содержать корректную информацию (если его нет, он автоматически
|
||||||
|
создается при загрузке). Мы вынесли этот файл из-под эгиды
|
||||||
|
D-Bus, чтобы упростить решение множества задач, требующих
|
||||||
|
наличия уникального и постоянного идентификатора компьютера.
|
||||||
|
\item
|
||||||
|
\hreftt{http://0pointer.de/public/systemd-man/machine-info.html}{/etc/machine-info}:
|
||||||
|
новый конфигурационный файл, хранящий информации о полном имени
|
||||||
|
(описательном) хоста (например, <<Компьютер Леннарта>>) и
|
||||||
|
значке, которым он будет обозначаться в графических оболочках,
|
||||||
|
работающих с сетью (раньше этот значок мог определяться,
|
||||||
|
например, файлом +/etc/favicon.png+). Данный конфигурационный
|
||||||
|
файл обслуживается демоном
|
||||||
|
\hreftt{http://www.freedesktop.org/wiki/Software/systemd/hostnamed}{systemd-hostnamed}.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
Одна из важнейших для нас задач~--- убедить \emph{вас} использовать эти новые
|
||||||
|
конфигурационные файлы в ваших инструментах для настройки системы. Если ваши
|
||||||
|
конфигурационные фронтенды будут использовать новые файлы, а не~их старые
|
||||||
|
аналоги, это значительно облегчит портирование таких фронтендов между
|
||||||
|
дистрибутивами, и вы внесете свой вклад в стандартизацию Linux, и в конечном
|
||||||
|
счете упростится жизнь и у администраторов, и для пользователей. Разумеется, на
|
||||||
|
текущий момент эти файлы полностью поддерживаются только дистрибутивами,
|
||||||
|
основанными на systemd, но уже сейчас в их число входят практически все ключевые
|
||||||
|
дистрибутивы, \href{http://www.ubuntu.com/}{за исключением
|
||||||
|
одного}\footnote{Прим. перев.: В конце 2010~года энтузиаст Andrew Edmunds
|
||||||
|
\href{http://cgit.freedesktop.org/systemd/commit/?id=858dae181bb5461201ac1c04732d3ef4c67a0256}{добавил}
|
||||||
|
в systemd базовую поддержку Ubuntu и
|
||||||
|
\href{https://wiki.ubuntu.com/systemd}{подготовил} соответствующие пакеты,
|
||||||
|
однако его инициатива не~встретила поддержки среди менеджеров Canonical. На
|
||||||
|
момент написания этих строк (май 2011 года) проект остается заброшенным уже пять
|
||||||
|
месяцев (с середины декабря 2010~г.).}. В этом есть что-то от <<пролемы курицы и
|
||||||
|
яйца>>: стандарт становится начинает работать как стандарт только тогда, когда
|
||||||
|
ему начинают следовать. В будущем мы намерены аккуратно форсировать процесс
|
||||||
|
перехода на новые конфигурационные файлы: поддержка старых файлов будет удалена
|
||||||
|
из systemd. Разумеется, этот процесс будет идти медленно, шаг за шагом. Но
|
||||||
|
конечной его целью является переход всех дистрибутивов на единый набор базовых
|
||||||
|
конфигурационных файлов.
|
||||||
|
|
||||||
|
Многие из этих файлов используются не~только программами для настройки системы,
|
||||||
|
но и апстримными проектами. Например, мы предлагаем проектам Mono, Java, WINE и
|
||||||
|
другим помещать конфигурацию для регистрации своих бинарных форматов в
|
||||||
|
+/etc/binfmt.d/+ средствами их собственной сборочной системы. Специфичные для
|
||||||
|
дистрибутивов механизмы поддержки бинарных форматов больше не~нужны, и ваш
|
||||||
|
проект будет работать одинаково хорошо во всех дистрибутивах. Аналогичное
|
||||||
|
предложение мы обращаем и ко всем разработчикам программ, которым требуется
|
||||||
|
автоматическое создание/очистка временных файлов и каталогов при загрузке,
|
||||||
|
например, в каталоге +/run+ (\href{http://lwn.net/Articles/436012/}{ранее
|
||||||
|
известном} как +/var/run+). Таким проектам достаточно просто поместить
|
||||||
|
соответствующий конфигурационный файл в +/etc/tmpfiles.d/+, тоже средствами
|
||||||
|
собственной сборочной системы. Помимо прочего, подобный подход позволит
|
||||||
|
увеличить скорость загрузки, так как, в отличие от SysV, не~требует множества
|
||||||
|
shell-скриптов, выполняющих тривиальные задачи (регистрация бинарных форматов,
|
||||||
|
удаление/создание временных файлов/каталогов и т.п.). И пример того случая,
|
||||||
|
когда апстримная поддержка стандартной конфигурации дала бы огромные
|
||||||
|
преимущества~--- X11 (и его аналоги) могли бы устанавливать раскладку клавиатуры
|
||||||
|
на основании данных из +/etc/vconsole.conf+.
|
||||||
|
|
||||||
|
Разумеется, я понимаю, что отнюдь не~всех полностью устроят выбранные нами имена
|
||||||
|
и форматы конфигурационных файлов. Но нам все же нужно было что-то выбрать, и мы
|
||||||
|
выбрали то, что должно устроить большинство людей. Форматы конфигурационных
|
||||||
|
файлов максимально просты, и их можно легко читать и записывать даже из
|
||||||
|
shell-скриптов. (Эх, а ведь +/etc/bikeshed.conf+ могло бы быть неплохим именем
|
||||||
|
для файла конфигурации!)
|
||||||
|
|
||||||
|
\textbf{Помогите нам стандартизировать Linux! Используйте новые конфигурационные
|
||||||
|
файлы! Поддерживайте их в апстриме, поддерживайте их во всех дистрибутивах!}
|
||||||
|
|
||||||
|
Да, и если у вас возникнет такой вопрос: да, все эти файлы так или иначе
|
||||||
|
обсуждались с разными разработчиками из различных дистрибутивов. И некоторые из
|
||||||
|
этих разработчиков планируют обеспечить поддержку новой конфигурации даже в
|
||||||
|
системах без systemd.
|
||||||
|
|
||||||
\end{document}
|
\end{document}
|
||||||
|
|
||||||
vim:ft=tex:tw=80:spell:spelllang=ru
|
vim:ft=tex:tw=80:spell:spelllang=ru
|
||||||
|
|||||||
Reference in New Issue
Block a user