.TH GENSQUASHFS "1" "June 2019" "generate squashfs images" "User Commands" .SH NAME gensquashfs \- generate squashfs images .SH SYNOPSIS .B gensquashfs [\fI\,OPTIONS\/\fR] \/\fR .SH DESCRIPTION Generate a SquashFS image. .SH OPTIONS .TP \fB\-\-pack\-file\fR, \fB\-F\fR Use a \fBgen_init_cpio\fR style description file. The file format is specified below. If \fB\-\-pack\-dir\fR is used, input file paths are relative to the pack directory, otherwise they are relative to the directory the pack file is in. .TP \fB\-\-pack\-dir\fR, \fB\-D\fR If \fB\-\-pack\-file\fR is used, this is the root path relative to which to read files. If no pack file is specified, pack the contents of the given directory into a SquashFS image. The directory becomes the root of the file system. .TP \fB\-\-compressor\fR, \fB\-c\fR Select the compressor to use. Run \fBgensquashfs \-\-help\fR to get a list of all available compressors and the default selection. .TP \fB\-\-comp\-extra\fR, \fB\-X\fR A comma seperated list of extra options for the selected compressor. Specify \fBhelp\fR to get a list of available options. .TP \fB\-\-block\-size\fR, \fB\-b\fR Block size to use for Squashfs image. Defaults to 131072. .TP \fB\-\-dev\-block\-size\fR, \fB\-B\fR Device block size to padd the image to. Defaults to 4096. .TP \fB\-\-keep\-time\fR, \fB\-k\fR Whe using \fB\-\-pack\-dir\fR only, use the timestamps from the input files instead of setting defaults on all input paths. The root inode and the modification time on the SquashFS image itself will still be set to defaults. .TP \fB\-\-defaults\fR, \fB\-d\fR A comma seperated list of default values for implicitly created directories. The following values can be set: .TS tab(;) allbox; l l l l l l l l l l rd. \fBOption\fR;\fBDefault\fR uid=;0 gid=;0 mode=;0755 mtime=;0 .TE .TP .TP \fB\-\-selinux\fR, \fB\-s\fR If built with SELinux support, use the given SELinux label file to add context labels to the elements packed into the SquashFS image. .TP \fB\-\-exportable\fR, \fB\-e\fR Generate an export table for NFS support. .TP \fB\-\-force\fR, \fB\-f\fR Overwrite the output file if it exists. .TP \fB\-\-quiet\fR, \fB\-q\fR Do not print out progress reports. .TP \fB\-\-help\fR, \fB\-h\fR Print help text and exit. .TP \fB\-\-version\fR, \fB\-V\fR Print version information and exit. .SH INPUT FILE FORMAT The input file contains a simple, newline separated list that describe the files to be included in the squashfs image: .PP .in +4n .nf # a comment file [] dir nod slink pipe sock .fi .in .TS tab(;) allbox; l l l l l l l l l l l l l l l l l l rd. ;T{ Absolute path of the entry in the image. Can be put in quotes if some components contain spaces. T} ;T{ Optional location of the input file. Can be specified relative to either the description file or the pack directory. If omitted, the image path is used as a relative path. T} ;Symlink target. ;Mode/permissions of the entry. ;Numeric user id. ;Numeric group id. ;Device type (b=block, c=character). ;Major number of a device special file. ;Minor number of a device special file. .TE .PP Example: .PP .in +4n .nf # A simple squashfs image dir /dev 0755 0 0 nod /dev/console 0600 0 0 c 5 1 dir /root 0700 0 0 dir /sbin 0755 0 0 # Add a file. Input is relative to pack dir or listing path file /sbin/init 0755 0 0 ../init/sbin/init # Read from ./bin/bash relative to pack dir or listing path # /bin is created implicitly with default attributes. file /bin/bash 0755 0 0 # file name with a space in it and a "special" name file "/opt/my app/\\"special\\"/data" 0600 0 0 .fi .in .SH AUTHOR Written by David Oberhollenzer. .SH COPYRIGHT Copyright \(co 2019 David Oberhollenzer License GPLv3+: GNU GPL version 3 or later . .br This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.