# SOME DESCRIPTIVE TITLE.
# Copyright (C) 1996, 1997, 1998 Ian Jackson, Christian Schwarz, 1998-2017,
# The Debian Policy Mailing List
# This file is distributed under the same license as the Debian Policy
# Manual package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Debian Policy Manual 4.1.6.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-11 11:02-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.8.0\n"

#: ../../ch-opersys.rst:2
msgid "The Operating System"
msgstr ""

#: ../../ch-opersys.rst:7
msgid "File system hierarchy"
msgstr ""

#: ../../ch-opersys.rst:12
msgid "File System Structure"
msgstr ""

#: ../../ch-opersys.rst:14
msgid ""
"The location of all files and directories must comply with the Filesystem"
" Hierarchy Standard (FHS), version 3.0, with the exceptions noted below, "
"and except where doing so would violate other terms of Debian Policy. The"
" following exceptions to the FHS apply:"
msgstr ""

#: ../../ch-opersys.rst:19
msgid ""
"The FHS requirement that architecture-independent application-specific "
"static files be located in ``/usr/share`` is relaxed to a suggestion. In "
"particular, a subdirectory of ``/usr/lib`` may be used by a package (or a"
" collection of packages) to hold a mixture of architecture-independent "
"and architecture-dependent files. However, when a directory is entirely "
"composed of architecture-independent files, it should be located in "
"``/usr/share``."
msgstr ""

#: ../../ch-opersys.rst:28
msgid ""
"The optional rules related to user specific configuration files for "
"applications are stored in the user's home directory are relaxed. It is "
"recommended that such files start with the '``.``' character (a \"dot "
"file\"), and if an application needs to create more than one dot file "
"then the preferred placement is in a subdirectory with a name starting "
"with a '.' character, (a \"dot directory\"). In this case it is "
"recommended the configuration files not start with the '.' character."
msgstr ""

#: ../../ch-opersys.rst:37
msgid ""
"Only the dynamic linker and libc are allowed to install files in "
"``/lib64``."
msgstr ""

#: ../../ch-opersys.rst:40
msgid ""
"The requirement for object files, internal binaries, and libraries, "
"including ``libc.so.*``, to be located directly under ``/lib{,32}`` and "
"``/usr/lib{,32}`` is amended, permitting files to instead be installed to"
" ``/lib/triplet`` and ``/usr/lib/triplet``, where ``triplet`` is the "
"value returned by ``dpkg-architecture -qDEB_HOST_MULTIARCH`` for the "
"architecture of the package. Packages must not install files to any "
"triplet path other than the one matching the architecture of that "
"package; for instance, an ``Architecture:  amd64`` package containing "
"32-bit x86 libraries must not install these libraries to ``/usr/lib/i386"
"-linux-gnu``.  [#]_"
msgstr ""

#: ../../ch-opersys.rst:51
msgid ""
"Packages for 64-bit architectures must not install files in "
"``/usr/lib64`` or in a subdirectory of it."
msgstr ""

#: ../../ch-opersys.rst:54
msgid ""
"The requirement for C and C++ headers files to be accessible through the "
"search path ``/usr/include/`` is amended, permitting files to be "
"accessible through the search path ``/usr/include/triplet`` where "
"``triplet`` is as above.  [#]_"
msgstr ""

#: ../../ch-opersys.rst:59
msgid ""
"Applications may also use a single subdirectory under "
"``/usr/lib/triplet``."
msgstr ""

#: ../../ch-opersys.rst:62
msgid ""
"The execution time linker/loader, ld\\*, must still be made available in "
"the existing location under /lib or /lib64 since this is part of the ELF "
"ABI for the architecture."
msgstr ""

#: ../../ch-opersys.rst:66
msgid ""
"The requirement that ``/usr/local/share/man`` be \"synonymous\" with "
"``/usr/local/man`` is relaxed to a recommendation"
msgstr ""

#: ../../ch-opersys.rst:69
msgid ""
"The requirement that window managers with a single configuration file "
"call it ``system.*wmrc`` is removed, as is the restriction that the "
"window manager subdirectory be named identically to the window manager "
"name itself."
msgstr ""

#: ../../ch-opersys.rst:74
msgid ""
"The requirement that boot manager configuration files live in ``/etc``, "
"or at least are symlinked there, is relaxed to a recommendation."
msgstr ""

#: ../../ch-opersys.rst:78
msgid ""
"``/var/run`` is required to be a symbolic link to ``/run``, and "
"``/var/lock`` is required to be a symbolic link to ``/run/lock``."
msgstr ""

#: ../../ch-opersys.rst:81
msgid "The ``/var/www`` directory is additionally allowed."
msgstr ""

#: ../../ch-opersys.rst:83
msgid ""
"The requirement for ``/usr/local/share/color`` to exist if "
"``/usr/share/color`` exists is relaxed to a recommendation."
msgstr ""

#: ../../ch-opersys.rst:86
msgid ""
"The requirement for ``/usr/local/libqual`` to exist if ``/libqual`` or "
"``/usr/libqual`` exists (where ``libqual`` is a variant of ``lib`` such "
"as ``lib32`` or ``lib64``) is removed."
msgstr ""

#: ../../ch-opersys.rst:90
msgid ""
"On GNU/Hurd systems, the following additional directories are allowed in "
"the root filesystem: ``/hurd`` and ``/servers``.  [#]_"
msgstr ""

#: ../../ch-opersys.rst:93
msgid ""
"As an exception to the requirement for there to be no subdirectories in "
"``/usr/bin``, the ``mh`` mail-handling suite may create ``/usr/bin/mh/``,"
" as was allowed in FHS version 2.3. Other subdirectories are not allowed."
msgstr ""

#: ../../ch-opersys.rst:98
msgid ""
"The version of this document referred here can be found in the ``debian-"
"policy`` package or on `FHS (Debian copy) <https://www.debian.org/doc"
"/packaging-manuals/fhs/>`_ alongside this manual (or, if you have the "
"debian-policy installed, you can try `FHS (local copy) "
"<file:///usr/share/doc/debian-policy/fhs/>`_). The latest version, which "
"may be a more recent version, may be found on `FHS (upstream) "
"<http://refspecs.linuxfoundation.org/fhs.shtml>`_. Specific questions "
"about following the standard may be asked on the ``debian-devel`` mailing"
" list, or referred to the FHS mailing list (see the `FHS web site "
"<http://refspecs.linuxfoundation.org/fhs.shtml>`_ for more information)."
msgstr ""

#: ../../ch-opersys.rst:113
msgid "Site-specific programs"
msgstr ""

#: ../../ch-opersys.rst:115
msgid ""
"As mandated by the FHS, packages must not place any files in "
"``/usr/local``, either by putting them in the file system archive to be "
"unpacked by ``dpkg`` or by manipulating them in their maintainer scripts."
msgstr ""

#: ../../ch-opersys.rst:120
msgid ""
"However, the package may create empty directories below ``/usr/local`` so"
" that the system administrator knows where to place site-specific files. "
"These are not directories *in* ``/usr/local``, but are children of "
"directories in ``/usr/local``. These directories (``/usr/local/*/dir/``) "
"should be removed on package removal if they are empty."
msgstr ""

#: ../../ch-opersys.rst:127
msgid ""
"Note that this applies only to directories *below* ``/usr/local``, not "
"*in* ``/usr/local``. Packages must not create sub-directories in the "
"directory ``/usr/local`` itself, except those listed in FHS, section 4.9."
" However, you may create directories below them as you wish. You must not"
" remove any of the directories listed in 4.9, even if you created them."
msgstr ""

#: ../../ch-opersys.rst:134
msgid ""
"If ``/etc/staff-group-for-usr-local`` does not exist, ``/usr/local`` and "
"all subdirectories created by packages should have permissions 0755 and "
"be owned by ``root:root``.  If ``/etc/staff-group-for-usr-local`` exists,"
" ``/usr/local`` and subdirectories should have permissions 2775 (group-"
"writable and set-group-id) and be owned by ``root:staff``."
msgstr ""

#: ../../ch-opersys.rst:141
msgid ""
"Since ``/usr/local`` can be mounted read-only from a remote server, "
"``/usr/local/*/dir/`` directories must be created and removed by the "
"``postinst`` and ``prerm`` maintainer scripts and not be included in the "
"``.deb`` archive. These scripts must not fail if either of these "
"operations fail."
msgstr ""

#: ../../ch-opersys.rst:147
msgid "For example, the ``emacsen-common`` package could contain something like"
msgstr ""

#: ../../ch-opersys.rst:163
msgid "in its ``postinst`` script, and"
msgstr ""

