Директория временных каталогов системы linux

Содержание
  1. Где временный каталог в Linux?
  2. 4 ответа
  3. /tmp: временные файлы
  4. /var /tmp: временные файлы, сохраненные между перезагрузкой системы
  5. Структура каталогов в Linux
  6. Структура каталогов в Linux
  7. / — корневая директория
  8. /bin — binaries (двоичные файлы)
  9. /boot — boot files (загрузочные файлы)
  10. /cdrom — исторически сложившаяся папка для CD-ROM
  11. /dev — device files (файлы устройств)
  12. /etc — configuration files (конфигурационные файлы)
  13. /home — личные каталоги пользователей
  14. /usr — user binaries and program data (пользовательские двоичные файлы и программные данные)
  15. /lib — каталог совместно используемых библиотек
  16. /sbin — системные утилиты
  17. /tmp — временные файлы
  18. /var — файлы изменяемых данных
  19. /proc — файлы процессов
  20. /opt — optional software (дополнительное ПО)
  21. /root — the home directory of the root (домашняя папка root-пользователя)
  22. /media — mount point for removable media (точка монтирования съемных носителей)
  23. /mnt — mount directory (точка монтирования файловых систем)
  24. /srv — service data (служебные данные)
  25. /run — application state files (файлы текущего состояния приложений)
  26. /lost+found — recovered files (восстановленные файлы)

Где временный каталог в Linux?

Есть ли у Linux стандартный временный каталог для общего использования, например, в папке Windows C:\Temp ? Если да, то где он находится? Я нашел вопрос о поиске кода tmp программно , но я хочу установить временное местоположение в файле конфигурации XML раньше времени.

4 ответа

/tmp: временные файлы

Каталог /tmp должен быть доступен для программ, требующих временные файлы.

Программы не должны допускать, чтобы любые файлы или каталоги в /tmp были сохраняется между вызовами программы.

Обоснование

Стандарт IEEE POSIX.1-2008 содержит требования, аналогичные приведенному выше разделу. Хотя данные, хранящиеся в /tmp , могут быть удалены с помощью сайта, рекомендуется удалить файлы и каталоги, расположенные в /tmp всякий раз, когда система загружается.

FHS добавила эту рекомендацию на основе исторического прецедента и общих практики, но не требовали этого, поскольку системное администрирование не входит в рамки настоящего стандарта.

/var /tmp: временные файлы, сохраненные между перезагрузкой системы

Каталог /var/tmp предоставляется для программ, требующих временные файлы или каталоги, которые сохраняются между системами перезагружается. Поэтому данные, хранящиеся в /var/tmp , являются более стойкими, чем данные в /tmp .

Файлы и каталоги, расположенные в /var/tmp , не должны удаляться, если система загружается. Хотя данные, хранящиеся в /var/tmp , обычно удаленный в зависимости от конкретного сайта, рекомендуется удалить происходят менее часто, чем /tmp .

TMPDIR Эта переменная должна представлять собой путь к директории, доступной для программ, которым требуется место для создания временных файлов.

Да /tmp для общего использования. См. здесь и здесь В стандарте иерархии файловой системы.

/tmp /Временные файлы (см. также /var /tmp). Часто не сохраняется между перезагрузкой системы.

С более подробной информацией, указанной в PDF.

Это старый вопрос, так что сегодня есть еще один доступный вариант. Linux-дистрибутивы, полагающиеся на systemd (что составляет 90% из них) теперь могут использовать $XDG_RUNTIME_DIR ( Спецификация базового каталога XDG ) для хранения определенных типов временных файлов. Он обычно находится в /run/user/$uid . Это каталог для каждого пользователя с разрешениями 700 , который обеспечивает лучшую безопасность. Это mount tmpfs , который обеспечивает производительность. Недостатком tmpfs является то, что его следует использовать только для хранения небольших файлов и сокетов.

Я рассматриваю это как брак /tmp и /var/run

