Skip to main content

Library used to build simple disk images with multiple partitions

Project description

How to use

See examples/

Dependencies

Debian/Ubuntu

# Common
$ sudo apt install python3-parted python3-distutils
# FAT support
$ sudo apt install dosfstools mtools
# ext* support
$ sudo apt install e2fsprogs
# All
$ sudo apt install python3-parted python3-distutils dosfstools mtools e2fsprogs

Fedora/CentOS

# Common
$ sudo dnf install python3-pyparted
# FAT support
$ sudo dnf install dosfstools mtools
# ext* support
$ sudo dnf install e2fsprogs
# All
$ sudo dnf install python3-pyparted dosfstools mtools e2fsprogs

Known issues

mtools and debugfs is not good at error reporting, so if a copy fails it might not show until you try to mount the image.

Parted misbehaves on some platforms (Debian 10), and shrinks partitions. Use Sfdisk instead. Additionally, some FAT implementations expect the file system to have exactly the same size as the partition, and thus padding them will not work, unless done exactly.

copy_file_range seems to misbehave in containers sometimes, observed on Fedora 30 + podman with Debian 10 container where it skips to copy some data.

Future

  • Configurable alignment
  • Optional cleaning ("always", "not on error", "never")
  • Proper naive copy_file_range function, using dup()
  • Integrated and automated tests
  • GPT for sfdisk partitioner
  • Multiboot images (iso, efi, bios)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

simplediskimage-0.1.1.tar.gz (12.3 kB view details)

Uploaded Source

Built Distributions

simplediskimage-0.1.1-py3.7.egg (30.5 kB view details)

Uploaded Source

simplediskimage-0.1.1-py3-none-any.whl (15.7 kB view details)

Uploaded Python 3

File details

Details for the file simplediskimage-0.1.1.tar.gz.

File metadata

  • Download URL: simplediskimage-0.1.1.tar.gz
  • Upload date:
  • Size: 12.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.19.1 CPython/3.7.5

File hashes

Hashes for simplediskimage-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d5e3586d6bfda2c604f4c05b0f0ba792c71ddb4ab21d255d7be47873f7826b52
MD5 dda5197b21faa76d5021eb03b03c2637
BLAKE2b-256 f92b47945b6cdeff347829e59c48736e7d7ff3fa89e6653480f4fa5a955c5234

See more details on using hashes here.

File details

Details for the file simplediskimage-0.1.1-py3.7.egg.

File metadata

  • Download URL: simplediskimage-0.1.1-py3.7.egg
  • Upload date:
  • Size: 30.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.19.1 CPython/3.7.5

File hashes

Hashes for simplediskimage-0.1.1-py3.7.egg
Algorithm Hash digest
SHA256 f3eb18e03727707c4510479ae07cfa6e8a7598bf77ca0130de003de528e06b40
MD5 da74802876b2550e210482c7f1a16a78
BLAKE2b-256 85dd3ea98f23ae7e7e7e335df7c16b312c0fbd1732b18a83e444bb234ec0c1e2

See more details on using hashes here.

File details

Details for the file simplediskimage-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: simplediskimage-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 15.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.19.1 CPython/3.7.5

File hashes

Hashes for simplediskimage-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f559642710c65db1d1d28acaff3e98f5695f508bd40bd339877a7299cdd527ff
MD5 e8131685c4894c383a4f9cfdd3c46849
BLAKE2b-256 bbd9f4f166bab9f373267b1eafcc4775984c3c334afc0aab36b2f472d67b3a74

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page