Di masa lalu, saya mengetahui bahwa di sistem file Linux / UNIX, direktori hanyalah file, yang berisi nama file dan nomor inode dari file di dalam direktori.
Apakah ada cara sederhana untuk melihat konten direktori? Maksud saya cara nama file dan inode disimpan / diatur.
Saya tidak mencari ls
, find
atau sesuatu yang serupa. Saya juga tidak ingin melihat konten file di dalam direktori. Saya ingin melihat implementasi direktori. Jika setiap direktori hanyalah file teks dengan beberapa konten, mungkin ada cara sederhana untuk melihat konten file teks ini.
Dalam bash di Linux tidak mungkin untuk melakukan a cat folder
. Outputnya adil Is a directory
.
Perbarui Pertanyaan Bagaimana seseorang memeriksa informasi struktur direktori dari file unix / linux? mengatasi masalah yang sama tetapi tidak memiliki solusi yang bermanfaat seperti yang dari mjturner .
sumber
vi <folder>
sesuai dengan kebutuhan Anda? Sebut sajavim <DIR>
Apa ini yang kau inginkan?stat
perintah.stat folder
.cat
akan berhasil. Tetapi pendekatan itu sudah usang beberapa dekade yang lalu. Saya tidak tahu cara langsung untuk melihat penyimpanan sistem file yang sebenarnya. Sebaliknya ada panggilan sistem baru untuk mengembalikan informasi dalam format standar yang tetap sama terlepas dari sistem file mana yang digunakan.Jawaban:
Alat untuk menampilkan detail inode untuk sistem file akan spesifik sistem file. Untuk
ext2
,ext3
,ext4
filesystem (yang paling umum filesystem Linux), Anda dapat menggunakandebugfs
, untuk XFSxfs_db
, untuk ZFSzdb
. Untukbtrfs
beberapa informasi tersedia menggunakanbtrfs
perintah.Sebagai contoh, untuk menjelajahi direktori pada sistem
ext4
file (dalam hal ini/
adalahdev/sda1
):Di atas, kita mulai dengan menemukan inode direktori
src
(664488
) dan kemudian membuang isinya ke dalam filesrc.out
dan kemudian menampilkannya menggunakanod
. Seperti yang Anda lihat, isi semua file di direktori itu (Animation.js
, dll.) Terlihat di dump.Ini hanya permulaan - lihat
debugfs
halaman manual atau ketik dihelp
dalamnyadebugfs
untuk informasi lebih lanjut.Jika Anda menggunakan
ext4
, Anda dapat menemukan informasi lebih lanjut tentang struktur dan tata letak entri direktori dalam dokumentasi kernel .sumber
od -x
untuk membuang file entri direktori.Anda dapat menggunakan bahasa pemrograman pilihan Anda, buka direktori seolah-olah itu file dan baca byte dari file yang dihasilkan. Itu tidak akan memberi tahu Anda banyak, karena itu hanya akan menjadi sampah (dengan beberapa string yang dikenali di dalamnya) selama Anda tidak tahu bagaimana itu diatur. Bagaimana pengaturannya adalah masalah implementasi untuk sistem file yang dimaksud. Jika Anda ingin melihat hal-hal ini secara mendalam, saya sarankan Anda mulai dengan membaca
man dirent.h
. Itu seharusnya cukup untuk mengarahkan Anda lebih jauh ke arah apa yang Anda sukai.sumber
Anda dapat mencoba (partisi adalah contoh).
gunakan dump untuk menulis data inode ke file.
pria adalah teman Anda, ini harus memberi Anda beberapa ide.
sumber