Метаданные linux что это

Обновлено: 03.07.2024

Ваша система когда-нибудь жаловалась на то, что у вас не осталось свободного места, в то время как его было явно более чем достаточно?

Иноды и метаданные

Файловая система должна хранить файлы, которые могут находиться в каталогах, которые, в свою очередь, могут иметь подкаталоги. При этом что-то где-то должно записывать информацию о расположении всех файлов файловой системы, имена файлов, их размер, к каким учетным записям они принадлежат, какие у них разрешения и т.д. Данная информация называется метаданными — данные, которые описывают другие данные. Метаданные хранятся в иноде файла.

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

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

Иноды уникальны только в границах разделов своих файловых систем. Если у вас есть два файла, которые находятся на разных разделах диска, то у них могут быть одинаковые номера инодов.

Если у вас закончатся иноды, то вы больше не сможете создавать новые файлы, даже если у вас осталось место в разделе диска.

Как получить информацию об инодах в Linux?

Вы можете легко вывести список номеров инодов с помощью следующей команды:

На следующем скриншоте показан мой корневой каталог с соответствующими номерами инодов:


Количество инодов в каждой файловой системе задается на этапе её создания, и, как правило, для большинства пользователей их количества более чем достаточно.

По умолчанию параметры файловой системы таковы, что создается 1 инод на 2 КБ пространства диска. Такого количества инодов достаточно для большинства систем. Скорее место на вашем жестком диске исчерпается раньше, чем закончатся все иноды. При необходимости, во время определения первоначальных параметров файловой системы, вы можете указать, сколько инодов требуется создать.

В некоторых файловых системах, таких как Btrfs, JFS, XFS, реализованы динамические иноды. При необходимости такие файловые системы могут увеличить количество доступных инодов.

Как работает инод?

При создании нового файла ему назначается номер инода и имя файла. Номер инода — это уникальный номер файла в файловой системе. И имя, и номер инода хранятся в виде записи в каталоге.

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

Вы можете перечислить информацию об инодах для каждой файловой системы с помощью следующей команды:



Иноды и ссылки

Символьные ссылки являются хорошо известной особенностью Linux. Но что происходит с инодами, когда мы создаем символьную ссылку? На следующем скриншоте у меня есть файл с именем file1, каталог под названием dir1, внутри которого расположилась символьная ссылка под названием slink1, которая указывает на ../file1 :


Теперь сравним их номера инодов:


Как и ожидалось, dir1 и file1 имеют разные номера инодов. Но то же самое относится и к символьной ссылке. Когда вы определяете символьную ссылку, то тем самым создаете новый файл. В своих метаданных он указывает на целевой объект. Для каждой создаваемой вами символьной ссылки вы используете новый инод.

Теперь давайте создадим жесткую ссылку и посмотрим, что произойдет с инодами:

ln ../file1 hlink1

Выводим список номеров инодов:


Вы можете видеть, что file1 и hlink1 имеют одинаковый номер инода. Жесткая ссылка не создает новый файл, она лишь предоставляет новое имя для тех же данных. Такое возможно благодаря введению механизма инодов.

Примечание: В более старых версиях Linux можно было создать жесткую ссылку на каталог. Было даже возможно сделать так, чтобы каталог стал родительским самому себе. Но теперь установлены некоторые ограничения, чтобы пользователи не создавали очень запутанную структуру каталогов.

Польза от инодов

Принцип работы инодов также объясняет, почему невозможно создать жесткую ссылку из одной файловой системы в другую. Разрешение такой задачи открыло бы возможность наличия конфликтующих номеров инодов. В то же время, символьная ссылка может быть создана в разных файловых системах.

Поскольку жесткая ссылка имеет тот же номер инода, что и исходный файл, то вы можете удалить исходный файл, и данные по-прежнему будут доступны по жесткой ссылке. Всё, что вы сделали в этом случае, — это удалили одно из имен, указывающих на заданный номер инода. Данные, связанные с этим инодом, будут оставаться доступными до тех пор, пока все имена, связанные с ним, не будут удалены.

Иноды также являются важной причиной, по которой Linux-системы могут обновляться без необходимости перезагрузки: один процесс может использовать библиотечный файл, в то время как другой процесс заменяет этот файл новой версией. Уже запущенный процесс будет продолжать использовать старый файл, в то время как каждый новый вызов к нему приведет к использованию новой версии.

В некоторых файловых системах, таких как ext4, есть опция под названием inline_data, которая позволяет операционной системе хранить данные вышеописанным способом. Из-за ограничения размера встраивание работает только для очень маленьких файлов.

Заключение

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


Мануал Метаданные либо встраиваются в само изображение, либо хранятся в отдельном файле.
  • Технические метаданные,
  • Описательные метаданные,
  • Административные метаданные.

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

Технические метаданные в основном генерируются автоматически устройствами камеры.

