JFS
JFS (Journaled File System) — 64-битная журналирующая файловая система, созданная компанией IBM. Реализация в ядре Linux доступна как свободное ПО на условиях лицензии GNU General Public License. Эта файловая система потребляет мало ресурсов и сравнительно быстро выполняет все операции над файлами (в противовес другим специализированным ФС, например XFS, которая быстро работает с большими файлами, но медленно — с маленькими). Благодаря этому JFS особенно хорошо работает в устройствах, питаемых от батарей, например, ноутбуках.
Установка
Ядро
JFS поддерживается стандартным ядром Linux:
File systems --->
<*> JFS filesystem support
Дополнительные возможности JFS:
File systems --->
<*> JFS filesystem support
[*] JFS POSIX Access Control Lists
[*] JFS Security Labels
[ ] JFS debugging
[*] JFS statistics
Emerge
Утилиты для файловой системы доступны в пакете sys-fs/jfsutils:
root #emerge --ask sys-fs/jfsutilsИспользование
Создание
root #mkfs.jfs /dev/sda1Монтирование
root #mount -t jfs /dev/sda1 /path/to/mountpointИзвлечение журнала fsck
jfs_fscklog может извлечь журнал fsck из устройства JFS.
root #jfs_fscklog -d /dev/sda1 -f fsck.logНастройка
Для изменения различных параметров можно использовать jfs_tune, например, для изменения UUID:
root #jfs_tune -l -U random /dev/sda1Инструменты
| Инструмент | Описание[1] | Man-страница |
|---|---|---|
| fsck.jfs | Жёсткая ссылка на jfs_fsck. | |
| jfs_fsck | Проверяет файловую систему JFS на повреждения. | jfs_fsck(8) |
| mkfs.jfs | Жёсткая ссылка на jfs_mkfs. | |
| jfs_mkfs | Создаёт новую файловую систему JFS. | jfs_fsck(8) |
| jfs_debugfs | Инструмент для выполнения низкоуровневых операций над файловой системой JFS. | jfs_debugfs(8) |
| jfs_fscklog | Извлекает журнал fsck из файловой системы JFS. | jfs_fscklog(8) |
| jfs_logdump | Выводит журнал файловой системы в ./jfslog.dmp. | jfs_logdump(8) |
| jfs_tune | Изменяет настраиваемые параметры файловой системы. | jfs_tune(8) |
Решение проблем
Fsck
Отмонтируйте файловую систему для предотвращения повреждения файлов.
Чтобы проверить файловую систему JFS на повреждения, запустите fsck.jfs:
root #fsck.jfs /dev/sda1Debugfs
Для низкоуровневых операций над файловой системой JFS можно использовать jfs_debugfs.
В данном примере файловая система JFS имеет следующую иерархию:
test/
├── a
├── b
├── c
Сначала необходимо узнать inode для корня каталога.
2 — это номер inode
user $ls -id2 .
Далее войдите в интерфейс debugfs через jfs_debugfs:
root #jfs_debugfs /dev/sda1Теперь выведите список каталогов через номер inode:
>dir 2idotdot = 2 4096 test
4096 — это inode каталога test, отобразим его содержимое:
>dir 4096idotdot = 2 4097 a 4098 b 4099 c
Чтобы узнать, на что способен интерфейс debugfs, обратитесь к man-странице jfs_debugfs(8).
Смотрите также
- XFS — a high-performance journaling filesystem
- Ext4 — дисковая файловая система с открытым исходным кодом, и самая последняя версия серии «расширенных файловых систем».