По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В статье пойдет речь о расположении файлов и папок, как использовать поиск для нахождения нужной информации. Задача ознакомление с предназначение основных папок в операционной системе Linux и то, что в них находиться. Разберемся в структуре FHS и посмотрим, как искать файлы и команды. FHS (File System Hierarchy Standard) – это стандартная иерархия ОС. Согласно Hierarchy FHS - есть стандартные папки, которые должны располагаться в корне. Вот классическое расположение файлов и папок в корневой папке ОС Linux. Стандарт FHS был изначально предназначен для того, чтобы во всех дистрибутивах ОС Linux могли понять и найти все, что нам нужно. Некоторые дистрибутивы Linux отклоняются от этого стандарта, но не сильно в целом данный стандарт соблюдается. Перечислим основные папки и их предназначение. /bin – базовые исполняемые файлы /boot – файлы loader /dev – устройства /etc – конфигурация ПК /home – домашние директории /lib – библиотеки ядра /proc – информация о работающей системе /media – монтирование носителей /mnt – монтирование носителей /opt – дополнительное программное обеспечение /root – домашняя директория админа /sbin – основные программы настройки системы /srv – данные системных служб /tmp – временные файлы /usr – бинарные файлы пользователей /var - переменные Первая папка bin в ней находятся базовые исполняемые файлы команд, т.е все команды которые может использовать пользователь они находятся здесь в данной папке. Папка boot – в данной папке находятся файлы загрузчика. Обычно это отдельный диск примонтированный в котором находиться ядро Linux. В папке dev – находятся файлы всех устройств в операционной системе Linux все и даже устройства представляют собой файлы. Папка etc – здесь находиться конфигурация нашего конкретного ПК, в ней много подпапок и в ней лежит конфигурация. В директории home находятся домашние папки всех пользователей, кроме пользователя root. В данной папке находятся документы, рабочий стол и т.д все что относится к пользователю. Папка lib здесь находятся общие библиотеки и модули ядра. Папка proc – здесь находятся вся информация о запущенных в данный момент процессах. В данную папку монтируется виртуальная файловая система procfs. Папка media создана для монтирования съемных накопителей типа USB или CD-ROM. В старых версиях Linux и до сих пор осталась, есть папка mnt. Раньше в нее монтировались съемные носители, теперь же данную папку обычно используют для монтирования дополнительных файловых систем. Папка opt - для установки дополнительного программного обеспечения. Папка root – говорит сама за себя. Папка sbin в данной папке лежат настройки серьезных таких компонент, как файрвол iptables, например, или процесс инициализации init. Папка srv в ней лежат данные для всех системных служб. Папка tmp – понятно, что в ней хранятся временные файлы. Причем данные файлы там хранятся до перезагрузки операционной системы, во время нее они удаляются. В папке usr хранятся двоичные файлы, которые относятся непосредственно к пользователю, например, игры или программы, т.е то что пользователь самостоятельно установил. Папка var – папка переменные, здесь обычно размещается почта или логи программ. Понятно, что это стандарт во многих дистрибутивах могут быть отклонения, но в том или ином виде все эти папки присутствуют в различных дистрибутивах. Подробнее про структуру FHS можно прочитать здесь Вторая часть не менее важная, как же найти в данных папках необходимую информацию. Команды, используемые для поиска: Grep – Утилита поиска по содержимому в том числе и внутри файла Find - Утилита поиска файлов по свойствам. Серьезная утилита, которая начинает поиск файлов по файловой системе в реальном времени, у данной утилиты есть множество ключей и параметров Locate – Это быстрый поиск файлов. Which – Поиск команды. Выводит минимальное количество информации Type – Вывод точной команды Whereis – Поиск команды, исходников и мануалов. Серьезный глубокий инструмент Начнем с find / -name mail. Данная команда начнет искать в корневой папке / все файлы с именем mail. Данная команда рекурсивно осуществляет поиск по всей файловой системе. Т.к мы запустили поиск от пользователя root, то он пробежался по всем папкам спокойно, если запускать от обычного пользователя, то может не хватать прав. Есть другая команда - locate mail. Данная команда отрабатывает практически мгновенно. Команда find искала именно по синтаксису, плюс можно добавлять сложные конструкции поиска. Команда locate делает проще показывает все где находится сочетание символов. Запустим поиск с помощью команды find / -user siadmin, поиск будет искать все что касается данного пользователя. Поиск опять идет дольше, чем поиск командой locate siadmin. Дело в том, что данная команда по умолчанию ищет не везде и у нее есть конфигурационный файл cat /etc/updatedb.conf. В данном конфигурационном файле мы можем увидеть, что данная утилита не ищет в примонтированных файловых системах. Даная строчка # PRUNENAMES=".git .bzr .hg .svn", говорит о том , что в данных форматы в поиске не выдаются. Поиск не производится в папках PRUNEPATHS="/tmp /var/spool /media /var/lib/os-prober /var/lib/ceph /home/.ecryptfs /var/lib/schroot". И не ищет в перечисленных файловых системах в файле. Данный файл можно конфигурировать и будут манятся параметры поиска. Создадим файл текстовый touch Vadim.txt. И попробуем найти - locate Vadim.txt. Ничего не нашел. find Vadim.txt - поиск успешен. locate работает с индексной локацией. Данный механизм напоминает индексацию файлов в MS Windows. Проходит индексация файлов и папок и после этого windows знает, что и где лежит. А если индексация не была проведена, то операционная система Windows или говорит, что ничего не найдено или поиск происходит длительное время. Аналогично утилита locate работает в Linux. Раз в день, команда locate запускает команду find. Команда find пробегает по всей файловой системе, а команда locate создает некую Базу данных и запоминает где и что находиться. Именно поэтому команда find работает долго, а команда locate работает практически моментально. Locate знает, где и что лежит в тот момент когда find искал. Но есть большой минус, данная функция происходит раз в день и изменения могут быть не актуальны. Для обновления базы данных команды locate, необходимо ее запустить вручную updatedb. Т.е ест конфигурация /etc/updatedb.conf и мы запускаем обновление Базы данных команды. После обновления, команда будет практически мгновенно находить. И последняя часть статьи, в которой необходимо рассмотреть поиск по командам. Тут достаточно просто, есть команда ls – она показывает содержимое папки. Мы можем найти где находиться данная команда which ls и получим, что она находиться /bin/ls. Т.е. команда ls хранится в папке bin – где хранятся бинарники тех команд, которые могут быть вызваны пользователями. По сути когда мы набираем команду ls, мы вводим /bin/ls. У нас есть команда type. Обратите внимание, когда мы вызываем команду ls срабатывает подсветка файлов и так далее, т.е. настройки оболочки. Когда мы запускаем напрямую /bin/ls то вызывается непосредственно команда и игнорируются настройки оболочки. Причина заключается в том, что когда мы запускаем просто команду ls, то она запускается с некоторыми ключами. Чтобы узнать, что за ключи используются необходимо набрать type ls. Обратите внимание, что команда ls – это алиаспсевдоним. Т.е запуская в таком режиме, фактически мы вводим /bin/ls –color=auto. И получаем красивый вывод. Type позволяет выводить псевдоним. Есть еще одна команда, которая более детальную информацию выводит whereis ls. Для ls там не много информации. Показывает, где лежит и к какому пакету относится.
img
Если вы работаете с Windows, структура файловой системы Linux может показаться особенно чуждой. Диск C: и буквы диска исчезли, их заменили каталоги / и загадочно звучащие каталоги, большинство из которых имеют трехбуквенные имена. Стандарт иерархии файловой системы (FHS - Filesystem Hierarchy Standard) определяет структуру файловых систем в Linux и других UNIX-подобных операционных системах. Однако файловые системы Linux также содержат некоторые каталоги, которые еще не определены стандартом. Обратите внимание, что мы не говорим здесь о файловой системе, которая является техническим шаблоном, используемым для хранения данных на диске. Структура каталогов, которую мы рассмотрим, применима к большинству дистрибутивов Linux независимо от того, какую файловую систему они используют. Типы содержимого Это основные типы контента, хранящегося в файловой системе Linux. Постоянный (Persistent) - это содержимое, которое должно быть постоянным после перезагрузки, например, параметры конфигурации системы и приложений. Время выполнения (Runtime) - контент, созданный запущенным процессом, обычно удаляется перезагрузкой Переменный/динамический (Variable/Dynamic) - это содержимое может быть добавлено или изменено процессами, запущенными в системе Linux. Статический контент (Static) - остается неизменным до тех пор, пока не будет явно отредактирован или перенастроен. / - Корневой каталог (root) Все в вашей системе Linux находится в каталоге /, известном как root или корневой каталог. Вы можете думать о каталоге / как о каталоге C: в Windows, но это не совсем так, поскольку в Linux нет букв дисков. В то время как другой раздел будет расположен вD: в Windows, этот другой раздел появится в другой папке в / в Linux. Если вы посмотрите на структуру каталогов, вы поймете, что она похожа на корень дерева. Поскольку все остальные каталоги или файлы происходят от корня, абсолютный путь к любому файлу проходит через корень. Например, если у вас есть файл в /home/user/documents, вы можете догадаться, что структура каталогов идет как root -> home -> user -> documents. /bin - Основные пользовательские двоичные файлы Каталог /bin содержит основные пользовательские двоичные файлы (программы), которые должны присутствовать при монтировании системы в однопользовательском режиме. Приложения, например такие как браузер Firefox, хранятся в /usr/bin, а важные системные программы и утилиты, такие как оболочка bash, находятся в /bin. Каталог /usr может храниться в другом разделе - размещение этих файлов в каталоге /bin гарантирует, что в системе будут эти важные утилиты, даже если другие файловые системы не смонтированы. /bin непосредственно содержит исполняемые файлы многих основных команд оболочки, таких как ps, ls, ping, grep, cp. Каталог /sbin аналогичен - он содержит важные двоичные файлы системного администрирования. /sbin содержит iptables, reboot, fdisk, ifconfig, swapon /boot - Статические загрузочные файлы Каталог /boot содержит файлы, необходимые для загрузки системы - например, здесь хранятся файлы загрузчика GRUB и ваши ядра Linux. Однако файлы конфигурации загрузчика не находятся здесь - они находятся в /etc вместе с другими файлами конфигурации. /cdrom - Точка монтирования для компакт-дисков Каталог /cdromне является частью стандарта FHS, но вы все равно найдете его в Ubuntu и других операционных системах. Это временное место для компакт-дисков, вставленных в систему. Однако стандартное расположение временных носителей находится в каталоге /media. /dev - Файлы устройства Linux представляет устройства в виде файлов, а каталог /dev содержит ряд специальных файлов, представляющих устройства. Это не настоящие файлы в том виде, в каком мы их знаем, но они отображаются как файлы - например, /dev/sda представляет собой первый диск SATA в системе. Второй диск будет называться /dev/sdb. Если вы хотите его разбить, вы можете запустить редактор разделов и указать ему отредактировать /dev/sda. В итоге получим что первым разделом этого диска будет /dev/sda1, а вторым - /dev/sda2. Этот каталог также содержит псевдоустройства, которые представляют собой виртуальные устройства, которые на самом деле не соответствуют оборудованию. Например, /dev/random производит случайные числа. /dev/null - это специальное устройство, которое не производит вывода и автоматически отбрасывает весь ввод - когда вы перенаправляете вывод команды на /dev/null, вы отбрасываете его. /etc - Файлы конфигурации Каталог /etc содержит файлы конфигурации, которые обычно можно редактировать вручную в текстовом редакторе. Обратите внимание, что каталог /etc/ содержит общесистемные файлы конфигурации (например имя хоста) - пользовательские файлы конфигурации находятся в домашнем каталоге каждого пользователя. /home - Домашние папки Каталог /home содержит домашнюю папку для каждого пользователя. Например, если ваше имя пользователя - bob, у вас есть домашняя папка, расположенная в /home/bob. Эта домашняя папка содержит файлы данных пользователя и пользовательские файлы конфигурации. Каждый пользователь имеет право записи только в свою домашнюю папку и должен получить повышенные права (стать пользователем root) для изменения других файлов в системе. /lib - Основные общие библиотеки Каталог /lib содержит библиотеки, необходимые для основных двоичных файлов в папке /bin и /sbin. Библиотеки, необходимые для двоичных файлов в папке /usr/bin, находятся в /usr/lib. Имена файлов библиотеки: ld* или lib*.so.*. Поскольку вы, вероятно, используете 64-битную операционную систему, то у вас есть пара каталогов: /lib, /lib32 и /lib64. Те библиотеки, которые не содержат кода, специфичного для версии процессора, находятся в папке /lib. Те, которые зависят от версии, находятся в каталогах /lib32 (32-бит) или /lib64 (64-бит), в зависимости от ситуации. /lost+found - Восстановленные файлы В каждой файловой системе Linux есть каталог /lost+found. В случае сбоя файловой системы проверка файловой системы будет выполнена при следующей загрузке. Любые найденные поврежденные файлы будут помещены в каталог lost+found, чтобы вы могли попытаться восстановить как можно больше данных. /media - Съемный носитель Каталог /media содержит подкаталоги, в которых монтируются съемные носители, вставленные в компьютер. Например, когда вы вставляете компакт-диск в свою систему Linux, внутри каталога /media автоматически создается каталог. Вы можете получить доступ к содержимому компакт-диска внутри этого каталога. Например, /media/cdrom для CD-ROM (если он не расположен в корне), /media/floppy для дисководов гибких дисков, /media/cdrecorder для рекордера компакт-дисков /mnt - Временные точки монтирования Исторически сложилось так, что каталог /mnt - это то место, где системные администраторы монтируют временные файловые системы во время их использования. Например, если вы монтируете раздел Windows для выполнения некоторых операций по восстановлению файлов, вы можете подключить его в /mnt/windows. Однако вы можете монтировать другие файловые системы в любом месте системы. /opt - Дополнительные пакеты Каталог /opt содержит подкаталоги для дополнительных пакетов программного обеспечения. Он обычно используется проприетарным программным обеспечением, которое не подчиняется стандартной иерархии файловой системы - например, проприетарная программа может выгружать свои файлы в /opt/application при ее установке. /proc - Файлы ядра и процессов Каталог /proc похож на каталог /dev, потому что он не содержит стандартных файлов. Он содержит специальные файлы, которые представляют информацию о системе и процессе. Это псевдофайловая система, содержащая информацию о запущенном процессе. Например: каталог /proc/{pid} содержит информацию о процессе с этим конкретным pid. Также тут можно получить текстовую информацию о системных ресурсах. Например узнать аптайм /proc/uptime, проверить информацию о процессоре /proc/cpuinfo или проверить использование памяти вашей системой Linux /proc/meminfo. /root - Корневой домашний каталог Каталог /root - это домашний каталог пользователя root. Вместо того, чтобы находиться в /home/root, он находится в /root. Он отличается от /, который является корневым каталогом системы, важно не путать их. /run - Файлы состояния приложения Каталог /run является довольно новым и предоставляет приложениям стандартное место для хранения необходимых им временных файлов, таких как сокеты и идентификаторы процессов. Эти файлы нельзя хранить в /tmp, потому что файлы в /tmp могут быть удалены. /sbin - Двоичные файлы системного администрирования Каталог /sbin аналогичен каталогу /bin. Он содержит важные двоичные файлы, которые обычно предназначены для запуска пользователем root для системного администрирования. /selinux - виртуальная файловая система SELinux Если ваш дистрибутив Linux использует SELinux для обеспечения безопасности (например, Fedora и Red Hat), каталог /selinux содержит специальные файлы, используемые SELinux. Это похоже на /proc. Ubuntu не использует SELinux, поэтому наличие этой папки в Ubuntu кажется ошибкой. /srv - Сервисные данные Каталог /srv содержит «данные об услугах, предоставляемых системой». Если вы использовали HTTP-сервер Apache для обслуживания веб-сайта, вы, вероятно, сохранили бы файлы своего веб-сайта в каталоге внутри каталога /srv. /tmp - Временные файлы Приложения хранят временные файлы в каталоге /tmp. Эти файлы обычно удаляются при перезапуске вашей системы и могут быть удалены в любое время с помощью таких утилит, как tmpwatch. /usr - Пользовательские двоичные файлы и данные только для чтения Каталог /usr содержит приложения и файлы, используемые пользователями, в отличие от приложений и файлов, используемых системой. Например, второстепенные приложения расположены в каталоге /usr/bin вместо каталога /bin, а второстепенные двоичные файлы системного администрирования расположены в каталоге /usr/sbin вместо каталога /sbin. Библиотеки для каждого из них находятся в каталоге /usr/lib. Каталог /usr также содержит другие каталоги - например, файлы, не зависящие от архитектуры, такие как графика, находятся в /usr/share. Каталог /usr/local - это место, куда по умолчанию устанавливаются локально скомпилированные приложения - это не позволяет им испортить остальную часть системы. /var - файлы переменных данных /var это место, где программы хранят информацию о времени выполнения, такую как системный журнал, отслеживание пользователей, кэши и другие файлы, которые системные программы создают и управляют. Каталог /var является записываемым аналогом каталога /usr, который при нормальной работе должен быть доступен только для чтения. Файлы логов и все остальное, что обычно записывается в /usrво время нормальной работы, записывается в каталог /var. Например, вы найдете файлы логов в /var/log. Помимо логов тут можно найти пакеты и файлы базы данных /var/lib, электронные письма /var/mail, очереди печати /var/spool, файлы блокировки /var/lock, временные файлы, необходимые при перезагрузке /var/tmp.
img
Вторая часть тут Пересечение многочисленных дискуссий в мире сетевого инжиниринга, было одной из проблем, которая затрудняла принятие решения о том, является ли коммутация пакетов или каналов лучшим решением. Как следует вычислять loop-free пути в сети с коммутацией пакетов? Поскольку сети с коммутацией пакетов на протяжении всей истории сетевой инженерии ассоциировались с распределенными плоскостями управления (control plane), а сети с коммутацией каналов -с централизованными плоскостями управления (control plane), проблема эффективного вычисления безцикловых (loop-free) путей оказала значительное влияние на принятие решения о том, являются ли сети с коммутацией пакетов жизнеспособными или нет. На заре сетевой инженерии доступная вычислительная мощность, память и пропускная способность часто были в дефиците. В 1984 году, когда происходили в основном своем эти дискуссии, любая разница в объеме процессора и памяти между двумя способами расчета безцикловых путей через сеть оказала бы существенное влияние на стоимость построения сети. Когда пропускная способность имеет первостепенное значение, уменьшение количества битов, требуемых плоскостью управления (control plane) для передачи информации, необходимой для вычисления набора loop-free путей через сеть, создает реальную разницу в объеме пользовательского трафика, который может обрабатывать сеть. Уменьшение количества битов, необходимых для работы элемента управления, также вносит большую разницу в стабильность сети при более низких полосах пропускания. Например, использование формата Type Length Vector (TLV) для описания информации о плоскости управления (control plane), передаваемой по сети, добавляет несколько октетов информации к общей длине пакета-но в контексте канала 2 Мбит / с, усугубленного chatty control plane, затраты могут значительно перевесить долгосрочное преимущество расширяемости протокола. Протокольные войны в некоторых моментах были довольно жаркими. Были организованы целые исследовательские проекты и написаны статьи о том, почему и как один протокол лучше другого. Было предложено большое разнообразие механизмов для решения задач вычисления loop-free путей через сеть. В конечном счете были широко развернуты и использованы три общих класса решений: Distance Vector protocols (протоколы вектора расстояния), которые вычисляют свободные от петель пути hop by hop на основе стоимости пути. Link State protocols (протоколы состояния связи), которые вычисляют свободные от петель пути через базу данных, синхронизированную между сетевыми устройствами. Path Vector protocols (протоколы вектора пути), которые вычисляют свободные от петель пути hop by hop на основе записи предыдущих прыжков. Дискуссия о том, какой протокол лучше всего подходит для каждой конкретной сети и по каким конкретным причинам, все еще продолжается. И это, возможно, бесконечный спор, поскольку нет окончательного ответа на этот вопрос. Возможно, как и при подгонке сети под бизнес, всегда будет какая-то степень искусства, связанная с тем, чтобы заставить конкретную плоскость управления (control plane) работать в конкретной сети. Однако большая часть актуальности этого вопроса была вызвана ростом скорости сетей-вычислительной мощности, памяти и пропускной способности. Четвертую часть цикла статей про QoS можно почитать по ссылке.
ЗИМНИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59