Day 2 Flashcards
What benefit does Journaling add to a file system?
Improves reliability by writing metadata that can be used to self-repair/self-recover a file system in the event of corruption.
Does the ext3 file system support file carving?
No - data is spread out across the drive in data blocks rather contiguously in clusters.
Are ext file systems affected by file slack?
No - Disk drives implementing ext file systems still use clusters, however the file system override this by allocating data blocks which are of a set size. As such, there is no redundant data at the tail of clusters which can contain previously deleted data.
What is the typical size of a data group? Are there any edge cases?
- The usual size of a data block is 4Kib (4096 bytes). However, the block size is determined by the superblock and may be smaller/larger.
- The last data block in the file system is usually smaller (it fills the remaining space available)
In an ext file system, what is a volume split into?
Block groups.
In an ext system, each file contains what three main file system structures in order to provide the file structure and metadata?
- Directory Entry (File type, file name and the location of the iNode Table)
- iNode Table (File metadata, the memory addresses of the blocks of data that make up the file contents)
- Data block (the file content)
Does ext3 support created date metadata?
No, ext3 only supports last accessed metadata.
Created was only mandatory metadata in ext4.
Name the 6 areas that each block group can be split into:
- Superblock.
- Group descriptor.
- Block bitmap.
- INode bitmap.
- INode table.
- Data.
How many bytes of offset preceded the superblock the start of the ext file system?
1024 bytes (1KiB)
Each block group contains its own copy of the superblock. True or False?
True.
How big is the superblock?
1024 bytes (1 KiB)
What 6 pieces of information does the superblock contain?
- The superblock signature (0xEF53)
- The number of inodes and blocks in the file system.
- The block size (usually 4KiB)
- The number of blocks on each group.
- The last mount time for the volume the file system is embedded in.
- The name of the volume (Volume label)
What 5main pieces of information does the group descriptor store in each block group?
- Location/ Block number of the iNode table.
- Location/Block number of the iNode table.
- Number of directories in the block group.
- Number of free blocks in the group.
- Number of free iNode on the group.
Does the group descriptor point to the data blocks containing directory data?
No, this is handled by the iNode tables.
What do the Block and iNode bitmaps contained in each block group do?
They represent which data blocks/iNodes inside each block group are available/unavailable respectively.
When are the iNode tables created?
When the file system is first formatted.
How big is an ext-3 iNode?
128 bytes.
How big is an ext-4 iNode?
256 bytes.
What 5 pieces of metadata does an iNode contain?
- MAC times (Accessed, Modified, Deleted, Created (ext-4 only))
- File Size
- File Type.
- Permissions (User, group, other)
- Block pointers.
What are the four types of block pointer in an iNode and how many are found in each iNode?
- Direct bloc pointer (12x)
- Single indirect block pointer (1x)
- Double indirect (1x)
- Triple indirect (1x£
What are the 7 file types that a iNode/Directory entry can be assigned?
- File
- Directory
- Character Device
- Block Device
- FIFO
- UNIX Socket
- Symlink
What version of ext introduced journaling?
ext-3
What are the 3 journaling modes supported by ext?
- Writeback
- Ordered
- Journal
What is the default journaling mode?
- Ordered.
What are the features of writeback journaling?
- Records metadata but writes at anytime.
- Faster, but limited data integrity
What is the main feature of ordered journaling?
- Records metadata, writes data and updates metadata.
What are the main features of Journal journaling?
- Records both metadata and content for files.
- Journals all data, is the safest option but slower.
- Needs more storage to support due to large amount of journal writing.
What are the two types of ext-4 extents?
- Leaf
- Index
What are extents?
Contiguous blocks of data in block groups. Data is grouped together in leaves/indexes rather than spread out as per ext-3 for more efficient storage usage.