7 for _PARAMETER in ${_CMDLINE}
9 case "${_PARAMETER}" in
10 live-boot.read-only|read-only)
20 live-boot.verify-checksums|verify-checksums)
21 LIVE_VERIFY_CHECKSUMS="true"
22 export LIVE_VERIFY_CHECKSUMS
26 live-boot.debug|debug)
31 # parameters below need review (FIXME)
37 export NOFASTBOOT NOFSTAB NONETWORKING
45 # Force dhcp even while netbooting
46 # Use for debugging in case somebody works on fixing dhclient
57 DEVICE="${ARGUMENT#ethdevice=}"
59 export DEVICE ETHDEVICE
63 ETHDEV_TIMEOUT="${ARGUMENT#ethdevice-timeout=}"
68 FETCH="${ARGUMENT#fetch=}"
73 FINDISO="${ARGUMENT#findiso=}"
78 FTPFS="${ARGUMENT#ftpfs=}"
83 HTTPFS="${ARGUMENT#httpfs=}"
88 ISCSI="${ARGUMENT#iscsi=}"
89 #ip:port - separated by ;
90 ISCSI_PORTAL="${ISCSI%;*}"
91 if echo "${ISCSI_PORTAL}" | grep -q , ; then
92 ISCSI_SERVER="${ISCSI_PORTAL%,*}"
93 ISCSI_PORT="${ISCSI_PORTAL#*,}"
96 ISCSI_TARGET="${ISCSI#*;}"
97 export ISCSI ISCSI_PORTAL ISCSI_TARGET ISCSI_SERVER ISCSI_PORT
101 FROMISO="${ARGUMENT#*=}"
111 STATICIP="${ARGUMENT#ip=}"
113 if [ -z "${STATICIP}" ]
121 live-media=*|bootfrom=*)
122 LIVE_MEDIA="${ARGUMENT#*=}"
126 live-media-encryption=*|encryption=*)
127 LIVE_MEDIA_ENCRYPTION="${ARGUMENT#*=}"
128 export LIVE_MEDIA_ENCRYPTION
132 LIVE_MEDIA_OFFSET="${ARGUMENT#live-media-offset=}"
133 export LIVE_MEDIA_OFFSET
137 LIVE_MEDIA_PATH="${ARGUMENT#live-media-path=}"
138 export LIVE_MEDIA_PATH
141 live-media-timeout=*)
142 LIVE_MEDIA_TIMEOUT="${ARGUMENT#live-media-timeout=}"
143 export LIVE_MEDIA_TIMEOUT
147 MODULE="${ARGUMENT#module=}"
152 NETBOOT="${ARGUMENT#netboot=}"
157 NFSOPTS="${ARGUMENT#nfsopts=}"
162 NFS_COW="${ARGUMENT#nfsoverlay=}"
182 ramdisk_size="${ARGUMENT#ramdisk-size=}"
190 persistence-encryption=*)
191 PERSISTENCE_ENCRYPTION="${ARGUMENT#*=}"
192 export PERSISTENCE_ENCRYPTION
196 PERSISTENCE_MEDIA="${ARGUMENT#*=}"
197 export PERSISTENCE_MEDIA
199 persistence-method=*)
200 PERSISTENCE_METHOD="${ARGUMENT#*=}"
201 export PERSISTENCE_METHOD
205 PERSISTENCE_PATH="${ARGUMENT#persistence-path=}"
206 export PERSISTENCE_PATH
208 persistence-read-only)
209 PERSISTENCE_READONLY="true"
210 export PERSISTENCE_READONLY
213 persistence-storage=*)
214 PERSISTENCE_STORAGE="${ARGUMENT#persistence-storage=}"
215 export PERSISTENCE_STORAGE
218 persistence-subtext=*)
219 old_root_overlay_label="${old_root_overlay_label}-${ARGUMENT#persistence-subtext=}"
220 old_home_overlay_label="${old_home_overlay_label}-${ARGUMENT#persistence-subtext=}"
221 custom_overlay_label="${custom_overlay_label}-${ARGUMENT#persistence-subtext=}"
222 root_snapshot_label="${root_snapshot_label}-${ARGUMENT#persistence-subtext=}"
223 old_root_snapshot_label="${root_snapshot_label}-${ARGUMENT#persistence-subtext=}"
224 home_snapshot_label="${home_snapshot_label}-${ARGUMENT#persistence-subtext=}"
238 NOPROMPT="${ARGUMENT#noprompt=}"
243 QUICKUSBMODULES="true"
244 export QUICKUSBMODULES
258 TODISK="${ARGUMENT#todisk=}"
269 MODULETORAM="${ARGUMENT#toram=}"
270 export TORAM MODULETORAM
284 SKIP_UNION_MOUNTS="true"
285 export SKIP_UNION_MOUNTS
289 ROOT="${ARGUMENT#root=}"
294 UNIONTYPE="${ARGUMENT#union=}"
300 # sort of compatibility with netboot.h from linux docs
301 if [ -z "${NETBOOT}" ]
303 if [ "${ROOT}" = "/dev/nfs" ]
307 elif [ "${ROOT}" = "/dev/cifs" ]
314 if [ -z "${MODULE}" ]
320 if [ -z "${UNIONTYPE}" ]
326 if [ -z "${PERSISTENCE_ENCRYPTION}" ]
328 PERSISTENCE_ENCRYPTION="none"
329 export PERSISTENCE_ENCRYPTION
330 elif is_in_comma_sep_list luks ${PERSISTENCE_ENCRYPTION}
332 if ! modprobe dm-crypt
334 log_warning_msg "Unable to load module dm-crypt"
335 PERSISTENCE_ENCRYPTION=$(echo ${PERSISTENCE_ENCRYPTION} | sed -e 's/\<luks,\|,\?luks$//g')
336 export PERSISTENCE_ENCRYPTION
339 if [ ! -x /lib/cryptsetup/askpass ] || [ ! -x /sbin/cryptsetup ]
341 log_warning_msg "cryptsetup in unavailable"
342 PERSISTENCE_ENCRYPTION=$(echo ${PERSISTENCE_ENCRYPTION} | sed -e 's/\<luks,\|,\?luks$//g')
343 export PERSISTENCE_ENCRYPTION
347 if [ -z "${PERSISTENCE_METHOD}" ]
349 PERSISTENCE_METHOD="snapshot,overlay"
350 export PERSISTENCE_METHOD
353 if [ -z "${PERSISTENCE_STORAGE}" ]
355 PERSISTENCE_STORAGE="filesystem,file"
356 export PERSISTENCE_STORAGE