You are not logged in.
Pages: 1
All:
I've read, re-read and read again through all the material I can find about this process. I have been able to get Arch onto my CR-48. However, I am unable to modprobe anything as uname -r reports the wrong version. It is reporting the same version that is reported when in the Chrome bash shell, not the correct "3.6.10-1-ARCH". This is causing pretty much everything else to go wrong. In the VM, everything works great. I have exhausted my searching to find a solution to this problem and am posting this here as a last ditch effort. Any help provided will be greatly appreciated.
Thanks to all that have contributed to this here so far!
-Suave
Last edited by TheSuaveGeek (2012-12-26 06:56:55)
-Suave
Offline
Moderator: Split this from the previous thread. It was a very old post, and I do not believe this to be relevant to that thread.
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
TheSuaveGeek,
Welcome to Arch. Specifically, what does uname -a report? I have a sneaky feeling that the kernel being invoked by your bootloader is the incorrect one.
Are you using the bootloader that came with your system, or did you install one from Arch?
Last edited by ewaller (2012-12-26 07:22:33)
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
uname -a
Linux cr48 3.4.0 #1 SMP Tue Dec 11 03:14:23 PST 2012 i686 GNU/Linux
The contents of my /lib/modules contain only folders for 3.6.10-1-ARCH.
I am using the bootloader that came with the system. I have tried to get a different bootloader on the CR-48 but failed.
Thanks for the help!
-Suave
-Suave
Offline
Yeah, that is the problem. Can you please post the output of
# fdisk -l /dev/sda
and the contents of
/etc/fstab
??
What is the bootloader you are using? (Grub, Grub2, syslinux, lilo)?
Last edited by ewaller (2012-12-26 15:48:24)
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
...The contents of my /lib/modules contain only folders for 3.6.10-1-ARCH.
In addition to what ewaller asked, please confirm: Do you actually reference /usr/lib/modules above?
(I am asking because of the /lib move to /usr/lib this fine July)
Offline
Thanks for the help!
Here are the outputs requested:
fdisk -l /dev/sda
Disk /dev/sda: 16.0 GB, 16013942784 bytes, 31277232 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sda1 1 31277231 15638615+ ee GPT
I did get an error though that fdisk is not compatible with GPT format.
cat /etc/fstab
#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/sda7
UUID=6a4a7f68-8354-405f-9126-77130c023041 / ext4 rw,relatime,data=ordered 0 1
I have syslinux installed in my Arch partition, but the bootloader that is used is the one that is used by the Chrome OS. I have made changes to the commands the bootloader uses to load the Arch install, but I have not been able to get it correctly changed.
Strike0:
Both /lib/modules and /usr/lib/modules are identical. I have made changes to the /lib/modules directory and those changes were reflected in the output of commands like depmod -a and modprobe.
Again, thanks for your help guys!
-Suave
-Suave
Offline
Just to confirm: is /lib a symlink?
Please post the output from
gdisk -l /dev/sda
since you are using GPT.
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
gdisk -l /dev/sda
GPT fdisk (gdisk) version 0.8.5
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 31277232 sectors, 14.9 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): A265551D-B397-344D-878D-51904ACDE2B3
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 31277198
Partitions will be aligned on 1-sector boundaries
Total free space is 139891 sectors (68.3 MiB)
Number Start (sector) End (sector) Size Code Name
1 282624 10768383 5.0 GiB 0700 STATE
2 20480 53247 16.0 MiB 7F00 KERN-A
3 27082752 31277055 2.0 GiB 7F01 ROOT-A
4 53248 86015 16.0 MiB 7F00 KERN-B
5 22905344 27078647 2.0 GiB 7F01 ROOT-B
6 10768384 10801151 16.0 MiB 7F00 KERN-C
7 10801664 22905343 5.8 GiB 7F01 ROOT-C
8 86016 118783 16.0 MiB 0700 OEM
9 16450 16450 512 bytes 7F02 reserved
10 16451 16451 512 bytes 7F02 reserved
11 64 16447 8.0 MiB FFFF RWFW
12 249856 282623 16.0 MiB EF00 EFI-SYSTEM
Yes, /lib is a symlink. I feel kind of dumb for not having known that!
Thanks!
-Suave
-Suave
Offline
Ok, so your /usr/lib is in order.
I had a quick search on your machine and found that the chromebooks come with a special and signed kernel.
Other users suggest that it is fairly difficult to get it to boot another kernel, e.g.: https://bbs.archlinux.org/viewtopic.php … 17#p969817
So its probably just what ewaller suggested: the chromeOS bootloader is not picking up your kernel due to design.
As you seem to have managed to install Arch on it, you surely know about the netbook's developer mode and so forth.
I guess in order to offer you more ideas, we would need much more info on the primary bootloader. However, the whole attempt sounds to me like attempting to jailbreak google's ChromeOS bootchain as it is designed to be protected against tinkering to my understanding. Maybe another user with specific experience can help out.
Offline
As I understand it, it is designed to be protected against unauthorised tinkering but not against authorised tinkering. There's an official guide to dual booting another OS (Ubuntu, from memory). I think that developer mode basically disables secure boot and normal mode enables it.
I assume that TheSuaveGeek has seen https://wiki.archlinux.org/index.php/Chromebook and http://dev.chromium.org/chromium-os/dev … on-a-cr-48.
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
I am afraid I'm not a syslinux jockey. I tried it once and went back to Grub2. I had hoped that someone would jump in here.
That said, lets give it a try. Can you see if you've a /boot/syslinux/syslinux.cfg file? If so, please post that file along with the output of ls -l /boot ??
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
Thanks for the replies everybody.
Here is my syslinux.cfg:
cat /boot/syslinux/syslinux.cfg
# Config file for Syslinux -
# /boot/syslinux/syslinux.cfg
#
# Comboot modules:
# * menu.c32 - provides a text menu
# * vesamenu.c32 - provides a graphical menu
# * chain.c32 - chainload MBRs, partition boot sectors, Windows bootloaders
# * hdt.c32 - hardware detection tool
# * reboot.c32 - reboots the system
# * poweroff.com - shutdown the system
#
# To Use: Copy the respective files from /usr/lib/syslinux to /boot/syslinux.
# If /usr and /boot are on the same file system, symlink the files instead
# of copying them.
#
# If you do not use a menu, a 'boot:' prompt will be shown and the system
# will boot automatically after 5 seconds.
#
# Please review the wiki: https://wiki.archlinux.org/index.php/Syslinux
# The wiki provides further configuration examples
DEFAULT arch
PROMPT 0 # Set to 1 if you always want to display the boot: prompt
TIMEOUT 50
# You can create syslinux keymaps with the keytab-lilo tool
#KBDMAP de.ktl
# Menu Configuration
# Either menu.c32 or vesamenu32.c32 must be copied to /boot/syslinux
UI menu.c32
#UI vesamenu.c32
# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu
MENU TITLE Arch Linux
#MENU BACKGROUND splash.png
MENU COLOR border 30;44 #40ffffff #a0000000 std
MENU COLOR title 1;36;44 #9033ccff #a0000000 std
MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all
MENU COLOR unsel 37;44 #50ffffff #a0000000 std
MENU COLOR help 37;40 #c0ffffff #a0000000 std
MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std
MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std
MENU COLOR msg07 37;40 #90ffffff #a0000000 std
MENU COLOR tabmsg 31;40 #30ffffff #00000000 std
# boot sections follow
#
# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line.
#
#-*
LABEL arch
MENU LABEL Arch Linux
LINUX ../vmlinuz-linux
APPEND root=/dev/sda7 ro
INITRD ../initramfs-linux.img
LABEL archfallback
MENU LABEL Arch Linux Fallback
LINUX ../vmlinuz-linux
APPEND root=/dev/sda7 ro
INITRD ../initramfs-linux-fallback.img
#LABEL windows
# MENU LABEL Windows
# COM32 chain.c32
# APPEND hd0 1
LABEL hdt
MENU LABEL HDT (Hardware Detection Tool)
COM32 hdt.c32
LABEL reboot
MENU LABEL Reboot
COM32 reboot.c32
LABEL off
MENU LABEL Power Off
COMBOOT poweroff.com
Here is the ls -l /boot output:
ls -l /boot
total 18548
-rw-r--r-- 1 root root 12814086 Dec 24 05:09 initramfs-linux-fallback.img
-rw-r--r-- 1 root root 2826939 Dec 24 05:09 initramfs-linux.img
drwxr-xr-x 2 root root 4096 Dec 23 15:03 syslinux
-rw-r--r-- 1 root root 3340096 Dec 11 01:28 vmlinuz-linux
Strike0 and cfr:
The CR-48 is indeed protected against unauthorized tinkering but is meant to be able to 'hack' by it's owner. I have seen both of those articles previous to this. The one dev.chromium.org article is the one that I loosely followed to get Arch onto my machine.
I was poking around /dev/sda12 which is the EFI partition and there is a README. I have posted the contents of the file below. That file seems to imply that they use syslinux to boot the machine in the event that you install a different BIOS on the machine. In the past, I have tried to put on a different BIOS, but couldn't get it to work. There is some write protection that needs to be turned off in order to do so. I followed on the steps to disable that write protection, but could not get it to turn off. Thanks for all your help guys!
README:
Partition 12 contains the active bootloader configuration when
booting from a non-Chrome OS BIOS. EFI BIOSes use /efi/*
and legacy BIOSes use this syslinux configuration.
-Suave
Offline
(I hope we can assume that you have a full backup including access to the original BIOS to restore it to factory state)
From the chromium pages, there should be a hardware switch for turning it to developer mode. That's needed as well as a legacy BIOS to flash over the google BIOS to my understanding. Which write-protection did you fail to turn off and what was the error you got? Which BIOS did you try to flash it with? Does the netbook come with a legacy BIOS option?
Offline
Yes, I do indeed have a full backup of the device. I have it in developer mode, that's necessary to mess with the partitions and such which I needed to do in order to get Arch on it. I was trying to flash the replacement for the Hexxeh Luigi BIOS. I failed to turn off the BIOS write protection. You use a utility called flashrom to do the work. I tried to do it both from Ubuntu on my CR-48 and from the CR-48 terminal. I followed this guide: http://cr-48.wikispaces.com/Flash+BIOS . You have to take the case apart, cover the grounding switch and put it all back together. I've done that, tried it and I was unable to write to the BIOS. I tried just removing the bottom all together and leaving it off while I tried it and I was still unable to write to the BIOS. The error I get is just that the write protection for the BIOS is still enabled. After getting this error, if you reboot without restoring your backed up BIN file, the thing is bricked until you restore it with Chrome-OS restore tool. This error leads me to think thought that the file I was using to flash to the BIOS was wrong... The netbook does not have a legacy BIOS that you can run without having changed the BIOS manually.
-Suave
Offline
Ok, really interesting. You have tried a lot to get Arch onto it, great. To me it sounds like you are right. Either the BIOS you use is wrong or your specific manufacturing batch has another glitch. When googling about that Hexxeh Luigi, I came across a Gentoo page with a bios. Maybe have a look and compare the checksum with the one you use.
However, I also came across this chromium bug: https://code.google.com/p/chromium-os/i … l?id=11757
Unfortunately that sounds pretty much like your problem with the write-protection and they have left it unsolved since Feb 2011.
Offline
Thanks for finding that! Unfortunately, the server that the custom.bin file is on now requires a password to access. So, it appears I am still stuck. I had also seen that article about the unability to unlock the BIOS after all of my troubles in trying to flash a new .bin file.
Is there a way to go back to the 3.4.0 kernel on Arch? I did a quick experiment and put Ubuntu back on my CR-48 to see how they solve the problem. The way it appears to work is that it just runs the older 3.4.0 kernel and that would fix my problem I do believe.
Thanks for all the help!
-Suave
Offline
The Gentoo server link I posted above does not require a password, so I am not sure which one you mean with "password" there.
You can downgrade the Arch kernel, absolutely. Have a look in the wiki about "downgrading" and "ABS". In the downgrading article you also find a link to the archive of older Arch packages (for the kernel and headers). Cleanest way should be to let it compile I guess. Before you go into lengthy compilation trials for the downgrade you might want to search the bbs for it and seek more feedback as I am unsure what kind of issues to prepare for in case of that device/OS kernel.
If the problem you want to solve now it the inability to load modules, have a look at "man modprobe" for --force-modversion first. Depending on what module you require it may just work with force.
Offline
Sorry, I didn't specify. I meant the server listed in the luigi script, but I just changed the line in the script to use the local bios-InsideH20.bin file. It still failed to turn off the write protection again, so I'm still dead in the water on that front.
I took a look at the man pages for modprobe and tried out the --force-modversion flag. This did not fix the problem. I think the problem starts because depmod does not detect anything at all so then modprobe doesn't even have a list of modules to go look at. You can force depmod to look at a specific directory, but when I use that flag, it doesn't seem to help the problem on the modprobe side.
-Suave
Offline
Pages: 1