#: ../../ch-opersys.rst:170
msgid ""
"in the ``prerm`` script. (Note that this form is used to ensure that if "
"the script is interrupted, the directory ``/usr/local/share/emacs`` will "
"still be removed.)"
msgstr ""

#: ../../ch-opersys.rst:174
msgid ""
"If you do create a directory in ``/usr/local`` for local additions to a "
"package, you should ensure that settings in ``/usr/local`` take "
"precedence over the equivalents in ``/usr``."
msgstr ""

#: ../../ch-opersys.rst:178
msgid ""
"However, because ``/usr/local`` and its contents are for exclusive use of"
" the local administrator, a package must not rely on the presence or "
"absence of files or directories in ``/usr/local`` for normal operation."
msgstr ""

#: ../../ch-opersys.rst:185
msgid "The system-wide mail directory"
msgstr ""

#: ../../ch-opersys.rst:187
msgid ""
"The system-wide mail directory is ``/var/mail``. This directory is part "
"of the base system and should not be owned by any particular mail agents."
" The use of the old location ``/var/spool/mail`` is deprecated, even "
"though the spool may still be physically located there."
msgstr ""

#: ../../ch-opersys.rst:195
msgid "``/run`` and ``/run/lock``"
msgstr ""

#: ../../ch-opersys.rst:197
msgid ""
"The directory ``/run`` is cleared at boot, normally by being a mount "
"point for a temporary file system. Packages therefore must not assume "
"that any files or directories under ``/run`` other than ``/run/lock`` "
"exist unless the package has arranged to create those files or "
"directories since the last reboot. Normally, this is done by the package "
"via an init script. See :ref:`s-writing-init` for more information."
msgstr ""

#: ../../ch-opersys.rst:205
msgid ""
"Packages must not include files or directories under ``/run``, or under "
"the older ``/var/run`` and ``/var/lock`` paths. The latter paths will "
"normally be symlinks or other redirections to ``/run`` for backwards "
"compatibility."
msgstr ""

#: ../../ch-opersys.rst:213
msgid "Users and groups"
msgstr ""

#: ../../ch-opersys.rst:218 ../../ch-opersys.rst:329
msgid "Introduction"
msgstr ""

#: ../../ch-opersys.rst:220
msgid ""
"The Debian system can be configured to use either plain or shadow "
"passwords."
msgstr ""

#: ../../ch-opersys.rst:223
msgid ""
"Some user ids (UIDs) and group ids (GIDs) are reserved globally for use "
"by certain packages. Because some packages need to include files which "
"are owned by these users or groups, or need the ids compiled into "
"binaries, these ids must be used on any Debian system only for the "
"purpose for which they are allocated. This is a serious restriction, and "
"we should avoid getting in the way of local administration policies. In "
"particular, many sites allocate users and/or local system groups starting"
" at 100."
msgstr ""

#: ../../ch-opersys.rst:232
msgid ""
"Apart from this we should have dynamically allocated ids, which should by"
" default be arranged in some sensible order, but the behavior should be "
"configurable. When maintainers choose a new hardcoded or dynamically "
"generated username for packages to use, they should start this username "
"with an underscore. This minimizes collisions with locally created user "
"accounts."
msgstr ""

#: ../../ch-opersys.rst:239
msgid ""
"Packages other than ``base-passwd`` must not modify ``/etc/passwd``, "
"``/etc/shadow``, ``/etc/group`` or ``/etc/gshadow``."
msgstr ""

#: ../../ch-opersys.rst:245
msgid "UID and GID classes"
msgstr ""

#: ../../ch-opersys.rst:247
msgid "The UID and GID numbers are divided into classes as follows:"
msgstr ""

#: ../../ch-opersys.rst:257
msgid "0-99:"
msgstr ""

#: ../../ch-opersys.rst:250
msgid ""
"Globally allocated by the Debian project, the same on every Debian "
"system. These ids will appear in the ``passwd`` and ``group`` files of "
"all Debian systems, new ids in this range being added automatically as "
"the ``base-passwd`` package is updated."
msgstr ""

#: ../../ch-opersys.rst:255
msgid ""
"Packages which need a single statically allocated uid or gid should use "
"one of these; their maintainers should ask the ``base-passwd`` maintainer"
" for ids."
msgstr ""

#: ../../ch-opersys.rst:265
msgid "100-999:"
msgstr ""

#: ../../ch-opersys.rst:260
msgid ""
"Dynamically allocated system users and groups. Packages which need a user"
" or group, but can have this user or group allocated dynamically and "
"differently on each system, should use ``adduser --system`` to create the"
" group and/or user. ``adduser`` will check for the existence of the user "
"or group, and if necessary choose an unused id based on the ranges "
"specified in ``adduser.conf``."
msgstr ""

#: ../../ch-opersys.rst:270
msgid "1000-59999:"
msgstr ""

#: ../../ch-opersys.rst:268
msgid ""
"Dynamically allocated user accounts. By default ``adduser`` will choose "
"UIDs and GIDs for user accounts in this range, though ``adduser.conf`` "
"may be used to modify this behavior."
msgstr ""

#: ../../ch-opersys.rst:282
msgid "60000-64999:"
msgstr ""

#: ../../ch-opersys.rst:273
msgid ""
"Globally allocated by the Debian project, but only created on demand. The"
" ids are allocated centrally and statically, but the actual accounts are "
"only created on users' systems on demand."
msgstr ""

#: ../../ch-opersys.rst:277
msgid ""
"These ids are for packages which are obscure or which require many "
"statically-allocated ids. These packages should check for and create the "
"accounts in ``/etc/passwd`` or ``/etc/group`` (using ``adduser`` if it "
"has this facility) if necessary. Packages which are likely to require "
"further allocations should have a \"hole\" left after them in the "
"allocation, to give them room to grow."
msgstr ""

#: ../../ch-opersys.rst:285
msgid "65000-65533:"
msgstr ""

#: ../../ch-opersys.rst:285
msgid "Reserved."
msgstr ""

#: ../../ch-opersys.rst:289
msgid "65534:"
msgstr ""

#: ../../ch-opersys.rst:288
msgid "User ``nobody``. The corresponding gid refers to the group ``nogroup``."
msgstr ""

#: ../../ch-opersys.rst:293
msgid "65535:"
msgstr ""

#: ../../ch-opersys.rst:292
msgid ""
"This value *must not* be used, because it was the error return sentinel "
"value when ``uid_t`` was 16 bits."
msgstr ""

#: ../../ch-opersys.rst:298
msgid "65536-4294967293:"
msgstr ""

#: ../../ch-opersys.rst:296
msgid ""
"Dynamically allocated user accounts. By default ``adduser`` will not "
"allocate UIDs and GIDs in this range, to ease compatibility with legacy "
"systems where ``uid_t`` is still 16 bits."
msgstr ""

#: ../../ch-opersys.rst:303
msgid "4294967294:"
msgstr ""

#: ../../ch-opersys.rst:301
msgid ""
"``(uid_t)(-2) == (gid_t)(-2)`` *must not* be used, because it is used as "
"the anonymous, unauthenticated user by some NFS implementations."
msgstr ""

#: ../../ch-opersys.rst:307
msgid "4294967295:"
msgstr ""

#: ../../ch-opersys.rst:306
msgid ""
"``(uid_t)(-1) == (gid_t)(-1)`` *must not* be used, because it is the "
"error return sentinel value."
msgstr ""

#: ../../ch-opersys.rst:312
msgid "Non-existent home directories"
msgstr ""

#: ../../ch-opersys.rst:314
msgid ""
"The canonical non-existent home directory is ``/nonexistent``.  Users who"
" should not have a home directory should have their home directory set to"
" this value."
msgstr ""

#: ../../ch-opersys.rst:318
msgid ""
"The Debian autobuilders set HOME to ``/nonexistent`` so that packages "
"which try to write to a home directory will fail to build."
msgstr ""

#: ../../ch-opersys.rst:324
msgid "Starting system services"
msgstr ""

#: ../../ch-opersys.rst:331
msgid ""
"Packages that include system services should include ``systemd`` service "
"units to start or stop those services.  See :manpage:`systemd.service(5)`"
" for details on the syntax of a service unit file.  In the common case "
"that a package includes a single system service, the service unit should "
"have the same name as the package plus the ``.service`` extension."
msgstr ""

#: ../../ch-opersys.rst:337
msgid ""
"If the package does not include a service unit (if, for example, no one "
"has yet written one), including an init script, as described below, to "
"start the service is encouraged."
msgstr ""

#: ../../ch-opersys.rst:341
msgid ""
"Packages including a service unit may optionally include an init script "
"to support other init systems.  In this case, the init script should have"
" the same name as the ``systemd`` service unit so that ``systemd`` will "
"ignore it and use the service unit instead.  Packages may also support "
"other init systems by including configuration in the native format of "
"those init systems."
msgstr ""

