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
***NEW*** BCM RX67Q Gaming Motherboard | Intel Q67 2nd/3rd Gen. | LGA1155 | DDR3
$29.77
ASUS H110M-R Motherboard Intel 6th/7th Gen LGA1151 DDR4 Micro-ATX i/o shield
$42.00
Asus PRIME H510M-A Intel LGA 1200 DDR4 SDRAM Desktop Motherboard w/ I/O shield
$64.98
Micro ATX Desktop Motherboard ASUS H110M-C LGA 1151
$31.95
Gigabyte AMD B550 UD AC Gaming Motherboard - AMD B550 Chipset - AM4 Socket - AMD
$89.99
MSI B450M PRO-VDH MAX AM4 AMD B450 USB3.2 Micro-ATX Motherboard
$67.99
ASUS B150M-C Motherboard mATX W/LGA1151 6TH/7TH GEN CPU DDR4 SATA HDMI Tested
$55.00
Asrock Z390 Phantom Gaming 4S/AC Wifi 8th/9th Gen Intel 1151 Motherboard Bulk
$48.70
GIGABYTE MB10-Datto Motherboard Xeon D-1521- SR2DF 2.40 GHz- Open Box
$112.00
BTC-S37 Mining Motherboard Kit /w SSD & Ram Preinstalled
$59.99