FreeBSD 7.x (which is the base OS for FreeNAS 0.70) does boot just fine.
PATA port issue
FreeBSD is unable to see the PATA port on ICH7, unless the chip is set to 'compatibility' mode and SATA is disabled entirely in the BIOS. This does not seem to affect FreeBSD's ability to enumerate and use the SATA ports, though, even in AHCI mode.
amd64 version of FreeNAS 0.70 cannot see the PATA port whatsoever. The solution is to use the i386 version, or add the following to /boot/device.hints:
hint.ata.0.at="isa"
hint.ata.0.port="0x1F0"
hint.ata.0.irq="14"
Shutdown issue
FreeBSD 7.x is unable to completely shut down the device. It is a known bug currently in the works:
It turns out that if you turn off USB in the BIOS, the problem disappears. So for now it's your choice whether to live without USB connectivity or without programmatic power-off
.
Comments (15)
Jamba said
at 9:58 pm on Sep 19, 2009
I cannot get the SS4200 to boot FreeNAS 0_70. I can get the serial connection to work. Bot hangs after:
* Welcome to FreeNAS! *
* *
* 1. Boot [default] *
* 2. Boot with ACPI disabled *
* 3. Boot in Safe Mode *
* 4. Boot with verbose logging *
* 5. Escape to loader prompt *
* 6. Reboot
I have selected all the options but it just hangs after a line of text on the screen. Please help.
Wesha said
at 12:01 am on Sep 20, 2009
That's in connection to 115200/9600 baud discussion. I was told that FreeBSD's terminal supports only 9600, so you need to set baud rate to 9600 in SS4200 BIOS, then switch your terminal to 9600 as well, and then everything will work.
Jamba said
at 3:11 am on Sep 20, 2009
That did not work. Set the BIOS and putty session to 9600,8,n,1 but the same hang after the boot. I have disabled ACPI in the BIOS. Not sure what I am missing?
CyberLeo said
at 4:29 am on Sep 20, 2009
FreeBSD's boot loader only supports up to 9600bps unless compiled with BOOT_COMCONSOLE_SPEED set. The default is not. I have not tested FreeBSD with anything higher.
The kernel will not send klog messages to the serial device unless you set the following options in /boot/loader.conf:
console="comconsole"
comconsole_speed="9600"
Also make sure that at least the following is provided in /boot/device.hints, to tell the kernel that the first serial port (sio0) is willing to be a kernel log device:
hint.sio.0.flags="0x10"
I believe that's all I did.
Jamba said
at 5:50 am on Sep 20, 2009
Thanks. That worked. Now I am stuck at another screen.
Here is what I did. At the menu, I typed "5" and went to the "ok" prompt. At the "ok" prompt, I modified console by: console="comconsole"
and then "boot" from the ok prompt.
Now, it boots and you can see messages on the screen:
...
...
...
Generating .htpasswd.
Starting lighttpd.
Starting background file system checks in 60 seconds.
Sat Sep 19 04:43:25 UTC 2009
Tim said
at 11:10 pm on Sep 30, 2009
Jamba, I am stuck at the exact same spot. I believe it's because we have not setup our /etc/ttys properly to change ttyd0 to on and from dialup to vt100. However, without being able to get a shell to login, I don't see how to do that. Can anyone shed some light on this please?
Wesha said
at 11:46 pm on Sep 30, 2009
Tim & Jamba: what's the problem? Just SSH right in...
Tim said
at 4:19 am on Oct 1, 2009
I had to login to the web interface to enable SSH. However, I did edit the /etc/ttys file and made the changes that I mentioned in my prior post and it still doesn't produce a login prompt over my serial cable connection to HyperTerminal. No big deal as long as I have SSH I suppose, though I'd still like to know a solution for getting shell access via serial.
Wesha said
at 5:20 am on Oct 1, 2009
Tim:
1) did you try pressing Enter? IIRC, getty only shows login prompt on serial devices upon transition of CTS to high and I'm not sure the SS4200 cable routes that signal properly.
2) check running processes (from SSH) to ensure that getty is indeed running and attached to the serial port
3) use "kill -1 1" to reread your /etc/ttys, not reboot. (remember, /etc is on md0 RAM disk; on each reboot, it's re-populated from the flash card/whatever boot device you have)
Tim said
at 1:06 am on Oct 2, 2009
I got the serial console fully working.
Here's what I did:
edited /cf/boot/loader.conf and added these lines:
boot_multicons="YES"
boot_serial="YES"
comconsole_speed="9600"
console="comconsole,vidconsole"
then in the FreeNAS web interface went to System -> Advanced, then Command Scripts
added the following scripts to execute PostInit in top to bottom order:
cat /etc/ttys | sed '/ttyd0/s/dialup/vt100/g' >/tmp/ttys1
cat /tmp/ttys1 | sed '/ttyd0/s/off/on/g' >/tmp/ttys2
rm -rf /etc/ttys
mv /tmp/ttys2 /etc/ttys
kill -1 1
Jamba said
at 9:37 am on Oct 2, 2009
Yes, I did the same. I realized that the login prompt was not showing up because no "getty" was running on the Serial port. I connected to the FreeNAS web interface and went to System -> Advanced -> File Editor and loaded the /etc/ttys file and modified the ttyd0 line to "on". I then saved the file on the web interface.
Then I went to System -> Advanced -> Command and typed in "kill -HUP 1" and clicked on Execute and got the login prompt on the Serial port.
I have documented all the steps in installing and running FreeNAS 0.70 with ZFS on my blog at: http://bitsforbytes.blogspot.com
Jay said
at 12:30 am on Jan 20, 2010
Hello everyone,
As stated above on this page under PATA port issues:
"amd64 version of FreeNAS 0.70 cannot see the PATA port whatsoever. The solution is to use the i386 version, or add the following to /boot/device.hints:
hint.ata.0.at="isa"
hint.ata.0.port="0x1F0"
hint.ata.0.irq="14"
"
How do I modify a LiveCD installation of FreeNAS 0.70 and then boot from that CD and install it on the DOM?
Thanks
CyberLeo said
at 4:58 am on Jan 20, 2010
There was a recent thread on the FreeBSD-Questions mailing list about adding a feature to an installation CD:
http://lists.freebsd.org/pipermail/freebsd-questions/2010-January/210962.html
Basically, you must extract the existing CD contents, make your modifications, then re-squish everything back into an iso9660 image, taking care to specify the proper boot emulation and code.
As for the actual installation, you will need either a VGA card hack or a serial hack to actually interact with the installer.
Personally, I just burn the DOM with an image prepared on another system entirely, and forego all preinstallation interaction entirely.
Jay said
at 5:57 am on Jan 20, 2010
I probably can do that too on another system, but since FreeBSD/FreeNAS 64-bit do not include the IDE/PATA drivers, it will still not work on SS4200 once brought in.
I don't know if 64bit version will make any difference since SS4200 can only have 2GB memory so the argument that if you have a 64-bit CPU you should always install a 64-bit OS is moot because there won't be any significant benefit on SS4200.
yejun said
at 2:51 am on Jan 31, 2010
I install freenass by booting it into emergency mode with usb flash. Then dd embedded image to dom /dev/ad0. Mount /dev/ad0a to somewhere. Modify device.hints to includes those ata lines.
You don't have permission to comment on this page.