#: ../../ch-opersys.rst:348
msgid ""
"If a service unit is not present, ``systemd`` uses dependency information"
" contained within the init scripts and symlinks in ``/etc/rcn.d`` to "
"decide which scripts to run and in which order.  The ``sysv-rc`` runlevel"
" system for ``sysvinit`` uses the same symlinks in ``/etc/rcn.d`` to "
"decide which scripts to run and in which order at boot time and when the "
"init state (or \"runlevel\") is changed.  See the ``README.runlevels`` "
"file shipped with ``sysv-rc`` for implementation details.  Other "
"alternatives might exist."
msgstr ""

#: ../../ch-opersys.rst:356
msgid ""
"The sections below describe how to write those scripts and configure "
"those symlinks."
msgstr ""

#: ../../ch-opersys.rst:362
msgid "Writing the scripts"
msgstr ""

#: ../../ch-opersys.rst:364
msgid ""
"Init scripts are placed in ``/etc/init.d``.  In the common case that a "
"package starts a single service, they should be named "
"``/etc/init.d/package``.  They should accept one argument, saying what to"
" do:"
msgstr ""

#: ../../ch-opersys.rst:370
msgid "``start``"
msgstr ""

#: ../../ch-opersys.rst:370
msgid "start the service,"
msgstr ""

#: ../../ch-opersys.rst:373
msgid "``stop``"
msgstr ""

#: ../../ch-opersys.rst:373
msgid "stop the service,"
msgstr ""

#: ../../ch-opersys.rst:377
msgid "``restart``"
msgstr ""

#: ../../ch-opersys.rst:376
msgid ""
"stop and restart the service if it's already running, otherwise start the"
" service"
msgstr ""

#: ../../ch-opersys.rst:381
msgid "``try-restart``"
msgstr ""

#: ../../ch-opersys.rst:380
msgid ""
"restart the service if it's already running, otherwise just report "
"success."
msgstr ""

#: ../../ch-opersys.rst:385
msgid "``reload``"
msgstr ""

#: ../../ch-opersys.rst:384
msgid ""
"cause the configuration of the service to be reloaded without actually "
"stopping and restarting the service,"
msgstr ""

#: ../../ch-opersys.rst:389
msgid "``force-reload``"
msgstr ""

#: ../../ch-opersys.rst:388
msgid ""
"cause the configuration to be reloaded if the service supports this, "
"otherwise restart the service."
msgstr ""

#: ../../ch-opersys.rst:392
msgid "``status``"
msgstr ""

#: ../../ch-opersys.rst:392
msgid "report the current status of the service"
msgstr ""

#: ../../ch-opersys.rst:394
msgid ""
"The ``start``, ``stop``, ``restart``, and ``force-reload`` options should"
" be supported by all init scripts. Supporting ``status`` is encouraged. "
"The ``reload`` and ``try-restart`` options are optional."
msgstr ""

#: ../../ch-opersys.rst:398
msgid ""
"The ``init.d`` scripts must ensure that they will behave sensibly (i.e., "
"returning success and not starting multiple copies of a service) if "
"invoked with ``start`` when the service is already running, or with "
"``stop`` when it isn't, and that they don't kill unfortunately-named user"
" processes. The best way to achieve this is usually to use ``start-stop-"
"daemon`` with the ``--oknodo`` option."
msgstr ""

#: ../../ch-opersys.rst:405
msgid ""
"Be careful of using ``set -e`` in ``init.d`` scripts. Writing correct "
"``init.d`` scripts requires accepting various error exit statuses when "
"daemons are already running or already stopped without aborting the "
"``init.d`` script, and common ``init.d`` function libraries are not safe "
"to call with ``set -e`` in effect.  [#]_ For ``init.d`` scripts, it's "
"often easier to not use ``set -e`` and instead check the result of each "
"command separately."
msgstr ""

#: ../../ch-opersys.rst:413
msgid ""
"If a service reloads its configuration automatically (as in the case of "
"``cron``, for example), the ``reload`` option of the ``init.d`` script "
"should behave as if the configuration has been reloaded successfully."
msgstr ""

#: ../../ch-opersys.rst:417
msgid ""
"The ``/etc/init.d`` scripts must be treated as configuration files, "
"either (if they are present in the package, that is, in the .deb file) by"
" marking them as ``conffile``\\ s, or, (if they do not exist in the .deb)"
" by managing them correctly in the maintainer scripts (see :ref:`s"
"-config-files`). This is important since we want to give the local system"
" administrator the chance to adapt the scripts to the local system, e.g.,"
" to disable a service without de-installing the package, or to specify "
"some special command line options when starting a service, while making "
"sure their changes aren't lost during the next package upgrade."
msgstr ""

#: ../../ch-opersys.rst:428
msgid ""
"These scripts should not fail obscurely when the configuration files "
"remain but the package has been removed, as configuration files remain on"
" the system after the package has been removed. Only when ``dpkg`` is "
"executed with the ``--purge`` option will configuration files be removed."
" In particular, as the ``/etc/init.d/package`` script itself is usually a"
" ``conffile``, it will remain on the system if the package is removed but"
" not purged. Therefore, you should include a ``test`` statement at the "
"top of the script, like this:"
msgstr ""

#: ../../ch-opersys.rst:441
msgid ""
"Often there are some variables in the ``init.d`` scripts whose values "
"control the behavior of the scripts, and which a system administrator is "
"likely to want to change. As the scripts themselves are frequently "
"``conffile``\\ s, modifying them requires that the administrator merge in"
" their changes each time the package is upgraded and the ``conffile`` "
"changes. To ease the burden on the system administrator, such "
"configurable values should not be placed directly in the script. Instead,"
" they should be placed in a file in ``/etc/default``, which typically "
"will have the same base name as the ``init.d`` script. This extra file "
"should be sourced by the script when the script runs. It must contain "
"only variable settings and comments in POSIX.1-2017 ``sh`` format. It "
"must either be a ``conffile`` or a configuration file maintained by the "
"package maintainer scripts. See :ref:`s-config-files` for more details."
msgstr ""

#: ../../ch-opersys.rst:456
msgid ""
"To ensure that vital configurable values are always available, the "
"``init.d`` script should set default values for each of the shell "
"variables it uses, either before sourcing the ``/etc/default/`` file or "
"afterwards using something like the ``: ${VAR:=default}`` syntax. Also, "
"the ``init.d`` script must behave sensibly and not fail if the "
"``/etc/default`` file is deleted."
msgstr ""

#: ../../ch-opersys.rst:463
msgid ""
"Files and directories under ``/run``, including ones referred to via the "
"compatibility paths ``/var/run`` and ``/var/lock``, are normally stored "
"on a temporary filesystem and are normally not persistent across a "
"reboot. The ``init.d`` scripts must handle this correctly. This will "
"typically mean creating any required subdirectories dynamically when the "
"``init.d`` script is run. See :ref:`s-fhs-run` for more information."
msgstr ""

#: ../../ch-opersys.rst:474
msgid "Interfacing with init systems"
msgstr ""

#: ../../ch-opersys.rst:476
msgid ""
"Maintainer scripts for packages including init scripts must use ``update-"
"rc.d`` as described below to interact with the service manager for "
"requests such as enabling or disabling services.  They should use "
"``invoke-rc.d`` as described below to invoke init scripts for requests "
"such as starting and stopping service."
msgstr ""

#: ../../ch-opersys.rst:482
msgid ""
"Directly managing the ``/etc/rc?.d`` links and directly invoking the "
"``/etc/init.d/`` init scripts should be done only by packages providing "
"the init script subsystem (such as ``init-system-helpers``)."
msgstr ""

#: ../../ch-opersys.rst:489
msgid "Managing the links"
msgstr ""

#: ../../ch-opersys.rst:491
msgid ""
"The program ``update-rc.d`` is provided for package maintainers to "
"arrange for the proper creation and removal of ``/etc/rcn.d`` symbolic "
"links, or their functional equivalent if another method is being used. It"
" is intended for use in package maintainer scripts."
msgstr ""

#: ../../ch-opersys.rst:496
msgid ""
"You must not include any ``/etc/rcn.d`` symbolic links in the actual "
"archive or manually create or remove the symbolic links in maintainer "
"scripts; you must use the ``update-rc.d`` program instead. (The former "
"will fail if an alternative method of maintaining runlevel information is"
" being used.) You must not include the ``/etc/rcn.d`` directories "
"themselves in the archive either. (Only the ``init-system-helpers`` "
"package is permitted to do so.)"
msgstr ""

