- Usr local src linux
- Для чего предназначена папка «/ usr / local / src»?
- Для чего предназначена папка «/usr /local /src»?
- 2 ответа
- Фундаментальные основы Linux. Часть II: Первые шаги в изучении интерфейса командной строки
- Глава 9. Дерево директорий Linux
- Стандарт иерархии файловой системы
- Страница руководства man hier
- Корневая директория /
- Директории для хранения бинарных файлов
- Директории для хранения файлов конфигурации
- Директории для хранения данных
- Директории в оперативной памяти
- Директория системных ресурсов Unix /usr
- Директория для изменяемых данных /var
- Практическое задание: дерево директорий Linux
- Корректная процедура выполнения практического задания: дерево директорий Linux
Usr local src linux
/usr usually contains by far the largest share of data on a system. Hence, this is one of the most important directories in the system as it contains all the user binaries, their documentation, libraries, header files, etc. X and its supporting libraries can be found here. User programs like telnet, ftp, etc. are also placed here. In the original Unix implementations, /usr was where the home directories of the users were placed (that is to say, /usr/someone was then the directory now known as /home/someone). In current Unices, /usr is where user-land programs and data (as opposed to ‘system land’ programs and data) are. The name hasn’t changed, but it’s meaning has narrowed and lengthened from «everything user related» to «user usable programs and data». As such, some people may now refer to this directory as meaning ‘User System Resources’ and not ‘user’ as was originally intended.
/usr is shareable, read-only data. That means that /usr should be shareable between various FHS-compliant hosts and must not be written to. Any information that is host-specific or varies with time is stored elsewhere. Large software packages must not use a direct subdirectory under the /usr hierarchy.
Another large subdirectory structure begins here, containing libraries, executables, docs, fonts and much more concerning the X Window System. Its inclusion here is somewhat inconsistent and so is the difference between ‘/usr’ and ‘/usr/X11R6’ directories. One would assume that programs that run on X only have their files in the ‘/usr/X11R6’ hierarchy, while the others use ‘/usr’. Regrettably, it isn’t so. KDE and GNOME put their files in the ‘/usr’ hierarchy, whereas the window manager Window Maker uses ‘/usr/X11R6’. Documentation files for X11R6 are not in ‘/usr/X11R6/doc’, but primarily in ‘/usr/X11R6/lib/X11/doc’. This mess is due to the fact that in contrast to other operating systems, the graphical desktop isn’t an integral part of the system. Linux is still primarily used on servers, where graphical systems don’t make sense.
This hierarchy is reserved for the X Window System, version 11 release 6, and related files. To simplify matters and make XFree86 more compatible with the X Window System on other systems, the following symbolic links must be present if /usr/X11R6 exists:
/usr/bin/X11 -> /usr/X11R6/bin /usr/lib/X11 -> /usr/X11R6/lib/X11 /usr/include/X11 -> /usr/X11R6/include/X11
In general, software must not be installed or managed via the above symbolic links. They are intended for utilization by users only. The difficulty is related to the release version of the X Window System — in transitional periods, it is impossible to know what release of X11 is in use.
XFree86 system binaries. These are necessary for the initialisation, configuration and running of the X windowing system. X, xf86config, xauth, xmodmap and even xpenguin are located here.
XFree86 system header files. There are required for the compilation of some applications that utilise the X toolkit.
XFree86 system libraries.
XFree86 system modules. These are the modules that X loads upon startup. Without these modules video4linux, DRI and GLX extensions and drivers for certain input devices would cease to function.
XFree86 system fonts. Fonts that are utilised by ‘xfs’ (the X Font Server) and programs of that ilk.
This directory contains the vast majority of binaries on your system. Executables in this directory vary widely. For instance vi, gcc, gnome-session and mozilla and are all found here.
The central documentation directory. Documentation is actually located in /usr/share/doc and linked from here.
Theoretically, that’s another directory for configuration files. Virtually unused now.
Once upon a time, this directory contained network games files. Rarely used now.
The directory for ‘header files’, needed for compiling user space source code.
Application specific header files.
This directory used to contain the files for the info documentation system. Now they are in ‘/usr/share/info’.
This directory contains program libraries. Libraries are collections of frequently used program routines.
The original idea behind ‘/usr/local’ was to have a separate (‘local’) ‘/usr’ directory on every machine besides ‘/usr’, which might be just mounted read-only from somewhere else. It copies the structure of ‘/usr’. These days, ‘/usr/local’ is widely regarded as a good place in which to keep self-compiled or third-party programs. The /usr/local hierarchy is for use by the system administrator when installing software locally. It needs to be safe from being overwritten when the system software is updated. It may be used for programs and data that are shareable amongst a group of hosts, but not found in /usr. Locally installed software must be placed within /usr/local rather than /usr unless it is being installed to replace or upgrade software in /usr.
It once held the man pages. It has been moved to /usr/share/man.
This directory contains programs for administering a system, meant to be run by ‘root’. Like ‘/sbin’, it’s not part of a user’s $PATH. Examples of included binaries here are chroot, useradd, in.tftpd and pppconfig.
This directory contains ‘shareable’, architecture-independent files (docs, icons, fonts etc). Note, however, that ‘/usr/share’ is generally not intended to be shared by different operating systems or by different releases of the same operating system. Any program or package which contains or requires data that doesn’t need to be modified should store that data in ‘/usr/share’ (or ‘/usr/local/share’, if installed locally). It is recommended that a subdirectory be used in /usr/share for this purpose.»
Location of package specific documentation files. These directories often contain useful information that might not be in the man pages. They may also contain templates and configuration files for certain utilities making configuration that much easier.
Location of ‘info’ pages. This style of documentation seems to be largely ignored now. Manual pages are in far greater favour.
Manual pages. They are organised into 8 sections, which are explained below.
man1: User programs Manual pages that describe publicly accessible commands are contained in this chapter. Most program documentation that a user will need to use is located here. man2: System calls This section describes all of the system calls (requests for the kernel to perform operations). man3: Library functions and subroutines Section 3 describes program library routines that are not direct calls to kernel services. This and chapter 2 are only really of interest to programmers. man4: Special files Section 4 describes the special files, related driver functions, and networking support available in the system. Typically, this includes the device files found in /dev and the kernel interface to networking protocol support. man5: File formats The formats for many data files are documented in the section 5. This includes various include files, program output files, and system files. man6: Games This chapter documents games, demos, and generally trivial programs. Different people have various notions about how essential this is. man7: Miscellaneous Manual pages that are difficult to classify are designated as being section 7. The troff and other text processing macro packages are found here. man8: System administration Programs used by system administrators for system operation and maintenance are documented here. Some of these programs are also occasionally useful for normal users.
The ‘linux’ sub-directory holds the Linux kernel sources, header-files and documentation.
RPM provides a substructure for building RPMs from SRPMs. Organisation of this branch is fairly logical with packages being organised according to a package’s architecture.
A temporary store for RPM binary files that are being built from source code.
/usr/src/RPM/RPMS/athlon, /usr/src/RPM/RPMS/i386, /usr/src/RPM/RPMS/i486, /usr/src/RPM/RPMS/i586, /usr/src/RPM/RPMS/i686, /usr/src/RPM/RPMS/noarch
These directories contain architecture dependant RPM source files.
This directory contains the source TAR files, patches, and icon files for software to be packaged.
RPM SPEC files. A SPEC file is a file that contains information as well as scripts that are necessary to build a package.
Contains the source RPM files which result from a build.
Contains the source code for the Linux kernel.
The last kernel source configuration. This file is normally created through the ‘make config’, ‘make menuconfig’ or ‘make xconfig’ steps during kernel compilation.
‘make dep’ checks the dependencies of the selections you made when you created your .config file. It ensures that the required files can be found and it builds a list that is to be used during compilation. Should this process be successful these two files are created.
A partial credits-file of people that have contributed to the Linux project. It is sorted by name and formatted to allow easy grepping and beautification by scripts. The fields are: name (N), email (E), web-address (W), PGP key ID and fingerprint (P), description (D), and snail-mail address (S).
List of maintainers and details on how to submit kernel changes.
Contains data necessary for compilation of a working kernel. It allows developers and end-users to compile a kernel with a few simple steps (ie. make dep, make clean, make bzImage, make modules, make modules_install) and also not have to worry about re-compiling everything from scratch if parts of it have already been done so and are up to date.
These are the release notes for Linux version 2.4. Read them carefully, as they tell you what this is all about, explain how to install the kernel, and what to do if something goes wrong.
A suggested procedure for reporting Linux bugs. You aren’t obliged to use the bug reporting format, it is provided as a guide to the kind of information that can be useful to developers — no more.
This file contains rules which are shared between multiple Makefiles.
Contains documentation that may be necessary in order to re-compile a kernel. However, it also provides quite a lot of information about your Linux system in general as well. For those who wish to seek further information on the contents of this directory you may consult the /usr/src/linux/Documentation/00-INDEX file. Further, more detailed documentation may be found in /usr/src/linux/Documentation/Docbook. Of course, the contents of this directory is written in Docbook but may be converted to pdf, ps or html using the make targets of ‘pdfdocs’, ‘psdocs’ and ‘htmldocs’ respectively.
User space temporary files. This directory is not found on modern distributions at all and was most likely created as a consequence of Linux’s UNIX heritage.
Источник
Для чего предназначена папка «/ usr / local / src»?
Я хотел поместить свои рабочие файлы (код) в /usr/local/src , но я думаю, что это уже папка с другим смысловым смыслом.
Что это? Должен ли я помещать туда исходный код или есть лучшее место?
Изменить – я единственный пользователь и администратор машины, и я не хочу использовать мой домашний каталог, потому что он находится на диске NFS.
Согласно FHS , /usr – это место, где размещены элементы на основе распределения, и /usr/local – это место, где вы разместите свои локальные изменения ( /usr/local будет пустым после базовой установки). Например, если вы хотите перекомпилировать пакет Ubuntu из исходного кода, их менеджер пакетов разместит источник для пакета в /usr/src/
EDIT: Короткий ответ, да, введите ваш код в /usr/local/src .
Это зависит от того, что вы делаете с этим источником. Если это для справки, да, это хорошее место. /usr/local зарезервировано для программного обеспечения, установленного локально sysadmin. Итак, если вы хотите установить программное обеспечение вместе с исходными файлами (для других программ для использования или для просмотра людьми), это хорошо.
Однако это не значит, что это рабочее пространство . Поскольку он является локальным , вы можете делать все, что хотите, конечно, но это не предназначено для размещения вашего дерева разработки программного обеспечения.
Это должно быть действительно в репозитории кода (возможно, в /srv/sourcerepo или что-то в этом роде), а затем разработчики будут проверять свои собственные рабочие копии в своих домашних каталогах.
Источник
Для чего предназначена папка «/usr /local /src»?
Я хотел поместить свои рабочие файлы (код) в /usr/local/src , но я думаю, что это уже папка с другим смысловым значением .
Что это? Должен ли я помещать туда исходный код или есть лучшее место?
Изменить . Я единственный пользователь и администратор машины, и я не хочу использовать мой домашний каталог, потому что он находится на диске NFS.
2 ответа
В соответствии с Linux FHS , /usr — это место, где размещены элементы, основанные на распределении, и /usr/local это место, где вы разместите свои локальные изменения ( /usr/local будет пуст после базовой установки). Так, например, если вы хотите перекомпилировать пакет Ubuntu из исходного кода, их менеджер пакетов разместит исходный код для пакета в /usr/src/
EDIT: короткий ответ, да, введите код в /usr/local/src .
Это зависит от того, что вы выполняете с этим источником. Если это для справки, да, это хорошее место. /usr/local зарезервирован для программного обеспечения, установленного локально с помощью sysadmin. Итак, если вы хотите установить программное обеспечение вместе с исходными файлами (для других программ для использования или для людей, чтобы посмотреть), это хорошо.
Однако это не значит, что это рабочая область . Так как это local , вы можете делать все, что хотите, конечно, но это не предназначено для размещения вашего дерева разработки программного обеспечения.
Это должно быть действительно в репозитории кода (возможно, в /srv/sourcerepo или что-то в этом роде), а затем разработчики будут проверять свои собственные рабочих копий в свои домашние каталоги.
Источник
Фундаментальные основы Linux. Часть II: Первые шаги в изучении интерфейса командной строки
Глава 9. Дерево директорий Linux
В рамках данной главы производится обзор наиболее часто используемых директорий из дерева директорий файловой системы Linux . Также данная глава может служить доказательством утверждения о том, что в Unix-системе все является файлом.
Стандарт иерархии файловой системы
Многие дистрибутивы Linux частично следуют Стандарту иерархии файловой системы ( Filesystem Hierarchy Standard ). Данный стандарт может оказаться полезным для будущего процесса стандартизации деревьев директорий файловых систем Unix/Linux. Стандарт FHS доступен в сети по адресу http://www.pathname.com/fhs/ , причем на данном ресурсе мы можем прочитать: «Стандарт иерархии файловой системы был создан с целью его использования разработчиками дистрибутивов Unix, разработчиками пакетов для распространения программного обеспечения и разработчиками операционных систем. Однако, данный стандарт является в большей степени справочным материалом, нежели руководством по работе с файловой системой Unix или с иерархиями директорий.»
Страница руководства man hier
Существуют некоторые различия в иерархиях файловых систем различных дистрибутивов Linux . Для того, чтобы ознакомиться с информацией об иерархии файловой системы вашей машины, используйте команду man hier . На данной странице руководства будут приведены пояснения относительно структуры дерева директорий системы, установленной на вашем компьютере.
Корневая директория /
Директории для хранения бинарных файлов
Бинарные файлы являются файлами, содержащими скомпилированный исходный код (или машинный код). Бинарные файлы могут исполняться на компьютере. Иногда бинарные файлы также называются исполняемыми файлами .
Директория /bin содержит бинарные файлы , которые могут использоваться всеми пользователями. В соответствии со спецификацией FHS, директория /bin должна содержать исполняемые файлы /bin/cat и /bin/date (помимо других исполняемых файлов).
Другие директории /bin
Вы можете обнаружить поддиректорию /bin во многих других директориях. Например, пользователь с именем serena может разместить свои собственные приложения в поддиректории /home/serena/bin .
Файлы некоторых приложений, обычно в случае установки путем непосредственной сборки из исходного кода, устанавливаются в директорию /opt . К примеру, при установке сервера samba для хранения бинарных файлов может быть использована поддиректория /opt/samba/bin .
Директория /sbin содержит бинарные файлы, предназначенные для настройки операционной системы. Многие из бинарных файлов для настройки системы требуют наличия привилегий пользователя root для выполнения определенных задач.
Обычно ядро Linux загружает модули из директории /lib/modules/$версия-ядра/ . Содержимое этой директории будет подробно описано в главе, посвященной ядру Linux.
Директории /lib32 и /lib64
Формат ELF (формат исполняемых и компонуемых файлов — Executable and Linkable Format ) используется практически во всех Unix-подобных операционных системах с момента выпуска System V .
Директория /opt предназначена для хранения вспомогательного программного обеспечения . В большинстве случаев данное программное обеспечение устанавливается не из репозитория дистрибутива. В многих системах директория /opt пуста.
При установке пакета программного обеспечения большого объема файлы из него могут копироваться в поддиректории /bin , /lib , /etc директории /opt/$имя-пакета/ . Например, в том случае, если пакет программного обеспечения носит имя wp , файлы из него будут устанавливаться в директорию /opt/wp , при этом бинарные файлы будут устанавливаться в поддиректорию /opt/wp/bin , а файлы страниц руководств — в поддиректорию /opt/wp/man .
Директории для хранения файлов конфигурации
Директория /boot содержит все файлы, необходимые для загрузки компьютера. Эти файлы не изменяются очень часто. В системах Linux в данной директории обычно можно обнаружить поддиректорию /boot/grub . Директория /boot/grub содержит файл /boot/grub/grub.cfg (на более старых системах также может использоваться файл /boot/grub/grub.conf ), в рамках которого описывается меню загрузки, отображаемое перед загрузкой ядра ОС.
Все специфичные для машины конфигурационные файлы должны быть расположены в директории /etc . Изначально имя директории /etc была образовано от слова etcetera (и так далее), но сегодня люди часто расшифровывают его как Editable Text Configuration (директория с редактируемыми текстовыми файлами конфигурации).
В директории /etc также можно обнаружить большое количество других важных файлов.
Во многих дистрибутивах Unix/Linux имеется директория /etc/init.d , которая содержит сценарии для запуска и остановки демонов . Эта поддиректория может исчезнуть в процессе перехода дистрибутивов Linux на системы инициализации, которые заменят старую систему инициализации init , используемую для запуска всех демонов .
Управление системой вывода графики осуществляется средствами программного обеспечения от организации X.org Foundation (а именно, сервера оконной системы X Window System или просто X ). Файл конфигурации для вашего сервера оконной системы носит имя /etc/X11/xorg.conf .
Содержимое директории каркаса /etc/skel копируется в домашнюю директорию при создании учетной записи пользователя. Она обычно содержит такие скрытые файлы, как сценарий .bashrc .
Файл /etc/sysconfig/harddisks содержит дополнительные параметры настройки жестких дисков. Формат файла описан в самом файле.
Вы можете ознакомиться с описанием программного обеспечения, обнаруженного утилитой kudzu , которое сохраняется в файле /etc/sysconfig/hwconf . Kudzu является приложением от компании Red Hat, предназначенным для автоматического обнаружения и настройки аппаратного обеспечения.
Файлы для настройки сетевых устройств из данной директории будут обсуждаться в главе, посвященной настройке сети.
Директории для хранения данных
Во многих системах директория /root является стандартной директорией для хранения персональных данных и данных профиля пользователя root . В том случае, если ее не существует по умолчанию, администраторы могут создать ее самостоятельно.
Вы можете использовать директорию /srv для хранения данных, которые обрабатываются вашей системой . Спецификация FHS позволяет хранить в этой директории данные cvs, rsync, ftp и www. Кроме того, спецификация FHS подтверждает возможность использования таких административных имен для поддиректорий, как /srv/project55/ftp и /srv/sales/www.
В системах Sun Solaris (или Oracle Solaris) для этой цели используется директория /export .
Директория /mnt должна быть пустой и использоваться исключительно для создания временных точек монтирования файловых систем (в соответствии со спецификацией FHS).
Администраторы систем Unix и Linux обычно создают в данной директории множество поддиректорий, таких, как /mnt/something/. Вы, скорее всего, столкнетесь с системами с более чем одной директорией, созданной и/или смонтированной в рамках директории /mnt для работы с различными локальными и удаленными файловыми системами.
Приложения и пользователи должны использовать директорию /tmp для хранения временных данных при необходимости. Данные, хранимые в директории /tmp , могут в реальности храниться как на диске, так и в оперативной памяти. В обоих случаях обслуживание хранилища временных данных осуществляется средствами операционной системы. Никогда не используйте директорию /tmp для хранения данных, которые являются важными или которые вы желаете архивировать.
Директории в оперативной памяти
Файлы устройств из директории /dev выглядят как обычные файлы, но на самом деле не являются обычными файлами, размещенными на жестком диске. Директория /dev заполняется файлами в процессе определения устройств средствами ядра операционной системы.
Стандартные физические устройства
Помимо представления физических устройств, некоторые файлы устройств выполняют специальные функции. Эти специальные файлы устройств могут оказаться очень полезными.
Файлы устройств /dev/tty и /dev/pts
К примеру, файл устройства /dev/tty1 представляет терминал или консоль, соединенную с системой. (Не стоит ломать голову над точными значениями терминов ‘терминал’ или ‘консоль’, так как в данном случае имеется в виду интерфейс командной строки системы.) При вводе команд в эмуляторе терминала, поставляемом в составе такого графического окружения рабочего стола, как Gnome или KDE, ваш терминал будет представлен файлом устройства /dev/pts/1 (вместо числа 1 может использоваться другое число).
Файл устройства /dev/null
В Linux вы можете обнаружить и другие файлы специальных устройств, такие, как файл устройства /dev/null , которое может рассматриваться как черная дыра; хотя соответствующее устройство и имеет неограниченную емкость, после записи из него не могут быть прочитаны никакие данные. Говоря техническим языком, любые записанные на представленное файлом /dev/null устройство данные будут просто отброшены. Представленное файлом /dev/null устройство может быть использовано для отбрасывания ненужного вывода различных команд. Помните о том, что представленное файлом /dev/null устройство не является удачным местом для хранения ваших резервных копий данных 😉.
Директория /proc и взаимодействие с ядром ОС
Большая часть файлов из директории /proc предназначена исключительно для чтения, причем для чтения некоторых из них требуются привилегии пользователя root; в некоторые файлы могут записываться данные, причем в директории /proc/sys таких файлов большинство. Давайте поговорим о некоторых файлах из директории /proc.
Директория /sys для работы с системой горячего подключения устройств ядра Linux 2.6
Директория /sys была создана в процессе разработки версии 2.6 ядра Linux. С момента выпуска версии 2.6 ядро Linux использует файловую систему sysfs для реализации механизма горячего подключения устройств, использующих шины usb и IEEE 1394 ( FireWire ). Обратитесь к страницам руководств udev(8) (данная подсистема пришла на смену подсистеме devfs ) и hotplug(8) для получения дополнительной информации (или посетите ресурс http://linux-hotplug.sourceforge.net/).
По существу, директория /sys содержит файлы с информацией об используемом аппаратном обеспечении.
Директория системных ресурсов Unix /usr
Несмотря на то, что имя директории /usr напоминает слово user (пользователь), не следует забывать о том, что на самом деле оно расшифровывается как Unix System Resources (директория системных ресурсов Unix). Иерархия поддиректорий директории /usr должна содержать разделяемые данные приложений, доступные только для чтения . Некоторые системные администраторы осуществляют монтирование файловой системы /usr в режиме только для чтения. В этом случае данная директория должна быть расположена на отдельном разделе жесткого диска или на разделяемом ресурсе NFS.
(В системе Solaris директория /bin является символьной ссылкой на директорию /usr/bin .)
Директория для изменяемых данных /var
Файлы заранее неизвестного размера, такие, как файлы журналов, файлы кэша и файлы очереди печати должны сохраняться в директории /var .
Директория /var/spool обычно содержит поддиректории для хранения файлов с сообщениями электронной почты и данными задач cron , причем она также может быть родительской директорией для других файлов очередей (например, файлов очередей печати).
Директория /var/lib содержит файлы с данными состояния приложений.
Дистрибутив Red Hat Enterprise Linux, к примеру, хранит файлы, относящиеся к менеджеру пакетов rpm , в поддиректории /var/lib/rpm/ .
Другие директории /var/.
Директория /var также содержит файлы с идентификаторами процессов в поддиректории /var/run (которая в недалеком будущем будет заменена на директорию /run ), временные файлы, которые не должны удаляться при перезагрузке, в поддиректории /var/tmp , а также файлы блокировок в поддиректории /var/lock . Далее в данной книге будут приведены дополнительные примеры использования директории /var для хранения данных.
Практическое задание: дерево директорий Linux
1. Существует ли файл /bin/cat ? Как насчет файлов /bin/dd и /bin/echo . Какого типа данные файлы?
2. Каков общий объем файлов ядра Linux (vmlinu*) в директории /boot?
/test. После этого выполните следующие команды:
Утилита dd осуществит копирование одного блока (count=1) размером в 100 байт (bs=100) из специального файла /dev/zero в файл
/test/zeroes.txt. Какие пояснения вы можете дать относительно возможностей специального файла /dev/zero ?
Утилита dd осуществит копирование одного блока (count=1) размером в 100 байт (bs=100) из специального файла /dev/random в файл
/test/random.txt. Какие пояснения вы можете дать относительно возможностей специального файла /dev/random ?
С помощью первой команды будет выведен список файлов блочных устройств, с помощью второй — список файлов символьных устройств. Что вы можете сказать по поводу различий между символьными и блочными устройствами.
6. Используйте команду cat для вывода содержимого файлов /etc/hosts и /etc/resolv.conf . Что вы думаете по поводу предназначения данных файлов?
7. Хранятся ли какие-нибудь файлы в директории /etc/skel/ ? Не забудьте проверить наличие скрытых файлов.
8. Выведите содержимое файла /proc/cpuinfo . Машину какой архитектуры вы используете для работы с Linux?
9. Выведите содержимое файла /proc/interrupts . Каков размер этого файла? Где хранится данный файл?
10. Можете ли вы перейти в директорию /root ? Есть ли в этой директории файлы (в том числе скрытые)?
11. Существуют ли бинарные файлы ifconfig, fdisk, parted, shutdown и grup-install в директории /sbin ? По какой причине эти бинарные файлы размещены в директории /sbin , а не в директории /bin ?
12. Является ли /var/bin файлом или директорией? Как насчет /var/spool ?
13. Откройте два эмулятора терминала (с помощью сочетания клавиш Ctrl+Shift+T в gnome-terminal) или терминала (с помощью сочетания клавиш Ctrl+Alt+F1, Ctrl+Alt+F2, . ) и выполните команду who am i в обоих. После этого попытайтесь передать слово из одного терминала в другой.
14. Прочитайте страницу руководства random и попытайтесь на основе полученной информации объяснить разницу между специальными файлами /dev/random и /dev/urandom .
Корректная процедура выполнения практического задания: дерево директорий Linux
1. Существует ли файл /bin/cat ? Как насчет файлов /bin/dd и /bin/echo . Какого типа данные файлы?
2. Каков общий объем файлов ядра Linux (vmlinu*) в директории /boot?
/test. После этого выполните следующие команды:
Утилита dd осуществит копирование одного блока (count=1) размером в 100 байт (bs=100) из специального файла /dev/zero в файл
/test/zeroes.txt. Какие пояснения вы можете дать относительно возможностей специального файла /dev/zero ?
Файл /dev/zero является специальным файлом устройства Linux. Он может рассматриваться как источник нулевых байт. Вы не можете записать какие-либо данные в файл /dev/zero , но вы можете читать нулевые байты из него.
Утилита dd осуществит копирование одного блока (count=1) размером в 100 байт (bs=100) из специального файла /dev/random в файл
/test/random.txt. Какие пояснения вы можете дать относительно возможностей специального файла /dev/random ?
Файл /dev/random выступает в качестве генератора случайных чисел вашей машины, работающей под управлением Linux.
С помощью первой команды будет выведен список файлов блочных устройств, с помощью второй — список файлов символьных устройств. Что вы можете сказать по поводу различий между символьными и блочными устройствами.
Данные всегда записываются на блочные устройства (или читаются с них) блоками. В случае жестких дисков размер блоков обычно равен 512 байтам. Символьные устройства работают как источники или приемники потоков символов (или байт). Мышь и клавиатура являются типичными символьными устройствами.
6. Используйте команду cat для вывода содержимого файлов /etc/hosts и /etc/resolv.conf . Что вы думаете по поводу предназначения данных файлов?
7. Хранятся ли какие-нибудь файлы в директории /etc/skel/ ? Не забудьте проверить наличие скрытых файлов.
Выполните команду «ls -al /etc/skel/». Да, в данной директории должны храниться скрытые файлы.
8. Выведите содержимое файла /proc/cpuinfo . Машину какой архитектуры вы используете для работы с Linux?
Данный файл должен содержать как минимум одну строку с названием модели центрального процессора производства компании Intel или какой-либо другой компании.
9. Выведите содержимое файла /proc/interrupts . Каков размер этого файла? Где хранится данный файл?
Размер файла равен нулю байт, но при этом файл содержит данные. Он не хранится где-либо на диске, так как в директорию /proc монтируется виртуальная файловая система, которая позволяет взаимодействовать с ядром ОС. (Ответ «файл хранится в оперативной памяти» также является верным. )
10. Можете ли вы перейти в директорию /root ? Есть ли в этой директории файлы (в том числе скрытые)?
Попытайтесь выполнить команду «cd /root». Директория /root не доступна для чтения обычными пользователями в большинстве современных дистрибутивов Linux.
11. Существуют ли бинарные файлы ifconfig, fdisk, parted, shutdown и grup-install в директории /sbin ? По какой причине эти бинарные файлы размещены в директории /sbin , а не в директории /bin ?
Да. Так как данные бинарные файлы должны использоваться исключительно системными администраторами.
12. Является ли /var/bin файлом или директорией? Как насчет /var/spool ?
По обоим путям расположены директории.
13. Откройте два эмулятора терминала (с помощью сочетания клавиш Ctrl+Shift+T в gnome-terminal) или терминала (с помощью сочетания клавиш Ctrl+Alt+F1, Ctrl+Alt+F2, . ) и выполните команду who am i в обоих. После этого попытайтесь передать слово из одного терминала в другой.
14. Прочитайте страницу руководства random и попытайтесь на основе полученной информации объяснить разницу между специальными файлами /dev/random и /dev/urandom .
Источник