Вы не можете выбрать одно временное имя каталога раньше времени, которое будет работать для любой системы Linux. Фактически, вы также не можете делать это в Windows. Согласно статье статьи о временных папках Wikipedia временный каталог в Windows определяется переменной окружения TEMP , Если вы просто использовали c:\Temp как временный каталог в системе Windows, который устанавливает TEMP на что-то еще, тогда любая программа, использующая ваш XML-файл, выбор временного каталога не удался.

Читайте также:  Windows media player classic lite

Короче говоря, временный каталог системы определяется средой во всех современных операционных системах, о которых я знаю, включая как Windows, так и любую UNIX-подобную систему. Установка одного статического пути в качестве временного каталога будет работать только до тех пор, пока значения по умолчанию не будут изменены.

В любом случае, стандартный временный каталог в типичной системе Linux — это /tmp . Это эквивалент C:\Temp в том смысле, что это only временный каталог по умолчанию, а не универсальный. Даже если доступен /tmp , если пользователь (или система) установил переменную среды TEMP, значение этой переменной должно быть использовано вместо этого.

Вы можете попробовать выбрать временный каталог по отношению к домашнему каталогу пользователя, который вы можете создать.

Источник

Структура каталогов в Linux

Обновл. 20 Фев 2021 |

На этом уроке мы рассмотрим иерархию файловой системы Linux, а также познакомимся с назначением различных каталогов.

Если вы ранее пользовались только Windows, то структура файловой системы Linux может показаться вам особенно чуждой: нет привычного обозначения C:\ и букв дисков, их заменили каталог / и другие папки, большинство из которых имеют странные имена, состоящие из трех букв.

Причина всего этого в том, что в Linux используется свой FHS (сокр. от «Filesystem Hierarchy Standard» = «Стандарт иерархии файловой системы»). FHS определяет структуру и содержание/назначение каталогов в дистрибутивах Linux. Благодаря данному стандарту структура каталогов во всех дистрибутивах Linux является (почти) одной и той же.

Структура каталогов в Linux

Напомню, что Linux основан на системе Unix и, следовательно, заимствует из нее свою иерархию файловой системы. Аналогичную структуру каталогов вы найдете в Unix-подобных операционных системах, таких как BSD и macOS. Однако в дальнейшем я буду использовать именно термин Linux вместо Unix.

/ — корневая директория

Все файлы и каталоги в Linux расположены в папке / , именуемой корневой (от слова «root»). Если вы посмотрите на структуру каталогов, то заметите, что она похожа на корень растения.

Поскольку все остальные каталоги или файлы происходят от корня, абсолютный путь к любому из них начинается с корневой директории. Например, если у вас есть файл в /home/user/documents , то вы можете догадаться, что структура каталогов идет от root->home->user->documents .

Шутка про «rm –rf /»: Возможно, вы сталкивались с некоторыми шутками в Интернете, в которых упоминается rm -rf / . Команда rm (от англ. «remove») используется для удаления файлов и каталогов в Linux.

С помощью rm -rf / вы просите свою систему принудительно и рекурсивно удалить содержимое корневого каталога. Поскольку в корневом каталоге содержатся все файлы и папки ОС, то данной командой вы стираете все данные, и ваша Linux-система просто должна исчезнуть (теоретически).

Большинство дистрибутивов Linux не запустят эту команду без ключа —no-preserve-root . Но в любом случае, не стоит ради любопытства пытаться выполнить эту команду.

/bin — binaries (двоичные файлы)

Каталог /bin содержит двоичные файлы многих основных программ и утилит (ls, cp, cd и т.д.), которые должны присутствовать при монтировании системы в однопользовательском режиме. Приложения, такие как Firefox, хранятся в /usr/bin , в то время как важные системные программы и утилиты, такие как оболочка bash, находятся в /bin .

Примечание: Монтирование файловой системы — это системный процесс, подготавливающий раздел диска к использованию операционной системой.

/boot — boot files (загрузочные файлы)