#: ../../ch-opersys.rst:504
msgid ""
"To get the default behavior for your package, put in your ``postinst`` "
"script::"
msgstr ""

#: ../../ch-opersys.rst:509
msgid "and in your ``postrm``::"
msgstr ""

#: ../../ch-opersys.rst:515
msgid ""
"The default behaviour is to enable autostarting your package's daemon. "
"The local administrator can override this using the command ``update-rc.d"
" package disable``.  If, however, the daemon should not be autostarted "
"unless the local administrator has explicitly requested this, instead add"
" to your ``postinst`` script::"
msgstr ""

#: ../../ch-opersys.rst:523
msgid ""
"and add a dependency on ``init-system-helpers (>= 1.50)``, which "
"introduced the ``defaults-disabled`` option.  Then the local "
"administrator can enable autostarting the daemon using the command "
"``update-rc.d package enable``."
msgstr ""

#: ../../ch-opersys.rst:528
msgid ""
"An older practice, which should not be used, was to include a line like "
"``DISABLED=yes`` in the package's ``/etc/default`` file.  The package's "
"init script would not start the service until the local system "
"administrator changed this to ``DISABLED=no``, or similar.  The problem "
"with this approach was that it hides from the init system whether or not "
"the daemon should actually be started, which leads to inconsistent and "
"confusing behavior: ``service <package> start`` could return success but "
"not start the service; services with a dependency on this service will be"
" started even though the service isn't running; and init system status "
"commands could incorrectly claim that the service was started."
msgstr ""

#: ../../ch-opersys.rst:540
msgid ""
"Note that if your package changes runlevels or priority, you may have to "
"remove and recreate the links, since otherwise the old links may persist."
" Refer to the documentation of ``update-rc.d``."
msgstr ""

#: ../../ch-opersys.rst:544
msgid ""
"For more information about using ``update-rc.d``, please consult its man "
"page, :manpage:`update-rc.d(8)`."
msgstr ""

#: ../../ch-opersys.rst:547
msgid ""
"It is easiest for packages not to call ``update-rc.d`` directly, but "
"instead use debhelper programs that add the required ``update-rc.d`` "
"calls automatically. See ``dh_installinit``, ``dh_installsystemd``, etc."
msgstr ""

#: ../../ch-opersys.rst:554
msgid "Running init scripts"
msgstr ""

#: ../../ch-opersys.rst:556
msgid ""
"The program ``invoke-rc.d`` is provided to make it easier for package "
"maintainers to properly invoke an init script, obeying runlevel and other"
" locally-defined constraints that might limit a package's right to start,"
" stop and otherwise manage services. This program may be used by "
"maintainers in their packages' scripts."
msgstr ""

#: ../../ch-opersys.rst:562
msgid ""
"The package maintainer scripts must use ``invoke-rc.d`` to invoke the "
"``/etc/init.d/*`` init scripts or equivalent instead of calling them "
"directly."
msgstr ""

#: ../../ch-opersys.rst:566
msgid ""
"By default, ``invoke-rc.d`` will pass any action requests (start, stop, "
"reload, restart...) to the ``/etc/init.d`` script, filtering out requests"
" to start or restart a service out of its intended runlevels."
msgstr ""

#: ../../ch-opersys.rst:570
msgid "Most packages will simply use:"
msgstr ""

#: ../../ch-opersys.rst:576
msgid "in their ``postinst`` and ``prerm`` scripts."
msgstr ""

#: ../../ch-opersys.rst:578
msgid ""
"A package should register its init script services using ``update-rc.d`` "
"before it tries to invoke them using ``invoke-rc.d``. Invocation of "
"unregistered services may fail."
msgstr ""

#: ../../ch-opersys.rst:582
msgid ""
"For more information about using ``invoke-rc.d``, please consult its man "
"page, :manpage:`invoke-rc.d(8)`."
msgstr ""

#: ../../ch-opersys.rst:585
msgid ""
"It is easiest for packages not to call ``invoke-rc.d`` directly, but "
"instead use debhelper programs that add the required ``invoke-rc.d`` "
"calls automatically. See ``dh_installinit``, ``dh_installsystemd``, etc."
msgstr ""

#: ../../ch-opersys.rst:592
msgid "Boot-time initialization"
msgstr ""

#: ../../ch-opersys.rst:594 ../../ch-opersys.rst:611 ../../ch-opersys.rst:966
msgid "This section has been deleted."
msgstr ""

#: ../../ch-opersys.rst:599
msgid "Example"
msgstr ""

#: ../../ch-opersys.rst:601
msgid ""
"Examples on which you can base your ``systemd`` service units are "
"available in the man page :manpage:`systemd.unit(5)`. An example on which"
" you can base your init scripts is available in the man page "
":manpage:`init-d-script(5)`."
msgstr ""

#: ../../ch-opersys.rst:609
msgid "Console messages from ``init.d`` scripts"
msgstr ""

#: ../../ch-opersys.rst:616
msgid "Cron jobs"
msgstr ""

#: ../../ch-opersys.rst:618
msgid ""
"Packages must not modify the configuration file ``/etc/crontab``, and "
"they must not modify the files in ``/var/spool/cron/crontabs``."
msgstr ""

#: ../../ch-opersys.rst:621
msgid ""
"If a package wants to install a job that has to be executed via cron, it "
"should place a file named as specified in :ref:`s-cron-files` into one or"
" more of the following directories:"
msgstr ""

#: ../../ch-opersys.rst:626
msgid "``/etc/cron.hourly``"
msgstr ""

#: ../../ch-opersys.rst:628
msgid "``/etc/cron.daily``"
msgstr ""

#: ../../ch-opersys.rst:630
msgid "``/etc/cron.weekly``"
msgstr ""

#: ../../ch-opersys.rst:632
msgid "``/etc/cron.monthly``"
msgstr ""

#: ../../ch-opersys.rst:634
msgid ""
"As these directory names imply, the files within them are executed on an "
"hourly, daily, weekly, or monthly basis, respectively. The exact times "
"are listed in ``/etc/crontab``."
msgstr ""

#: ../../ch-opersys.rst:638
msgid ""
"All files installed in any of these directories must be scripts (e.g., "
"shell scripts or Perl scripts) so that they can easily be modified by the"
" local system administrator. In addition, they must be treated as "
"configuration files."
msgstr ""

#: ../../ch-opersys.rst:643
msgid ""
"If a certain job has to be executed at some other frequency or at a "
"specific time, the package should install a file in ``/etc/cron.d`` with "
"a name as specified in :ref:`s-cron-files`. This file uses the same "
"syntax as ``/etc/crontab`` and is processed by ``cron`` automatically. "
"The file must also be treated as a configuration file. (Note that entries"
" in the ``/etc/cron.d`` directory are not handled by ``anacron``. Thus, "
"you should only use this directory for jobs which may be skipped if the "
"system is not running.)"
msgstr ""

#: ../../ch-opersys.rst:652
msgid ""
"Unlike ``crontab`` files described in the IEEE Std 1003.1-2008 (POSIX.1) "
"available from `The Open Group "
"<https://www.opengroup.org/onlinepubs/9699919799/>`_, the files in "
"``/etc/cron.d`` and the file ``/etc/crontab`` have seven fields; namely:"
msgstr ""

#: ../../ch-opersys.rst:658
msgid "Minute [0,59]"
msgstr ""

#: ../../ch-opersys.rst:660
msgid "Hour [0,23]"
msgstr ""

#: ../../ch-opersys.rst:662
msgid "Day of the month [1,31]"
msgstr ""

#: ../../ch-opersys.rst:664
msgid "Month of the year [1,12]"
msgstr ""

#: ../../ch-opersys.rst:666
msgid "Day of the week ([0,6] with 0=Sunday)"
msgstr ""

#: ../../ch-opersys.rst:668
msgid "Username"
msgstr ""

#: ../../ch-opersys.rst:670
msgid "Command to be run"
msgstr ""

#: ../../ch-opersys.rst:672
msgid ""
"Ranges of numbers are allowed. Ranges are two numbers separated with a "
"hyphen. The specified range is inclusive. Lists are allowed. A list is a "
"set of numbers (or ranges) separated by commas. Step values can be used "
"in conjunction with ranges."
msgstr ""

#: ../../ch-opersys.rst:677
msgid ""
"The scripts or ``crontab`` entries in these directories should check if "
"all necessary programs are installed before they try to execute them. "
"Otherwise, problems will arise when a package was removed but not purged "
"since configuration files are kept on the system in this situation."
msgstr ""

