※chatgptに聞いてまとめた
※完全自分用のメモ
ls -laで出力される.と..はなんで表示されるのか
背景
lsでファイルやディレクトリの一覧を見ることができる。
また、"."はカレント、".."は一つ上のディレクトリということは理解していた。
でもなぜ、カレントと1つ上のディレクトリが隠しファイルとして出力されるのか疑問に思った。
回答
ls -laで"."と".."のエントリが表示されるのはLinux(正確にはUNIX)の仕様。
Linuxでは、ディレクトリも実体は「ファイル」である。
※UNIXの設計思想に「すべてはファイルである」という考え方があるため。
→つまり、ファイルとは「何かにアクセスするための抽象的な窓口」
 →ディレクトリはフォルダではなく、inode番号の対応表。
 →見かけは何か含んでいるディレクトリも、実際はディレクトリのinode番号にファイルのinode番号は紐づいているそう。紐づけは内部で勝手にやってくれる。
↓chatgptと壁打ち
エントリとは
ls -lで表示される各行を指し、ファイルとかディレクトリの各情報
※ファイル名(エントリ名)とinode番号のペア
inodeとは
すべてのファイルやディレクトリの実体(場所やパーミッション、サイズなど)
inodeを見るにはlsコマンドに"-i"オプションをつける。
※"stat ファイル名"でもinode番号を確認できる
inode番号を指定して削除はできるのか
findやdebugfsなどの低レベルツールのコマンドで削除可能
※ファイルシステム内部の構造だから誤るとファイル破損やOSのトラブルの原因になる。
低レベルツールとは
高レベルとはlsやrmなどのOSが提供するわかりやすい普段使用するようなコマンドのこと
対して低レベルとは、直接ディスクやファイルシステムの構造に触るコマンドのこと。
~いろいろ質問を繰り返して~
1000ではなく1024で割るのはなぜか
コンピュータは2進数で動いているから
1KB = 2^10 = 1024バイト
→言われたらそうだったとなるけど、普段1024というものとして覚えていてちゃんと理解してなかったからこういう無駄な質問になった気がする。
Zabbixなどで1000で割られた値が表示されることがある
Webフロントエンドでは「SI単位」で表示されることがあるため
ファイルシステムの種類
おもなファイルシステム
Linux
・ext4
・xfs
・btrfs
・zfs
・vfat / exfat
Windows
・NTFS
・FAT32
・exFAT