Oh, should have mentioned this is Knoppix v6.2.1.
I'd like to change the text at the persistent image creation prompt, because some of the users of my live CD find it confusing. (It gives sizes with a suffix, e.g. "400MB", but if you type the size with a suffix, image creation fails silently. I want to change the prompt to make it clear that you have to type in a pure number.) The problem is I'm having trouble finding the script responsible for doing persistent image creation. I've looked at the knoppix init scripts in /etc/init.d, and tried grepping phrases from the prompt, but haven't had any success. Can someone point me in the right direction?
Oh, should have mentioned this is Knoppix v6.2.1.
You can find the init script inside the initial ramdisk minirt.gz. If you need help to extract minirt.gz and recreate it then you should read http://www.knoppix.net/wiki/Knoppix_...up_script_text
Ah, thank you. I think that was the clue I needed.
Why don't you change it to accept both 400 ***AND*** 400MB ?
You can consider using sed to accomplish the job :-
Code:$ echo 400MB | sed "s/[^0-9]//g" 400By using sed, you can extract the number portion of the user input. If the user input something else other than 400MB and 400, you might want to prompt for error.Code:$ echo 400MB | sed "s/[0-9]//g" MB
Thanks for the suggestion. I may just do that. It would have the added benefit of working for any localization, too.
Here's my attempt at a patch. It now accepts "MB" and "GB" as units (non-case-sensitive) and will loop until it gets valid input, is canceled, or times out. I didn't attempt to add error messages because I only speak English, so I wouldn't be able to properly localize them.
Code:--- /mnt/sda1/knx/master/boot/isolinux/minirtdir/init 2010-07-02 12:59:57.000000000 +0000 +++ ./init 2010-07-02 12:48:10.000000000 +0000 @@ -531,12 +531,23 @@ } createdata(){ - local rc size avail + local rc size sizein sizeunits avail avail="$(df -m /mnt-system | awk '{size=$4}END{print size - 1}')" [ "$avail" -ge 200 ] 2>/dev/null || return 2 - runknoppixchroot /usr/bin/dialog --timeout 10 --inputbox "\n${CREATEIMG1}${avail}${CREATEIMG2}\n" 16 75 2>/tmp/knoppix.size; rc="$?" - read size </tmp/knoppix.size; rm -f /tmp/knoppix.size - [ "$rc" = "0" -a "$size" -ge 200 -a "$size" -le "$avail" ] 2>/dev/null || return 3 + until [ "$size" -ge 200 -a "$size" -le "$avail" ] ; do + runknoppixchroot /usr/bin/dialog --timeout 10 --inputbox "\n${CREATEIMG1}${avail}${CREATEIMG2}\n" 16 75 2>/tmp/knoppix.size; rc="$?" + read sizein </tmp/knoppix.size; rm -f /tmp/knoppix.size + [ "x$sizein" = "x" -o "$rc" != "0" ] && return 3 + size="$(echo $sizein | sed 's/[^0-9]//g')" + sizeunits="$(echo $sizein | sed 's/[^A-Za-z]//g' | awk '{print toupper($1)}')" + if [ "x$sizeunits" != "x" ] ; then + if [ $sizeunits = "GB" ] ; then + size=$(($size*1024)) + elif [ $sizeunits != "MB" ]; then + size=0 + fi + fi + done runknoppixchroot /usr/bin/dialog --yes-label "${ENCRYPT}" --no-label "${NO_ENCRYPT}" --defaultno --yesno "${QUESTION_ENCRYPT}" 16 75 2>/dev/null; rc="$?" [ -b /dev/loop0 ] || mknod -m 755 /dev/loop0 b 7 0 [ -d /KNOPPIX-DATA ] || mkdir -m 755 /KNOPPIX-DATA

Crucial MX500 500GB 2.5" SATA III Internal SSD CT500MX500SSD1
$52.99
SSD 880EVO SATA III 2.5 4TB INTERNAL STATE DRIVE
$214.99
Samsung 860 EVO 250GB SSD MZ-76E250 2.5" SATA III Solid State Drive
$39.99
128TB External SSD Solid State Drive Hard Drive Disk PC Phones Mac Games Videos
$97.60
SAMSUNG SSD 512GB 500GB 480GB 256GB 250GB 240GB SSD 2.5 Solide State Drive 6Gbps
$37.99
Samsung SSD, v-nand,860 EVO, 500gb, model MZ-76E500, SATA III, Health 90-98%
$50.00
Fanxiang 1/2/5/10Pcs 2.5'' SATA SSD Lot 1TB 2TB 4TB 512GB 256GB TLC Internal SSD
$129.99
128GB SSD M.2 PCIE NVME Solid State Drive Mix Brand Samsung, WD, SK Hynix Kioxia
$16.59
Kingston 128GB M.2 SATA III SSD
$13.00
Samsung PM961 256GB,Internal (MZ-VLW2560) Solid State Drive
$102.00