#: ../../ch-opersys.rst:682
msgid ""
"Any ``cron`` daemon must provide ``/usr/bin/crontab`` and support normal "
"``crontab`` entries as specified in POSIX. The daemon must also support "
"names for days and months, ranges, and step values. It has to support "
"``/etc/crontab``, and correctly execute the scripts in ``/etc/cron.d``. "
"The daemon must also correctly execute scripts in "
"``/etc/cron.{hourly,daily,weekly,monthly}``."
msgstr ""

#: ../../ch-opersys.rst:692
msgid "Cron job file names"
msgstr ""

#: ../../ch-opersys.rst:694
msgid ""
"The file name of a cron job file should normally match the name of the "
"package from which it comes."
msgstr ""

#: ../../ch-opersys.rst:697
msgid ""
"If a package supplies multiple cron job files files in the same "
"directory, the file names should all start with the name of the package "
"(possibly modified as described below) followed by a hyphen (``-``) and a"
" suitable suffix."
msgstr ""

#: ../../ch-opersys.rst:702
msgid ""
"A cron job file name must not include any period or plus characters "
"(``.`` or ``+``) characters as this will cause cron to ignore the file. "
"Underscores (``_``) should be used instead of ``.`` and ``+`` characters."
msgstr ""

#: ../../ch-opersys.rst:710
msgid "Menus"
msgstr ""

#: ../../ch-opersys.rst:712
msgid ""
"Packages shipping applications that comply with minimal requirements "
"described below for integration with desktop environments should register"
" these applications in the desktop menu, following the *FreeDesktop* "
"standard, using text files called *desktop entries*. Their format is "
"described in the *Desktop Entry Specification* at "
"https://standards.freedesktop.org/desktop-entry-spec/latest/ and "
"complementary information can be found in the *Desktop Menu "
"Specification* at https://standards.freedesktop.org/menu-spec/latest/."
msgstr ""

#: ../../ch-opersys.rst:721
msgid ""
"The desktop entry files are installed by the packages in the directory "
"``/usr/share/applications`` and the FreeDesktop menus are refreshed using"
" *dpkg triggers*. It is therefore not necessary to depend on packages "
"providing FreeDesktop menu systems."
msgstr ""

#: ../../ch-opersys.rst:726
msgid ""
"Entries displayed in the FreeDesktop menu should conform to the following"
" minima for relevance and visual integration."
msgstr ""

#: ../../ch-opersys.rst:729
msgid ""
"Unless hidden by default, the desktop entry must point to a PNG or SVG "
"icon with a transparent background, providing at least the 22×22 size, "
"and preferably up to 64×64. The icon should be neutral enough to "
"integrate well with the default icon themes. It is encouraged to ship the"
" icon in the default *hicolor* icon theme directories, or to use an "
"existing icon from the *hicolor* theme."
msgstr ""

#: ../../ch-opersys.rst:736
msgid ""
"If the menu entry is not useful in the general case as a standalone "
"application, the desktop entry should set the ``NoDisplay`` key to true, "
"so that it can be configured to be displayed only by those who need it."
msgstr ""

#: ../../ch-opersys.rst:741
msgid ""
"In doubt, the package maintainer should coordinate with the maintainers "
"of menu implementations through the *debian-desktop* mailing list in "
"order to avoid problems with categories or bad interactions with other "
"icons. Especially for packages which are part of installation tasks, the "
"contents of the ``NotShowIn``/``OnlyShowIn`` keys should be validated by "
"the maintainers of the relevant environments."
msgstr ""

#: ../../ch-opersys.rst:749
msgid ""
"Since the FreeDesktop menu is a cross-distribution standard, the desktop "
"entries written for Debian should be forwarded upstream, where they will "
"benefit to other users and are more likely to receive extra contributions"
" such as translations."
msgstr ""

#: ../../ch-opersys.rst:754
msgid ""
"If a package installs a FreeDesktop desktop entry, it must not also "
"install a Debian menu entry."
msgstr ""

#: ../../ch-opersys.rst:760
msgid "Multimedia handlers"
msgstr ""

#: ../../ch-opersys.rst:762
msgid ""
"Media types (formerly known as MIME types, Multipurpose Internet Mail "
"Extensions, RFCs 2045-2049) is a mechanism for encoding files and data "
"streams and providing meta-information about them, in particular their "
"type and format (e.g. ``image/png``, ``text/html``, ``audio/ogg``)."
msgstr ""

#: ../../ch-opersys.rst:767
msgid ""
"Registration of media type handlers allows programs like mail user agents"
" and web browsers to invoke these handlers to view, edit or display media"
" types they don't support directly."
msgstr ""

#: ../../ch-opersys.rst:771
msgid ""
"There are two overlapping systems to associate media types to programs "
"which can handle them. The *mailcap* system is found on a large number of"
" Unix systems. The *FreeDesktop* system is aimed at Desktop environments."
" In Debian, FreeDesktop entries are automatically translated in mailcap "
"entries, therefore packages already using desktop entries should not use "
"the mailcap system directly."
msgstr ""

#: ../../ch-opersys.rst:781
msgid "Registration of media type handlers with desktop entries"
msgstr ""

#: ../../ch-opersys.rst:783
msgid ""
"Packages shipping an application able to view, edit or point to files of "
"a given media type, or open links with a given URI scheme, should list it"
" in the ``MimeType`` key of the application's `desktop entry "
"<#s-menus>`_. For URI schemes, the relevant MIME types are ``x-scheme-"
"handler/*`` (e.g. ``x-scheme-handler/https``)."
msgstr ""

#: ../../ch-opersys.rst:792
msgid "Registration of media type handlers with mailcap entries"
msgstr ""

#: ../../ch-opersys.rst:794
msgid ""
"Packages that are not using desktop entries for registration should "
"install a file in :manpage:`mailcap(5)` format (RFC 1524) in the "
"directory ``/usr/lib/mime/packages/``. The file name should be the binary"
" package's name."
msgstr ""

#: ../../ch-opersys.rst:799
msgid ""
"The mailcap package provides the ``update-mime`` program, which "
"integrates these registrations in the ``/etc/mailcap`` file, using dpkg "
"triggers.  [#]_"
msgstr ""

#: ../../ch-opersys.rst:803
msgid ""
"Packages installing desktop entries should not install mailcap entries "
"for the same program, because the mailcap package already reads desktop "
"entries."
msgstr ""

#: ../../ch-opersys.rst:807
msgid ""
"Packages using these facilities *should not* depend on, recommend, or "
"suggest ``mailcap``."
msgstr ""

#: ../../ch-opersys.rst:813
msgid "Providing media types to files"
msgstr ""

#: ../../ch-opersys.rst:815
msgid ""
"The media type of a file is discovered by inspecting the file's extension"
" or its :manpage:`magic(5)` pattern, and interrogating a database "
"associating them with media types."
msgstr ""

#: ../../ch-opersys.rst:819
msgid ""
"To support new associations between media types and files, their "
"characteristic file extensions and magic patterns should be registered to"
" the IANA (Internet Assigned Numbers Authority). See "
"https://www.iana.org/assignments/media-types and RFC 6838 for details. "
"This information will then propagate to the systems discovering file "
"media types in Debian, provided by the shared-mime-info, media-types and "
"file packages. If registration and propagation can not be waited for, "
"support can be asked to the maintainers of the packages mentioned above."
msgstr ""

#: ../../ch-opersys.rst:829
msgid ""
"For files that are produced and read by a single application, it is also "
"possible to declare this association to the *Shared MIME Info* system by "
"installing in the directory ``/usr/share/mime/packages`` a file in the "
"XML format specified at https://standards.freedesktop.org/shared-mime-"
"info-spec/latest/."
msgstr ""

#: ../../ch-opersys.rst:838
msgid "Keyboard configuration"
msgstr ""

#: ../../ch-opersys.rst:840
msgid ""
"To achieve a consistent keyboard configuration so that all applications "
"interpret a keyboard event the same way, all programs in the Debian "
"distribution must be configured to comply with the following guidelines."
msgstr ""

#: ../../ch-opersys.rst:844
msgid "The following keys must have the specified interpretations:"
msgstr ""

#: ../../ch-opersys.rst:847
msgid "``<--``"
msgstr ""

#: ../../ch-opersys.rst:847
msgid "delete the character to the left of the cursor"
msgstr ""

#: ../../ch-opersys.rst:850
msgid "``Delete``"
msgstr ""

#: ../../ch-opersys.rst:850
msgid "delete the character to the right of the cursor"
msgstr ""

#: ../../ch-opersys.rst:853
msgid "``Control+H``"
msgstr ""

#: ../../ch-opersys.rst:853
msgid "emacs: the help prefix"
msgstr ""

#: ../../ch-opersys.rst:855
msgid ""
"The interpretation of any keyboard events should be independent of the "
"terminal that is used, be it a virtual console, an X terminal emulator, "
"an rlogin/telnet session, etc."
msgstr ""

