Documentation ¶
Index ¶
- Constants
- Variables
- type EXT4
- func (ext4 *EXT4) ByteOrder() binary.ByteOrder
- func (ext4 *EXT4) FSBlockSize() uint64
- func (ext4 *EXT4) FreeCapacity() uint64
- func (ext4 *EXT4) ProbeFS(devicePath string, startOffset int64) (bool, error)
- func (ext4 *EXT4) TotalCapacity() uint64
- func (ext4 *EXT4) Type() string
- func (ext4 *EXT4) UUID() (string, error)
- type EXT4SuperBlock
Constants ¶
View Source
const FSTypeEXT4 = "ext4"
View Source
const (
RevlevelDynamicRev = 1
)
Variables ¶
View Source
var EXT4MagicNum = uint16(0xef53)
View Source
var ErrNotEXT4 = errors.New("Not a ext4 partition")
Functions ¶
This section is empty.
Types ¶
type EXT4 ¶
type EXT4 struct {
SuperBlock *EXT4SuperBlock
}
func (*EXT4) FSBlockSize ¶
func (*EXT4) FreeCapacity ¶
func (*EXT4) TotalCapacity ¶
type EXT4SuperBlock ¶
type EXT4SuperBlock struct { NumInodes uint32 NumBlocks uint32 ReservedBlocks uint32 FreeBlocks uint32 FreeInodes uint32 FirstDataBlock uint32 LogBlockSize uint32 LogClusterSize uint32 BlocksPerGroup uint32 ObsoleteFragmentsPerGroup uint32 InodesPerGroup uint32 MountTime uint32 WriteTime uint32 MountCount uint16 MaxMountCount uint16 MagicNum uint16 FilesystemState uint16 Errors uint16 MinorRevLevel uint16 LastCheckTime uint32 CheckInterval uint32 CreatorOS uint32 RevLevel uint32 DefaultReserveUID uint16 DefaultReserveGID uint16 SFirstIno uint32 /* First non-reserved inode */ SInodeSize uint16 /* size of inode structure */ SBlockGroupNr uint16 /* block group # of this superblock */ SFeatureCompat uint32 /* compatible feature set */ SFeatureIncompat uint32 /* incompatible feature set */ SFeatureRoCompat uint32 /* readonly-compatible feature set */ SUuid [16]uint8 /* 128-bit uuid for volume */ SVolumeName [16]byte /* volume name */ SLastMounted [64]byte /* directory where last mounted */ SAlgorithmUsageBitmap uint32 /* For compression */ /* * Performance hints. Directory preallocation should only * happen if the EXT4_FEATURE_COMPAT_DIR_PREALLOC flag is on. */ SPreallocBlocks uint8 /* Nr of blocks to try to preallocate*/ SPreallocDirBlocks uint8 /* Nr to preallocate for dirs */ SReservedGdtBlocks uint16 /* Per group desc for online growth */ /* * Journaling support valid if EXT4_FEATURE_COMPAT_HAS_JOURNAL set. */ SJournalUuid [16]uint8 /* uuid of journal superblock */ SJournalInum uint32 /* inode number of journal file */ SJournalDev uint32 /* device number of journal file */ SLastOrphan uint32 /* start of list of inodes to delete */ SHashSeed [4]uint32 /* HTREE hash seed */ SDefHashVersion uint8 /* Default hash version to use */ SJnlBackupType uint8 SDescSize uint16 /* Size of group descriptors, in bytes, if the 64bit incompat feature flag is set. */ SDefaultMountOpts uint32 SFirstMetaBg uint32 /* First metablock block group */ SMkfsTime uint32 /* When the filesystem was created */ SJnlBlocks [17]uint32 /* Backup of the journal inode */ // 0x150 SBlocksCountHi uint32 /* Blocks count */ SRBlocksCountHi uint32 /* Reserved blocks count */ SFreeBlocksCountHi uint32 /* Free blocks count */ SMinExtraIsize uint16 /* All inodes have at least # bytes */ SWantExtraIsize uint16 /* New inodes should reserve # bytes */ SFlags uint32 /* Miscellaneous flags */ SRaidStride uint16 /* RAID stride */ SMmpInterval uint16 /* # seconds to wait in MMP checking */ SMmpBlock uint64 /* Block for multi-mount protection */ SRaidStripeWidth uint32 /* blocks on all data disks (N*stride)*/ SLogGroupsPerFlex uint8 /* FLEX_BG group size */ SChecksumType uint8 /* metadata checksum algorithm used */ SEncryptionLevel uint8 /* versioning level for encryption */ SReservedPad uint8 /* Padding to next 32bits */ SKbytesWritten uint64 /* nr of lifetime kilobytes written */ SSnapshotInum uint32 /* Inode number of active snapshot */ SSnapshotId uint32 /* sequential ID of active snapshot */ SSnapshotRBlocksCount uint64 /* reserved blocks for active snapshot's future use */ SSnapshotList uint32 /* inode number of the head of the on-disk snapshot list */ SErrorCount uint32 /* number of fs errors */ SFirstErrorTime uint32 /* first time an error happened */ SFirstErrorIno uint32 /* inode involved in first error */ SFirstErrorBlock uint64 /* block involved of first error */ SFirstErrorFunc [32]uint8 /* function where the error happened */ SFirstErrorLine uint32 /* line number where error happened */ SLastErrorTime uint32 /* most recent time of an error */ SLastErrorIno uint32 /* inode involved in last error */ SLastErrorLine uint32 /* line number where error happened */ SLastErrorBlock uint64 /* block involved of last error */ SLastErrorFunc [32]uint8 /* function where the error happened */ SMountOpts [64]uint8 SUsrQuotaInum uint32 /* inode for tracking user quota */ SGrpQuotaInum uint32 /* inode for tracking group quota */ SOverheadClusters uint32 /* overhead blocks/clusters in fs */ SBackupBgs [2]uint32 /* groups with sparse_super2 SBs */ SEncryptAlgos [4]uint8 /* Encryption algorithms in use */ SEncryptPwSalt [16]uint8 /* Salt used for string2key algorithm */ SLpfIno uint32 /* Location of the lost+found inode */ SPrjQuotaInum uint32 /* inode for tracking project quota */ SChecksumSeed uint32 /* crc32c(uuid) if csum_seed set */ SWtimeHi uint8 SMtimeHi uint8 SMkfsTimeHi uint8 SLastcheckHi uint8 SFirstErrorTimeHi uint8 SLastErrorTimeHi uint8 SPad [2]uint8 SReserved [96]uint32 /* Padding to the end of the block */ SChecksum int32 /* crc32c(superblock) */ // contains filtered or unexported fields }
func (EXT4SuperBlock) HasExtended ¶
func (e EXT4SuperBlock) HasExtended() bool
func (EXT4SuperBlock) Is ¶
func (e EXT4SuperBlock) Is() bool
Click to show internal directories.
Click to hide internal directories.