-
Persistent image creation prompt
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.
-
Senior Member
registered user
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
-

Originally Posted by
klaus2008
Note: FWIW, the path has changed from
Code:
cd /mnt/hda1/knx/master/boot/isolinux
to
Code:
cd /mnt-system/boot/syslinux/
Cheers!
Krishna
-
Ah, thank you. I think that was the clue I needed.
-
Senior Member
registered user

Originally Posted by
brodbd
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.)
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"
400
Code:
$ echo 400MB | sed "s/[0-9]//g"
MB
By 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.
-

Originally Posted by
kl522
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"
400
Code:
$ echo 400MB | sed "s/[0-9]//g"
MB
By 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.
This seems like a good addition, esp. for newbies; the prompt could say "Enter size (MB):"
Cheers!
Krishna
-
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
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules

SFP TO RJ45 TRANSCEIVER SFP MODULE COPPER SFP OPTICAL PORT TO RJ45 ETHERNET PORT
$7.99

Dell Intel X710-DA2 5N7Y5 Dual-Port 10GbE SFP+ PCIe 3.0 x8 Network Adapter
$27.50

Cisco Meraki MA-SFP-1GB-SX Network Tranceiver Module
$89.00

NEW Sealed Cisco SFP-10G-LR 10GBASE-LR SFP+ 1310nm 10km *US Shipping*
$24.00

HP 560SFP+ 10GB 2-port PCIe NIC Ethernet ADAPTER 669279-001 w/ (2) 10GB SFP+
$16.99

Genuine Cisco SFP-10G-SR 0-2415-03 10 Gigabit Transceiver
$5.40

Lot of 500 Cisco 10-3145-02 QSFP-100G-CWDM4-S 100G CWDM4 QSFP28 Transceiver
$1500.00

HPE 560SFP 2x 10Gb SFP+ PCIe Both Profile Network Card 669279-001 665247-001
$14.90

SFP QSFP Transceivers Programmer allows to corning and (re)programming sfp code
$108.09

Cisco WS-C3650-12X48UR-L 48-Port Stackable Layer 3 8x10G SFP+ Port Switch
$129.99