#: ../../ch-opersys.rst:859
msgid ""
"The following list explains how the different programs should be set up "
"to achieve this:"
msgstr ""

#: ../../ch-opersys.rst:862
msgid "``<--`` generates ``KB_BackSpace`` in X."
msgstr ""

#: ../../ch-opersys.rst:864
msgid "``Delete`` generates ``KB_Delete`` in X."
msgstr ""

#: ../../ch-opersys.rst:866
msgid ""
"X translations are set up to make ``KB_Backspace`` generate ASCII DEL, "
"and to make ``KB_Delete`` generate ``ESC [ 3 ~`` (this is the vt220 "
"escape code for the \"delete character\" key). This must be done by "
"loading the X resources using ``xrdb`` on all local X displays, not using"
" the application defaults, so that the translation resources used "
"correspond to the ``xmodmap`` settings."
msgstr ""

#: ../../ch-opersys.rst:873
msgid ""
"The Linux console is configured to make ``<--`` generate DEL, and "
"``Delete`` generate ``ESC [ 3 ~``."
msgstr ""

#: ../../ch-opersys.rst:876
msgid ""
"X applications are configured so that ``<`` deletes left, and ``Delete`` "
"deletes right. Motif applications already work like this."
msgstr ""

#: ../../ch-opersys.rst:879
msgid "Terminals should have ``stty erase ^?`` ."
msgstr ""

#: ../../ch-opersys.rst:881
msgid ""
"The ``xterm`` terminfo entry should have ``ESC [ 3 ~`` for ``kdch1``, "
"just as for ``TERM=linux`` and ``TERM=vt220``."
msgstr ""

#: ../../ch-opersys.rst:884
msgid ""
"Emacs is programmed to map ``KB_Backspace`` or the ``stty erase`` "
"character to ``delete-backward-char``, and ``KB_Delete`` or ``kdch1`` to "
"``delete-forward-char``, and ``^H`` to ``help`` as always."
msgstr ""

#: ../../ch-opersys.rst:888
msgid ""
"Other applications use the ``stty erase`` character and ``kdch1`` for the"
" two delete keys, with ASCII DEL being \"delete previous character\" and "
"``kdch1`` being \"delete character under cursor\"."
msgstr ""

#: ../../ch-opersys.rst:892
msgid "This will solve the problem except for the following cases:"
msgstr ""

#: ../../ch-opersys.rst:894
msgid ""
"Some terminals have a ``<--`` key that cannot be made to produce anything"
" except ``^H``. On these terminals Emacs help will be unavailable on "
"``^H`` (assuming that the ``stty erase`` character takes precedence in "
"Emacs, and has been set correctly). ``M-x help`` or ``F1`` (if available)"
" can be used instead."
msgstr ""

#: ../../ch-opersys.rst:899
msgid ""
"Some operating systems use ``^H`` for ``stty erase``. However, modern "
"telnet versions and all rlogin versions propagate ``stty`` settings, and "
"almost all UNIX versions honour ``stty erase``. Where the ``stty`` "
"settings are not propagated correctly, things can be made to work by "
"using ``stty`` manually."
msgstr ""

#: ../../ch-opersys.rst:905
msgid ""
"Some systems (including previous Debian versions) use ``xmodmap`` to "
"arrange for both ``<--`` and ``Delete`` to generate ``KB_Delete``. We can"
" change the behavior of their X clients using the same X resources that "
"we use to do it for our own clients, or configure our clients using their"
" resources when things are the other way around. On displays configured "
"like this ``Delete`` will not work, but ``<--`` will."
msgstr ""

#: ../../ch-opersys.rst:913
msgid ""
"Some operating systems have different ``kdch1`` settings in their "
"``terminfo`` database for ``xterm`` and others. On these systems the "
"``Delete`` key will not work correctly when you log in from a system "
"conforming to our policy, but ``<--`` will."
msgstr ""

#: ../../ch-opersys.rst:921
msgid "Environment variables"
msgstr ""

#: ../../ch-opersys.rst:923
msgid ""
"Programs installed on the system PATH (``/bin``, ``/usr/bin``, ``/sbin``,"
" ``/usr/sbin``, or similar directories) must not depend on custom "
"environment variable settings to get reasonable defaults. This is because"
" such environment variables would have to be set in a system-wide "
"configuration file such as a file in ``/etc/profile.d``, which is not "
"supported by all shells."
msgstr ""

#: ../../ch-opersys.rst:930
msgid ""
"If a program usually depends on environment variables for its "
"configuration, the program should be changed to fall back to a reasonable"
" default configuration if these environment variables are not present. If"
" this cannot be done easily (e.g., if the source code of a non-free "
"program is not available), the program must be replaced by a small "
"\"wrapper\" shell script that sets the environment variables if they are "
"not already defined, and calls the original program."
msgstr ""

#: ../../ch-opersys.rst:938
msgid "Here is an example of a wrapper script for this purpose:"
msgstr ""

#: ../../ch-opersys.rst:950
msgid "Registering Documents using doc-base"
msgstr ""

#: ../../ch-opersys.rst:952
msgid ""
"The doc-base package implements a mechanism for handling and presenting "
"documentation. Debian packages that provides online documentation (other "
"than just manual pages) may register these documents with doc-base by "
"installing a doc-base control file in ``/usr/share/doc-base/``."
msgstr ""

#: ../../ch-opersys.rst:958
msgid ""
"Please refer to the documentation that comes with the doc-base package "
"for information and details."
msgstr ""

#: ../../ch-opersys.rst:964
msgid "Alternate init systems"
msgstr ""

#: ../../ch-opersys.rst:971
msgid "Event-based boot with upstart"
msgstr ""

#: ../../ch-opersys.rst:973
msgid ""
"The ``upstart`` event-based boot system is no longer maintained in "
"Debian, so this section has been removed."
msgstr ""

#: ../../ch-opersys.rst:977
msgid ""
"This is necessary in order to reserve the directories for use in cross-"
"installation of library packages from other architectures, as part of "
"``multiarch``."
msgstr ""

#: ../../ch-opersys.rst:982
msgid ""
"This is necessary for architecture-dependent headers file to coexist in a"
" ``multiarch`` setup."
msgstr ""

#: ../../ch-opersys.rst:986
msgid ""
"These directories are used to store translators and as a set of standard "
"names for mount points, respectively."
msgstr ""

#: ../../ch-opersys.rst:990
msgid ""
"``/lib/lsb/init-functions``, which assists in writing LSB-compliant init "
"scripts, may fail if ``set -e`` is in effect and echoing status messages "
"to the console fails, for example."
msgstr ""

#: ../../ch-opersys.rst:995
msgid ""
"Creating, modifying or removing a file in ``/usr/lib/mime/packages/`` "
"using maintainer scripts will not activate the trigger. In that case, it "
"can be done by calling ``dpkg-trigger --no-await /usr/lib/mime/packages``"
" from the maintainer script after creating, modifying, or removing the "
"file."
msgstr ""

#: ../../ch-opersys.rst:1007
msgid "Signaling that a reboot is required"
msgstr ""

#: ../../ch-opersys.rst:1013
msgid ""
"Programs can signal that a reboot is required by ``touch``\\ing ``/run"
"/reboot-required``.  It is conventional to add the name of the package(s)"
" requiring the reboot to ``/run/reboot-required.pkgs``. Programs should "
"not add a package name to ``/run/reboot-required.pkgs`` if it is already "
"present there."
msgstr ""

#: ../../ch-opersys.rst:1022
msgid ""
"The ``/run/reboot-required`` mechanism is used when a reboot is needed to"
" fully apply the changes introduced by package installation or upgrade.  "
"Typically it is the ``postinst`` maintainer script that touches ``/run"
"/reboot-required``, at the end of a successful configuration of the "
"package."
msgstr ""

#: ../../ch-opersys.rst:1028
msgid ""
"There are no guarantees provided by the ``/run/reboot-required`` "
"convention as to when or whether the requested reboot will occur."
msgstr ""

#~ msgid ""
#~ "Examples on which you can base "
#~ "your systemd integration on is available"
#~ " in the man page systemd.unit(8). An"
#~ " example on which you can base "
#~ "your ``/etc/init.d`` scripts is found in"
#~ " ``/etc/init.d/skeleton``."
#~ msgstr ""

#~ msgid ""
#~ "Note that this applies only to "
#~ "directories *below* ``/usr/local``, not *in*"
#~ " ``/usr/local``. Packages must not create"
#~ " sub-directories in the directory "
#~ "``/usr/local`` itself, except those listed "
#~ "in FHS, section 4.5. However, you "
#~ "may create directories below them as "
#~ "you wish. You must not remove any"
#~ " of the directories listed in 4.5,"
#~ " even if you created them."
#~ msgstr ""

