diff options
Diffstat (limited to 'rpi2-debian-stdkernel/format-sdcard.py')
-rwxr-xr-x | rpi2-debian-stdkernel/format-sdcard.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/rpi2-debian-stdkernel/format-sdcard.py b/rpi2-debian-stdkernel/format-sdcard.py new file mode 100755 index 0000000..ea08728 --- /dev/null +++ b/rpi2-debian-stdkernel/format-sdcard.py @@ -0,0 +1,33 @@ +#!/usr/bin/python3 + +import json +import subprocess +import sys + +def run(*l, **d): + print('run:', *l, d) + return subprocess.run(*l, **d) + +def main(): + if len(sys.argv) < 2: + print('Usage: {} <device>'.format(sys.argv[0]), file=sys.stderr) + raise SystemExit(1) + device = sys.argv[1] + # first, clean possible gpt tables + run(['sudo', 'sgdisk', '--zap-all', device]) + part_commands = ''' + mklabel msdos + mkpart primary fat32 1M 99M + mkpart primary ext4 100M -1M + set 1 boot on + print + ''' + run(['sudo', 'parted', device], + check=True, input=part_commands.encode('utf8')) + run(['sudo', 'mkfs.vfat', '-n', 'boot', device + '1', ], check=True) + run(['sudo', 'mkfs.ext4', '-q', '-F', '-L', 'root', device + '2'], + check=True) + + +if __name__ == '__main__': + main() |