Каталог /boot содержит файлы, необходимые для загрузки системы. Например, здесь хранятся файлы загрузчика GRUB и ваши ядра Linux. Однако конфигурационные файлы загрузчика находятся не здесь — они лежат в /etc вместе с другими конфигурационными файлами.

Читайте также:  Flashing asus bios windows

/cdrom — исторически сложившаяся папка для CD-ROM

Каталог /cdrom не является частью FHS, но вы все равно можете встретить его, например, в Ubuntu или других дистрибутивах Linux. Это временное место для компакт-дисков. Однако стандартное расположение временных носителей находится внутри каталога /media .

/dev — device files (файлы устройств)

Различные устройства воспринимаются и отображаются системой Linux в виде файлов, хранящихся в каталоге /dev. Стоит отметить, что это не настоящие файлы, какими мы их привыкли воспринимать, а специальный тип (интерфейс), используемый операционной системой для взаимодействия с устройствами. Например, файл /dev/sda представляет собой первый SATA-диск в системе. Если вы хотите разбить его на разделы, то можете запустить редактор разделов и попросить его отредактировать файл /dev/sda . Файл /dev/sr — это CD-ROM, а файл /dev/wlan , как вы наверняка уже догадались, соответствует беспроводному сетевому интерфейсу. Также в этом каталоге могут содержаться специальные файлы псевдоустройств, которые на самом деле не сопоставляются с реальным оборудованием, например:

/dev/null — это специальное устройство («пустое устройство»), которое не производит вывода и автоматически отбрасывает все поступающие входные данные. Когда вы передаете вывод информации от какой-нибудь команды на устройство /dev/null , то вся эта информация попросту будет отброшена;

/dev/random — генератор случайных чисел;

/dev/zero — источник бесконечной последовательности нулевых байтов.

/etc — configuration files (конфигурационные файлы)

Каталог /etc содержит основные конфигурационные файлы системы, используемые администратором системы и её службами, такие как файл паролей и файлы настроек сетей. Обычно их можно редактировать вручную в текстовом редакторе. Если вам нужно внести изменения в конфигурацию системы (например, изменить имя хоста), то именно здесь вам стоит искать необходимые файлы. Обратите внимание, что каталог /etc содержит общесистемные конфигурационные файлы; пользовательские конфигурационные файлы находятся в домашнем каталоге каждого пользователя.

/home — личные каталоги пользователей

Каталог /home является хранилищем домашних папок пользователей системы, в которых те хранят свои личные файлы, заметки, утилиты и пр. Домашний каталог содержит пользовательские данные и пользовательские файлы конфигурации.

При создании нового пользователя в системе Linux, обычно для него создается соответствующий домашний каталог (и группа, но об этом позже). Предположим, что в вашей системе уже есть два пользователя: alice и bob. Тогда их домашние каталоги будут иметь пути /home/alice и /home/bob соответственно. Обратите внимание, что каждый (обычный) пользователь имеет доступ на запись только в свою домашнюю папку. Например, у пользователя bob не будет доступа к каталогу /home/alice и наоборот.

/usr — user binaries and program data (пользовательские двоичные файлы и программные данные)

Каталог /usr содержит исполняемые файлы, файлы библиотек и заголовочные файлы большинства пользовательских программ. По этой причине практически все они доступны только для чтения (для обычного пользователя).

/usr/bin — основные пользовательские утилиты;

/usr/sbin — дополнительные утилиты для администрирования и настройки системы;

/usr/lib — библиотеки утилит из /usr/bin и /usr/sbin ;

/usr/share — содержит документацию или общие для всех библиотек данные.

/lib — каталог совместно используемых библиотек

Каталог /lib содержит библиотеки, необходимые двоичным файлам в каталогах /bin и /sbin .

/sbin — системные утилиты

Каталог /sbin аналогичен каталогу /bin . Он содержит основные двоичные файлы утилит системного администрирования, которые, обычно, предназначены для запуска привилегированным (root) пользователем (ifconfig, dhclient, dmidecode, init и т.д.).

