diff options
author | Sn4il <sn4il@thedroth.rocks> | 2024-09-02 15:54:35 +0300 |
---|---|---|
committer | Sn4il <sn4il@thedroth.rocks> | 2024-09-02 15:54:35 +0300 |
commit | 2203e654b389586650d553251b04544a34f189bf (patch) | |
tree | 0125b69fc70a2506c53158ba2020993a5b8985b7 /lfs-12.1-sysv/chapter07/createfiles.html | |
parent | 200d528e55ca954d37769f4d143f10c9519b00e7 (diff) | |
download | sn4il-site-2203e654b389586650d553251b04544a34f189bf.tar.gz sn4il-site-2203e654b389586650d553251b04544a34f189bf.zip |
LFS 12.2
Diffstat (limited to 'lfs-12.1-sysv/chapter07/createfiles.html')
-rw-r--r-- | lfs-12.1-sysv/chapter07/createfiles.html | 261 |
1 files changed, 0 insertions, 261 deletions
diff --git a/lfs-12.1-sysv/chapter07/createfiles.html b/lfs-12.1-sysv/chapter07/createfiles.html deleted file mode 100644 index b775d46..0000000 --- a/lfs-12.1-sysv/chapter07/createfiles.html +++ /dev/null @@ -1,261 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> - <title> - 7.6. Создание основных файлов и символических ссылок - </title> - <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" /> - <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /> - <link rel="stylesheet" href="../stylesheets/lfs-print.css" type= - "text/css" media="print" /> - <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - </head> - <body class="lfs" id="lfs-12.1"> - <div class="navheader"> - <h4> - Линукс с нуля - Версия 12.1 - </h4> - <h3> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="creatingdirs.html" title= - "Создание каталогов">Пред.</a> - <p> - Создание каталогов - </p> - </li> - <li class="next"> - <a accesskey="n" href="gettext.html" title= - "Gettext-0.22.4">След.</a> - <p> - Gettext-0.22.4 - </p> - </li> - <li class="up"> - <a accesskey="u" href="chapter07.html" title= - "Глава 7. Вход в окружение Chroot и создание дополнительных временных инструментов"> - Наверх</a> - </li> - <li class="home"> - <a accesskey="h" href="../index.html" title= - "Линукс с нуля - Версия 12.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-createfiles" name="ch-tools-createfiles"></a>7.6. - Создание основных файлов и символических ссылок - </h1> - <div class="sect1" lang="ru" xml:lang="ru"> - <p> - Исторически сложилось, что Linux хранит список примонтированных - файловых систем в файле <code class="filename">/etc/mtab</code>. - Современные ядра хранят этот список внутри себя и предоставляют его - пользователю через файловую систему <code class= - "filename">/proc</code>. Чтобы удовлетворять требованиям утилит, - которые ожидают наличия <code class="filename">/etc/mtab</code>, - создайте следующую символическую ссылку: - </p> - <pre class="userinput"><kbd class= - "command">ln -sv /proc/self/mounts /etc/mtab</kbd></pre> - <p> - Создайте файл <code class="filename">/etc/hosts</code>, на который - будут ссылаться некоторые наборы тестов, а также один из файлов - конфигурации Perl: - </p> - <pre class="userinput"><kbd class= - "command">cat > /etc/hosts << EOF -<code class="literal">127.0.0.1 localhost $(hostname) -::1 localhost</code> -EOF</kbd></pre> - <p> - Чтобы пользователь <code class="systemitem">root</code> мог войти в - систему и распознавался системой, в файлах <code class= - "filename">/etc/passwd</code> и <code class= - "filename">/etc/group</code> должны быть соответствующие записи. - </p> - <p> - Создайте файл <code class="filename">/etc/passwd</code> выполнив - следующую команду: - </p> - <pre class="userinput"><kbd class= - "command">cat > /etc/passwd << "EOF" -<code class="literal">root:x:0:0:root:/root:/bin/bash -bin:x:1:1:bin:/dev/null:/usr/bin/false -daemon:x:6:6:Daemon User:/dev/null:/usr/bin/false -messagebus:x:18:18:D-Bus Message Daemon User:/run/dbus:/usr/bin/false -uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/usr/bin/false -nobody:x:65534:65534:Unprivileged User:/dev/null:/usr/bin/false</code> -EOF</kbd></pre> - <p> - Пароль пользователя <code class="systemitem">root</code> будет задан - позднее. - </p> - <p> - Создайте файл <code class="filename">/etc/group</code>, выполнив - следующую команду: - </p> - <pre class="userinput"><kbd class= - "command">cat > /etc/group << "EOF" -<code class="literal">root:x:0: -bin:x:1:daemon -sys:x:2: -kmem:x:3: -tape:x:4: -tty:x:5: -daemon:x:6: -floppy:x:7: -disk:x:8: -lp:x:9: -dialout:x:10: -audio:x:11: -video:x:12: -utmp:x:13: -cdrom:x:15: -adm:x:16: -messagebus:x:18: -input:x:24: -mail:x:34: -kvm:x:61: -uuidd:x:80: -wheel:x:97: -users:x:999: -nogroup:x:65534:</code> -EOF</kbd></pre> - <p> - Созданные группы не являются частью какого-либо стандарта — это - группы, определяемые частично требованиями конфигурации Udev в главе - 9, а частично общими соглашениями, используемыми в ряде существующих - дистрибутивов Linux. Кроме того, некоторые наборы тестов зависят от - конкретных пользователей или групп. Спецификация LSB (доступна по - адресу <a class="ulink" href= - "https://refspecs.linuxfoundation.org/lsb.shtml">https://refspecs.linuxfoundation.org/lsb.shtml</a>) - рекомендует, чтобы, помимо группы <code class= - "systemitem">root</code> с идентификатор (GID) 0 присутствовала - группа <code class="systemitem">bin</code> с GID 1. GID 5 широко - используется для группы <code class="systemitem">tty</code>, число 5 - также используется в <span class="phrase"><code class= - "filename">/etc/fstab</code></span> для файловой системы <code class= - "systemitem">devpts</code>. Все остальные имена групп и GID могут - свободно выбираться системным администратором, так как хорошо - написанные программы не зависят от номеров GID, а чаще используют - название группы. - </p> - <p> - Идентификатор 65534 используется ядром для NFS и отдельных - пользовательских пространств имен для несопоставленных пользователей - и групп (они существуют на сервере NFS или родительском пространстве - имен пользователя, но <span class="quote">«<span class="quote">не - существует</span>»</span> на локальном компьютере или в отдельном - пространстве имен). Мы присваиваем <code class= - "systemitem">nobody</code> и <code class="systemitem">nogroup</code> - для того, чтобы избежать несопоставленных идентификаторов. Другие - дистрибутивы могут обрабатывать этот идентификатор по-разному, - поэтому любая переносимая программа не должна зависеть от этого - присвоения. - </p> - <p> - Для некоторых тестов в <a class="xref" href= - "../chapter08/chapter08.html" title= - "Глава 8. Установка базового системного программного обеспечения">Глава 8</a> - требуется обычный пользователь. Добавим такого пользователя здесь и - удалим эту учетную запись в конце главы. - </p> - <pre class="userinput"><kbd class= - "command">echo "tester:x:101:101::/home/tester:/bin/bash" >> /etc/passwd -echo "tester:x:101:" >> /etc/group -install -o tester -d /home/tester</kbd></pre> - <p> - Чтобы удалить приглашение <span class="quote">«<span class="quote">I - have no name!</span>»</span>, запустите новую оболочку. Поскольку - файлы <code class="filename">/etc/passwd</code> и <code class= - "filename">/etc/group</code> были созданы, разрешение имен - пользователей и групп теперь будет работать: - </p> - <pre class="userinput"><kbd class= - "command">exec /usr/bin/bash --login</kbd></pre> - <p> - Программы <span class="command"><strong>login</strong></span>, - <span class="command"><strong>agetty</strong></span>, <span class= - "command"><strong>init</strong></span> (и другие) используют ряд - журналов для записи такой информации, как кто и когда входил в - систему. Однако эти программы не будут записывать данные в журналы, - если они еще не существуют. Инициализируйте журналы и предоставьте им - соответствующие разрешения: - </p> - <pre class="userinput"><kbd class= - "command">touch /var/log/{btmp,lastlog,faillog,wtmp} -chgrp -v utmp /var/log/lastlog -chmod -v 664 /var/log/lastlog -chmod -v 600 /var/log/btmp</kbd></pre> - <p> - В файл <code class="filename">/var/log/wtmp</code> записываются все - входы и выходы из системы. В файл <code class= - "filename">/var/log/lastlog</code> записывается время последнего - входа каждого пользователя в систему. В файл <code class= - "filename">/var/log/faillog</code> записываются неудачные попытки - входа в систему. В файл <code class="filename">/var/log/btmp</code> - также записываются неудачные попытки входа в систему. - </p> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - В файл <code class="filename">/run/utmp</code> записываются - пользователи, которые в данный момент вошли в систему. Он создаётся - динамически, в процессе выполнения сценариев загрузки. - </p> - </div> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Файлы <span class="phrase"><code class= - "filename">utmp</code>,</span> <code class="filename">wtmp</code>, - <code class="filename">btmp</code> и <code class= - "filename">lastlog</code> используют для временных меток - 32-разрядные целые числа, значения счетчика достигнет максимума (2 - 147 483 647) 19 января 2038 года ("проблема 2038 года"). Многие - пакеты перестали их использовать, другие же, собираются прекратить - их использование. Вероятно, лучше считать их устаревшими. - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="creatingdirs.html" title= - "Создание каталогов">Пред.</a> - <p> - Создание каталогов - </p> - </li> - <li class="next"> - <a accesskey="n" href="gettext.html" title= - "Gettext-0.22.4">След.</a> - <p> - Gettext-0.22.4 - </p> - </li> - <li class="up"> - <a accesskey="u" href="chapter07.html" title= - "Глава 7. Вход в окружение Chroot и создание дополнительных временных инструментов"> - Наверх</a> - </li> - <li class="home"> - <a accesskey="h" href="../index.html" title= - "Линукс с нуля - Версия 12.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> |