Описательные метаданные добавляются фотографом вручную. Владелец (или фотограф) может добавить его вручную, используя любое внешнее программное обеспечение, такое как GIMP или Photoshop. Он включает в себя такую ​​информацию, как название фотографии, местоположение, имя фотографа, комментарии и т. д.

Описательные метаданные очень полезны для простого и быстрого поиска фотографий.

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

Добавление метаданных к изображениям важно для предотвращения кражи содержимого, неправильного использования и отслеживания использования изображений. Однако метаданные могут быть легко удалены. Надеюсь, вы получите базовое представление о метаданных Image и их типах.

Теперь давайте продолжим и посмотрим, как найти информацию об изображениях из командной строки в Linux.

Просмотр метаданных изображения в Linux

Существует множество инструментов для поиска метаданных изображения в Linux.

Здесь я покажу три инструмента командной строки для просмотра таких деталей.

1. Использование ImageMagick

ImageMagick имеет инструмент командной строки с именем «Identify» для поиска метаданных изображения.

ImageMagick доступен в репозиториях по умолчанию большинства дистрибутивов Linux.

В Arch Linux и его вариантах выполните следующую команду для установки ImageMagick:


Мануал

В области кибербезопасности и форензики метаданные файлов очень важны.

Мы можем получить различную информацию из метаданных в файлах.

Эти метаданные могут помочь нам получить гораздо больше инсайдерской информации при проведении форензики.

Кроме того, если мы думаем о своей конфиденциальности, то метаданные могут повредить нам, и в этом случае мы можем удалить метаданные.

В этом подробном руководстве мы собираемся обсудить, как мы можем читать и удалять метаданные любых файлов с помощью Kali Linux.

Для просмотра и удаления метаданных в Kali Linux (или любом другом Linux), нам необходимо установить программу mat2.

Чтобы установить его в нашей системе, нам нужно применить следующую команду в Терминале:

На следующем скриншоте видно, что mat2 устанавливается на нашу систему.

Это не очень большой пакет (менее 25 МБ), и время установки будет зависеть от скорости нашего интернет-соединения и производительности системы.


После завершения установки мы можем посмотреть флаги утилиты mat2 с помощью следующей команды:

Теперь мы можем прочитать опции справки, чтобы узнать обо всех возможностях этого инструмента.

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

Давайте воспользуемся им.

Mat2 может просматривать и удалять метаданные из файлов, поэтому для работы нам нужны файлы.

Здесь у нас есть загруженное изображение, которое содержит метаданные.

Мы сохранили изображение на рабочем столе (home/kali/Desktop/IMG_20201007_102037.jpg ).

Чтобы просмотреть его метаданные, мы можем использовать следующую команду:

На следующем снимке экрана мы видим метаданные этого изображения с различной полезной информацией:


Теперь, если мы хотим удалить эти метаданные из файла, нам нужно ввести следующую команду в терминале:

Старые файлы останутся без изменений, но будут созданы новые файлы со строкой .clean в имени и полностью очищенными метаданными.

Теперь мы можем проверить, есть ли метаданные в новом очищенном файле, используя следующую команду:

Таким образом мы можем удалить метаданные любого файла (не только изображения), и если нам нужно очистить метаданные всех файлов в определенной папке, то мы можем просто ввести следующую команду:

Приведенная выше команда удалит метаданные из всех файлов на нашем Рабочем столе.

Если мы хотим очистить метаданные файлов в других папках, то нам нужно поместить эту директорию в * .

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

Заключение

Таким образом, мы можем очистить или удалить метаданные из любых файлов в нашей системе Kali Linux.


Мануал

Метаданными могут быть координаты GPS, теги, время создания, время редактирования, имя устройства и т. д.

Установка

exiftool поддерживает большинство операционных систем, таких как Windows, Ubuntu, Fedora и т. д.

Ubuntu, Debian, Mint, Kali

exiftool предоставляется из пакета с именем libimage-exiftool-perl. Поэтому мы установим команду apt, как показано ниже.

Fedora, CentOS, RedHat

Windows

Мы можем скачать exiftool для операционных систем Windows по следующему URL.

Этот zip-файл содержит один исполняемый файл без какой-либо установки.

Нам просто нужно извлечь файл с помощью WinZip, 7zip, WinRAR и т. д.

Синтаксис

Синтаксис exiftool приведен ниже.

Мы видим, что существует 4 различных синтаксиса для разных вариантов использования, таких как чтение метаданных, запись метаданных, копирование метаданных и другие операции.

Перечислить все метаданные данного изображения / файла


Как мы видим, существует много метаданных у простого файла png.

Экспорт метаданных в файл HTML

Мы можем экспортировать метаданные данных файлов или изображений в формат файла HTML с опцией -h.

В этом примере мы экспортируем метаданные Tux.jpg в HTML-имя Tux.html.


Список метаданных в формате CSV

Мы можем вывести данные метаданных файла и изображения в формате CSV.

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

В этом примере мы будем выводить:

Список конкретных метаданных

Мы также можем перечислить и вывести определенные метаданные с помощью команды grep.

Читайте также: