From Mageia wiki
Jump to: navigation, search

structure:

main backend:

  • load modules
  • load config
  • probe changes (merge? detect changes? keep in mind changed unsaved config?)
  • save config
  • inotify on devices used? or patterns? or just reload button?
  • free


modular system: basic:

  • fstab
  • disks (pata, sata, raidcard, virtual(xen,vmware,kvm,...)?) (maybe different modules for each?)
  • mbr
  • gpt
  • extfs
  • btrfs
  • mount

extended:

  • windows
  • mdadm
  • dmraid
  • lvm
  • nfs
  • smbfs
  • iscsi
  • xfs
  • ...

abstract base Classes:

  • IOType
  • PartType

IOType:

  • id
  • label

IOTypes:

  • ro:reflist of IOType
  • restrictions(?)
  • append
  • remove

PartType:

  • in: IOTypes
  • out: IOTypes
  • in-restrictions
  • out-restrictions
  • properties: hash
  • actions: hash

keep in mind:

  • broken/missing/slow devices
  • disks can have NO partition table and be perfectly ok, it's fine to have a partition table in a partition, or a disk with a direct filesystem! or disk with luks and then partition table...