hello
I have remstered image of knoppix 644 and everything work fine, but recently I found problem with one Al in One Acer computer.
When booting from usb stick - all is ok, but i would like to boot from SD card. Acer has build in SD/MMC reader, but whem i put SD card with KOPPIX image and start booting boot process stops in place where it is looking for knoppix in block devices.
I 've unpacked minirt.gz and tryed to modyfy init script for searching in mmcblk devices for Knoppix image.
644 does not load driver for mmcblk devices so i copied mmc_core.ko mmc_block.ko sdhci.ko sdhci-pci.ko to modules dir and mdified init to load that modules and also make coresponding nodes in dev dir.
Now i can mout mmcblk0p1 on mnt-system
I packed minirt made iso and made bootabe SD
Now when booting i get message - "knoppix found on mmcblk0p1" and "Do not remove medium until stop."
But then i get /sbin/init help mesage insted of loading system.
Could anybody help with this?
Hello
Surely there is a bug.
I'm not script guru and i did what I could.
Meybe someone better in scripting could post modified init script with support booting from mmcblk device.
Hello
Finally i get it working.
What I have done: (Knoppix 644 )
added nesessery modules to/modules
changed load_modules for loading modules in proper order
load_modules(){
insmod /modules/mmc_core.ko
insmod /modules/mmc_block.ko
insmod /modules/sdhci.ko
insmod /modules/sdhci-pci.ko
# local mod
# for mod in /modules/*.ko /modules/scsi/*.ko; do
# [ -r "$mod" -a ! -d /sys/module/"${mod%.ko}" ] && insmod "$mod"
# done
}
In Knoppix 6.7 there is no need for loadingmodules but it does not create nodes in /dev
(I've remstered 644 form my needs and still using it, besides 6.7 has problems with ati mobility radeon HD 3650)
added function
mmcmt() {
cat /proc/partitions | grep mmcblk >/dev/null
if [ $? ]; then
cat /proc/partitions | awk '$4 ~ /mmcblk/ { print "mknod ", "/dev/"$4, " b ", $1,$2 }' | while read line
do
$line
done
fi
}
modified listpartitions
listpartitions(){
local pattern file
mmcmt
for pattern in "$@"; do
for file in $(find /sys/class/block -maxdepth 2 -name "$pattern"); do
file="${file##*/}"
[ -b "/dev/$file" ] && echo "/dev/$file"
done
done
# awk 'BEGIN{old="__start"}/'"$1"'/{if($0==old){exit}else{old=$0;if($4&&$4!="name"){p rint "/dev/"$4}}}' /proc/partitions # Insufficient, does not find CD-Roms
}
added pattern for looking for knoppix
if [ -z "$TSCLIENT" ]; then
if [ -n "$root" ]; then
if ! findknoppix $root; then
if [ -d /sys/bus/usb/drivers/usb-storage ]; then
for i in 1 2 3 4 5 6 7 8 9 10; do
message -n -e "\r${CRE}${BLUE}${WAITFORUSB}${NORMAL}"
sleep 2
findknoppix $root && break
done
[ "$?" = "0" ] || debugshell "${CRE}${RED}${NOTFOUND}${NORMAL}"
else
debugshell "${CRE}${RED}${NOTFOUND}${NORMAL}"
fi
fi
elif ! findknoppix $(listpartitions 'mmcblk[0-9]p[0-9]''hd[a-z]' 'hd[a-z][0-9]*' 'scd[0-9]*' 'sr[0-9]*' 'sd[a-z]' 'sd[a-z][0-9]*'); then
if [ -d /sys/bus/usb/drivers/usb-storage ]; then
for i in 1 2 3 4 5 6 7 8 9 10; do
message -n -e "\r${CRE}${BLUE}${WAITFORUSB}${NORMAL}"
sleep 2
findknoppix $(listpartitions 'mmcblk[0-9]p[0-9]' 'scd[0-9]*' 'sr[0-9]*' 'sd[a-z]' 'sd[a-z][0-9]*') && break
done
[ "$?" = "0" ] || debugshell "${CRE}${RED}${NOTFOUND}${NORMAL}"
fi
fi
fi
and it works
IBM QRadar xx29 Server 4412Q2A
$200.00
IBM Power S822 12-Bay Server System Power8 Core 3.42Ghz DVD-Rom Drive 64GB No HD
$399.99
IBM SYSTEM x3200 M2 Server - HDD wiped, No OS
$75.00
IBM Power 720 POWER7 00E6516 3.6GHz CPU 64GB RAM Server
$209.98
$16000.00
IBM 7944AC1 System x3550 M3 Server 1*Intel Xeon X5650 2.67GHz 4GB SEE NOTES
$27.25
IBM Power S822 8284-22A 12SFF Power8 3.89GHz 6-Core 64GB RAM No Bezel/HDD Server
$319.99
IBM Lenovo X3650 M5 2U 8x 2.5” CTO Rack Server – 2x HS, 2x 750W
$199.00
IBM SYSTEM x3650 M4 Xeon E5-2609 2.40GHZ 16GB DDR3-1066MHZ 2x 550W PSU TESTED
$109.95
IBM System X3500 M4 7383AC1 (E5-2650 v2 2.60GHz - 192GB RAM - M2000 - NO OS/HDD)
$294.92