Рабочий стол FreeBSD

Хороший вопрос. Похоже, в настоящее время нет простых высокоуровневых способов ответить на него.

Одна из проблем заключается в том, что файл может делиться только частью данных через Copy-on-Write. Это называется физическим экстентом, и некоторые или все физические экстенты могут быть общими для файлов CoW.

Нет ничего аналогичного inode, который, при сравнении между файлами, сказал бы вам, что файлы разделяют одни и те же физические экстенты. (Edit: see my other answer).

Ответ на низком уровне заключается в том, что вы можете спросить ядро, какие физические экстенты используются для файла, используя FS_IOC_FIEMAP ioctl, который документирован в Documentation/filesystems/fiemap.txt. В принципе, если все физические экстенты одинаковы, то файл должен использовать одно и то же базовое хранилище.

Немногие вещи реализуют способ просмотра этой информации на более высоком уровне. Я нашел несколько go code здесь. Очевидно, утилита filefrag должна показывать экстенты с параметром -v. Кроме того, btrfs-debug-tree показывает эту информацию.

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

Некоторые связанные вопросы:

1
10.06.2015, 10:37
1 ответ

Это довольно просто. Введите одну из этих команд

pkg install gnome2
pkg install x11/kde4
pkg install xfce

в зависимости от того, что вы хотите использовать в качестве среды рабочего стола: GNOME, KDE или Xfce.

Для получения дополнительной информации, прочитайте руководство.

3
29.04.2021, 00:27

Теги

Похожие вопросы