#~ msgid ""
#~ "The doc-base package implements a "
#~ "flexible mechanism for handling and "
#~ "presenting documentation. The recommended "
#~ "practice is for every Debian package "
#~ "that provides online documentation (other "
#~ "than just manual pages) to register "
#~ "these documents with doc-base by "
#~ "installing a doc-base control file "
#~ "in ``/usr/share/doc-base/``."
#~ msgstr ""

#~ msgid ""
#~ "The ``/etc/init.d`` directory contains the "
#~ "scripts executed by ``init`` at boot "
#~ "time and when the init state (or"
#~ " \"runlevel\") is changed (see "
#~ "``init(8)``)."
#~ msgstr ""

#~ msgid ""
#~ "There are at least two different, "
#~ "yet functionally equivalent, ways of "
#~ "handling these scripts. For the sake "
#~ "of simplicity, this document describes "
#~ "only the symbolic link method. However,"
#~ " it must not be assumed by "
#~ "maintainer scripts that this method is"
#~ " being used, and any automated "
#~ "manipulation of the various runlevel "
#~ "behaviors by maintainer scripts must be"
#~ " performed using ``update-rc.d`` as "
#~ "described below and not by manually "
#~ "installing or removing symlinks. For "
#~ "information on the implementation details "
#~ "of the other method, implemented in "
#~ "the ``file-rc`` package, please refer"
#~ " to the documentation of that "
#~ "package."
#~ msgstr ""

#~ msgid ""
#~ "These scripts are referenced by symbolic"
#~ " links in the ``/etc/rcn.d`` directories."
#~ " When changing runlevels, ``init`` looks"
#~ " in the directory ``/etc/rcn.d`` for "
#~ "the scripts it should execute, where "
#~ "``n`` is the runlevel that is "
#~ "being changed to, or ``S`` for the"
#~ " boot-up scripts."
#~ msgstr ""

#~ msgid ""
#~ "The names of the links all have"
#~ " the form ``Smmscript`` or ``Kmmscript``"
#~ " where mm is a two-digit number"
#~ " and script is the name of the"
#~ " script (this should be the same "
#~ "as the name of the actual script"
#~ " in ``/etc/init.d``)."
#~ msgstr ""

#~ msgid ""
#~ "When ``init`` changes runlevel first the"
#~ " targets of the links whose names "
#~ "start with a ``K`` are executed, "
#~ "each with the single argument ``stop``,"
#~ " followed by the scripts prefixed "
#~ "with an ``S``, each with the "
#~ "single argument ``start``. (The links "
#~ "are those in the ``/etc/rcn.d`` "
#~ "directory corresponding to the new "
#~ "runlevel.) The ``K`` links are "
#~ "responsible for killing services and the"
#~ " ``S`` link for starting services "
#~ "upon entering the runlevel."
#~ msgstr ""

#~ msgid ""
#~ "For example, if we are changing "
#~ "from runlevel 2 to runlevel 3, "
#~ "init will first execute all of the"
#~ " ``K`` prefixed scripts it finds in"
#~ " ``/etc/rc3.d``, and then all of the"
#~ " ``S`` prefixed scripts in that "
#~ "directory. The links starting with ``K``"
#~ " will cause the referred-to file "
#~ "to be executed with an argument of"
#~ " ``stop``, and the ``S`` links with"
#~ " an argument of ``start``."
#~ msgstr ""

#~ msgid ""
#~ "The two-digit number mm is used"
#~ " to determine the order in which "
#~ "to run the scripts: low-numbered "
#~ "links have their scripts run first. "
#~ "For example, the ``K20`` scripts will"
#~ " be executed before the ``K30`` "
#~ "scripts. This is used when a "
#~ "certain service must be started before"
#~ " another. For example, the name "
#~ "server ``bind`` might need to be "
#~ "started before the news server ``inn``"
#~ " so that ``inn`` can set up its"
#~ " access lists. In this case, the "
#~ "script that starts ``bind`` would have"
#~ " a lower number than the script "
#~ "that starts ``inn`` so that it "
#~ "runs first:"
#~ msgstr ""

#~ msgid ""
#~ "The two runlevels 0 (halt) and 6"
#~ " (reboot) are slightly different. In "
#~ "these runlevels, the links with an "
#~ "``S`` prefix are still called after "
#~ "those with a ``K`` prefix, but "
#~ "they too are called with the "
#~ "single argument ``stop``."
#~ msgstr ""

#~ msgid ""
#~ "For more information about using "
#~ "``update-rc.d``, please consult its man "
#~ "page, update-rc.d(8)."
#~ msgstr ""

#~ msgid ""
#~ "For more information about using "
#~ "``invoke-rc.d``, please consult its man "
#~ "page, invoke-rc.d(8)."
#~ msgstr ""

#~ msgid ""
#~ "Examples on which you can base "
#~ "your systemd integration on is available"
#~ " in the man page systemd.unit(8). An"
#~ " example on which you can base "
#~ "your ``/etc/init.d`` scripts is available "
#~ "in the man page init-d-script(5)."
#~ msgstr ""

#~ msgid ""
#~ "Packages that are not using desktop "
#~ "entries for registration should install "
#~ "a file in mailcap(5) format (RFC "
#~ "1524) in the directory "
#~ "``/usr/lib/mime/packages/``. The file name "
#~ "should be the binary package's name."
#~ msgstr ""

#~ msgid ""
#~ "The media type of a file is "
#~ "discovered by inspecting the file's "
#~ "extension or its magic(5) pattern, and"
#~ " interrogating a database associating them"
#~ " with media types."
#~ msgstr ""

#~ msgid ""
#~ "``/lib/lsb/init-functions``, which assists in"
#~ " writing LSB-compliant init scripts, "
#~ "may fail if ``set          -e`` is "
#~ "in effect and echoing status messages"
#~ " to the console fails, for example."
#~ msgstr ""

#~ msgid ""
#~ "Apart from this we should have "
#~ "dynamically allocated ids, which should "
#~ "by default be arranged in some "
#~ "sensible order, but the behavior should"
#~ " be configurable."
#~ msgstr ""

#~ msgid "System run levels and ``init.d`` scripts"
#~ msgstr ""

#~ msgid ""
#~ "The ``/etc/init.d`` directory contains the "
#~ "scripts executed by ``init`` at boot "
#~ "time and when the init state (or"
#~ " \"runlevel\") is changed (see "
#~ ":manpage:`init(8)`)."
#~ msgstr ""

#~ msgid ""
#~ "``systemd`` uses dependency information "
#~ "contained within the init scripts and"
#~ " symlinks in ``/etc/rcn.d`` to decide "
#~ "which scripts to run and in which"
#~ " order. The ``sysv-rc`` runlevel "
#~ "system uses symlinks in ``/etc/rcn.d`` "
#~ "to decide which scripts to run and"
#~ " in which order; see the "
#~ "``README.runlevels`` file shipped with "
#~ "``sysv-rc`` for implementation details. "
#~ "Other alternatives might exist."
#~ msgstr ""

#~ msgid ""
#~ "Maintainer scripts must use ``update-"
#~ "rc.d`` as described below to interact"
#~ " with the service manager for "
#~ "requests such as enabling or disabling"
#~ " services. They should use ``invoke-"
#~ "rc.d`` as described below to invoke "
#~ "initscripts for requests such as "
#~ "starting and stopping service."
#~ msgstr ""

#~ msgid ""
#~ "Packages that include daemons for system"
#~ " services should place scripts in "
#~ "``/etc/init.d`` to start or stop "
#~ "services at boot time or during a"
#~ " change of runlevel. These scripts "
#~ "should be named ``/etc/init.d/package``, and"
#~ " they should accept one argument, "
#~ "saying what to do:"
#~ msgstr ""

#~ msgid ""
#~ "The ``start``, ``stop``, ``restart``, and "
#~ "``force-reload`` options should be "
#~ "supported by all scripts in "
#~ "``/etc/init.d``. Supporting ``status`` is "
#~ "recommended but not required. The "
#~ "``reload`` and ``try-restart`` options "
#~ "are optional."
#~ msgstr ""

#~ msgid ""
#~ "Maintainers should use the abstraction "
#~ "layer provided by the ``update-rc.d``"
#~ " and ``invoke-rc.d`` programs to deal"
#~ " with initscripts in their packages' "
#~ "scripts such as ``postinst``, ``prerm`` "
#~ "and ``postrm``."
#~ msgstr ""