/tmp — временные файлы

Как следует из названия, в каталоге /tmp хранятся временные файлы используемых приложений (вы тоже можете задействовать данный каталог для размещения своих временных файлов).

Читайте также:  Websocket клиент для windows

Но обратите внимание, что при перезагрузке вашей системы содержимое каталогов в /tmp удаляется. Некоторые Linux-системы могут в любое время автоматически удалить старые файлы, поэтому не храните здесь ничего важного.

/var — файлы изменяемых данных

Каталог /var (сокр. от «variable») является доступным для записи аналогом каталога /usr . Файлы журналов, кэш программ, информация об очереди печати, общая информация с момента запуска системы — всё это пишется в каталог /var .

Файлы, хранящиеся здесь, не очищаются автоматически. По этой причине данный каталог представляет большой интерес для системных администраторов, ищущих информацию о поведении своей системы. Например, если вы хотите ознакомиться с глобальным системным журналом Linux, то просто посмотрите содержимое файла /var/log/syslog .

/proc — файлы процессов

Каталог /proc похож на каталог /dev , потому что он содержит не обычные файлы, а специальные файлы, предоставляющие информацию о запущенных процессах и состоянии ядра. Содержимое каталога /proc используется рядом утилит для получения системной информации этапа времени выполнения.

Например, если вы хотите проверить информацию о процессоре в Linux, то можете просто обратиться к файлу /proc/cpuinfo . Если вы хотите проверить использование памяти вашей системы Linux, посмотрите на содержимое файла /proc/meminfo .

/opt — optional software (дополнительное ПО)

Каталог /opt содержит подкаталоги для дополнительных пакетов программного обеспечения. Обычно он используется проприетарным программным обеспечением, которое не подчиняется стандартной иерархии файловой системы, например, проприетарная программа при установке может сохранить свои файлы в /opt/application .

/root — the home directory of the root (домашняя папка root-пользователя)

Каталог /root — это домашний каталог пользователя root. Вместо того, чтобы быть расположенным в /home/root , он находится в /root . Стоит отметить, что следует отличать данный каталог от каталога / , который, в свою очередь, является корневым каталогом всей системы.

/media — mount point for removable media (точка монтирования съемных носителей)

При подключении съемного носителя, такого как USB-диск, SD-карта или DVD-диск, для них автоматически создается соответствующая папка в каталоге /media. При помощи такой папки вы можете получить доступ к содержимому съемного носителя.

/mnt — mount directory (точка монтирования файловых систем)

Каталог /mnt похож на каталог /media , но вместо автоматического монтирования съемного носителя, /mnt используется системными администраторами для ручного монтирования различных файловых систем.

Примечание: Исторически сложилось, что каталог /mnt — это место, где системные администраторы монтировали временные файловые системы во время их использования. Например, если вы монтируете раздел Windows для выполнения некоторых операций восстановления файлов, вы можете смонтировать его в /mnt/windows . Однако вы также можете монтировать файловые системы и в отличном от /mnt месте системы.

/srv — service data (служебные данные)

Каталог /srv содержит данные об «услугах», предоставляемых системой. Если вы используете HTTP-сервер Apache для обслуживания веб-сайта, то вы, скорее всего, храните файлы вашего сайта внутри каталога /srv .

/run — application state files (файлы текущего состояния приложений)

Каталог /run предоставляет приложениям стандартное место для хранения временных файлов и данных, которые требуются для работы различных процессов с момента запуска системы (сокеты, идентификаторы процессов и пр.). Данные файлы не сохраняются в /tmp по той причине, что из /tmp они могут быть удалены.

/lost+found — recovered files (восстановленные файлы)

Каждая файловая система Linux имеет каталог /lost+found. Если файловая система выходит из строя, то при следующей загрузке будет выполнена её проверка. Все найденные поврежденные файлы будут помещены в каталог /lost+found , так что вы сможете попытаться восстановить как можно больше данных.

Поделиться в социальных сетях:

Источник

Оцените статью