#~ msgid ""
#~ "Directly managing the /etc/rc?.d links "
#~ "and directly invoking the ``/etc/init.d/`` "
#~ "initscripts should be done only by "
#~ "packages providing the initscript subsystem"
#~ " (such as ``sysv-rc`` and ``file-"
#~ "rc``)."
#~ msgstr ""

#~ msgid ""
#~ "The program ``update-rc.d`` is provided"
#~ " for package maintainers to arrange "
#~ "for the proper creation and removal "
#~ "of ``/etc/rcn.d`` symbolic links, or "
#~ "their functional equivalent if another "
#~ "method is being used. This may be"
#~ " used by maintainers in their "
#~ "packages' ``postinst`` and ``postrm`` scripts."
#~ msgstr ""

#~ msgid "Running initscripts"
#~ msgstr ""

#~ msgid ""
#~ "The program ``invoke-rc.d`` is provided"
#~ " to make it easier for package "
#~ "maintainers to properly invoke an "
#~ "initscript, obeying runlevel and other "
#~ "locally-defined constraints that might "
#~ "limit a package's right to start, "
#~ "stop and otherwise manage services. This"
#~ " program may be used by maintainers"
#~ " in their packages' scripts."
#~ msgstr ""

#~ msgid ""
#~ "The package maintainer scripts must use"
#~ " ``invoke-rc.d`` to invoke the "
#~ "``/etc/init.d/*`` initscripts or equivalent, "
#~ "instead of calling them directly."
#~ msgstr ""

#~ msgid ""
#~ "A package should register its initscript"
#~ " services using ``update-rc.d`` before "
#~ "it tries to invoke them using "
#~ "``invoke-rc.d``. Invocation of unregistered "
#~ "services may fail."
#~ msgstr ""

#~ msgid ""
#~ "Examples on which you can base "
#~ "your systemd integration on is available"
#~ " in the man page "
#~ ":manpage:`systemd.unit(8)`. An example on "
#~ "which you can base your ``/etc/init.d``"
#~ " scripts is available in the man "
#~ "page :manpage:`init-d-script(5)`."
#~ msgstr ""

#~ msgid ""
#~ "A number of other init systems are"
#~ " available now in Debian that can "
#~ "be used in place of sysvinit. "
#~ "Alternative init implementations must support"
#~ " running SysV init scripts as "
#~ "described at :ref:`s-sysvinit` for "
#~ "compatibility."
#~ msgstr ""

#~ msgid ""
#~ "Packages may integrate with these "
#~ "replacement init systems by providing "
#~ "implementation-specific configuration information "
#~ "about how and when to start a "
#~ "service or in what order to run"
#~ " certain tasks at boot time. However,"
#~ " any package integrating with other "
#~ "init systems must also be backwards-"
#~ "compatible with sysvinit by providing a"
#~ " SysV-style init script with the "
#~ "same name as and equivalent "
#~ "functionality to any init-specific job,"
#~ " as this is the only start-up"
#~ " configuration method guaranteed to be "
#~ "supported by all init implementations. "
#~ "An exception to this rule is "
#~ "scripts or jobs provided by the "
#~ "init implementation itself; such jobs "
#~ "may be required for an "
#~ "implementation-specific equivalent of the "
#~ "``/etc/rcS.d/`` scripts and may not have"
#~ " a one-to-one correspondence with "
#~ "the init scripts."
#~ msgstr ""

#~ msgid ""
#~ "Examples on which you can base "
#~ "your ``systemd`` service units are "
#~ "available in the man page "
#~ ":manpage:`systemd.unit(8)`. An example on "
#~ "which you can base your init "
#~ "scripts is available in the man "
#~ "page :manpage:`init-d-script(5)`."
#~ msgstr ""

#~ msgid ""
#~ "The requirement for object files, "
#~ "internal binaries, and libraries, including"
#~ " ``libc.so.*``, to be located directly "
#~ "under ``/lib{,32}`` and ``/usr/lib{,32}`` is"
#~ " amended, permitting files to instead "
#~ "be installed to ``/lib/triplet`` and "
#~ "``/usr/lib/triplet``, where ``triplet`` is the"
#~ " value returned by ``dpkg-architecture "
#~ "-qDEB_HOST_MULTIARCH`` for the architecture of"
#~ " the package. Packages may *not* "
#~ "install files to any triplet path "
#~ "other than the one matching the "
#~ "architecture of that package; for "
#~ "instance, an ``Architecture:  amd64`` package"
#~ " containing 32-bit x86 libraries may "
#~ "not install these libraries to "
#~ "``/usr/lib/i386-linux-gnu``.  [#]_"
#~ msgstr ""

#~ msgid ""
#~ "No package for a 64 bit "
#~ "architecture may install files in "
#~ "``/usr/lib64/`` or in a subdirectory of"
#~ " it."
#~ msgstr ""

#~ msgid ""
#~ "Often there are some variables in "
#~ "the ``init.d`` scripts whose values "
#~ "control the behavior of the scripts, "
#~ "and which a system administrator is "
#~ "likely to want to change. As the"
#~ " scripts themselves are frequently "
#~ "``conffile``\\ s, modifying them requires "
#~ "that the administrator merge in their"
#~ " changes each time the package is "
#~ "upgraded and the ``conffile`` changes. "
#~ "To ease the burden on the system"
#~ " administrator, such configurable values "
#~ "should not be placed directly in "
#~ "the script. Instead, they should be "
#~ "placed in a file in ``/etc/default``,"
#~ " which typically will have the same"
#~ " base name as the ``init.d`` script."
#~ " This extra file should be sourced"
#~ " by the script when the script "
#~ "runs. It must contain only variable "
#~ "settings and comments in POSIX.1-2017 "
#~ "``sh`` format. It may either be a"
#~ " ``conffile`` or a configuration file "
#~ "maintained by the package maintainer "
#~ "scripts. See :ref:`s-config-files` for "
#~ "more details."
#~ msgstr ""

#~ msgid ""
#~ "You must not include any ``/etc/rcn.d``"
#~ " symbolic links in the actual archive"
#~ " or manually create or remove the "
#~ "symbolic links in maintainer scripts; "
#~ "you must use the ``update-rc.d`` "
#~ "program instead. (The former will fail"
#~ " if an alternative method of "
#~ "maintaining runlevel information is being "
#~ "used.) You must not include the "
#~ "``/etc/rcn.d`` directories themselves in the"
#~ " archive either. (Only the ``sysvinit`` "
#~ "package may do so.)"
#~ msgstr ""

#~ msgid ""
#~ "An older practice, which should not "
#~ "be used, was to include a line "
#~ "like ``DISABLED=yes`` in the package's "
#~ "``/etc/default`` file.  The package's init "
#~ "script would not start the service "
#~ "until the local system administrator "
#~ "changed this to ``DISABLED=no``, or "
#~ "similar.  The problem with this approach"
#~ " was that it hides from the "
#~ "init system whether or not the "
#~ "daemon should actually be started, which"
#~ " leads to inconsistent and confusing "
#~ "behavior: ``service <package> start`` may "
#~ "return success but not start the "
#~ "service; services with a dependency on"
#~ " this service will be started even"
#~ " though the service isn't running; "
#~ "and init system status commands may "
#~ "incorrectly claim that the service was"
#~ " started."
#~ msgstr ""

#~ msgid ""
#~ "Packages must not install files in "
#~ "``/usr/lib64`` or in a subdirectory of"
#~ " it."
#~ msgstr ""

#~ msgid ""
#~ "The mime-support package provides the"
#~ " ``update-mime`` program, which integrates"
#~ " these registrations in the "
#~ "``/etc/mailcap`` file, using dpkg triggers."
#~ "  [#]_"
#~ msgstr ""

#~ msgid ""
#~ "Packages installing desktop entries should "
#~ "not install mailcap entries for the "
#~ "same program, because the mime-support"
#~ " package already reads desktop entries."
#~ msgstr ""

#~ msgid ""
#~ "Packages using these facilities *should "
#~ "not* depend on, recommend, or suggest"
#~ " ``mime-support``."
#~ msgstr ""

#~ msgid ""
#~ "To support new associations between "
#~ "media types and files, their "
#~ "characteristic file extensions and magic "
#~ "patterns should be registered to the "
#~ "IANA (Internet Assigned Numbers Authority)."
#~ " See https://www.iana.org/assignments/media-types "
#~ "and RFC 6838 for details. This "
#~ "information will then propagate to the"
#~ " systems discovering file media types "
#~ "in Debian, provided by the shared-"
#~ "mime-info, mime-support and file "
#~ "packages. If registration and propagation "
#~ "can not be waited for, support can"
#~ " be asked to the maintainers of "
#~ "the packages mentioned above."
#~ msgstr ""

