Sun Microsystems, Inc.  Sun System Handbook - ISO 3.4 June 2011 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-72-1012170.1
Update Date:2009-12-28
Keywords:

Solution Type  Problem Resolution Sure

Solution  1012170.1 :   Sun Fire[TM] V60x/V65x Server: Boot Kernel Panic Attaching External SCSI Devices  


Related Items
  • Sun Fire V60x Server
  •  
  • Sun Fire V65x Server
  •  
Related Categories
  • GCS>Sun Microsystems>Servers>x64 Servers
  •  

PreviouslyPublishedAs
216763


Symptoms
When connecting an external SCSI device, the drive letters change in a Linux system. This confuses the kernel during boot and leads to a "Kernel panic".
Disabling "HostRAID Support" and "SCSI Controller Int 13 Support" (mentioned in the release notes) does not change the situation. The last three lines of the boot log show the following or very similar error messages:
VFS: Cannot open root device "sda5" or 08:05
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 08:05


Resolution
The Sun Fire V60x/V65x contain an Adaptec 2-slot SCSI controller. Slot "B" is used for the internal drives and "A" for the external. When external drives become attached, the drive letters change in a Linux system (e.g. "/dev/sda" becomes "/dev/sdb") which confuses the operating system.
Linux is very flexible in allowing changes to its root drive, and so only the following two files need to be changed with an editor: "menu.lst" for the "GRUB" boot loader and "fstab" for the file system. The tricky part is that the SCSI devices need to be identified with a unique name. For "GRUB" this can be achieved with labeled partitions. For "fstab" a special device assignment tool can be used: scsidev .

The tool is freely available from http://www.garloff.de/kurt/linux/scsidev and can be integrated in most Linux distributions seamlessly. It is included in SuSE Enterprise Linux Server 8 and thus the following description is done for this distribution:

1. During the installation of SLES 8 make sure your root/kernel partition uses a label and is formatted with ext2 (only this partition type could be verified working with the GRUB from SLES 8 - this may be different with other distributions or newer GRUB versions). In our example the partition is called "unit1". The label can be e.g. applied with the terminal command: "e2label /dev/sda2 /unit1".

2. After installation enhance /boot/grub/menu.lst accordingly with the following entry and set the default to it:

   title SuSE Enterprise Linux 8 SCSI
   kernel (hd0,0)/boot/vmlinuz root=LABEL=unit1   vga=791
   initrd (hd0,0)/boot/initrd

3. Run the command 'scsidev' from a terminal window. This program creates device aliases in /dev/scsi. Those can be used in /etc/fstab for unique identification. Type 'ls -l /dev/scsi' for verification. More information: "man 8 scsidev". The scsidev tool is already preconfigured in SLES 8.

4. Edit the /etc/fstab for a first trial. Assuming only a root and a swap partition exist for this drive, here are the first 2 example lines:

/dev/scsi/sdh1-1c0i0l0p1   /     ext2     defaults    1  1
/dev/scsi/sdh1-1c0i0l0p2   swap  swap     pri=42      0  0

5. Reboot your system to verify it comes up without an external drive. The "mount" command should give an output like "/dev/scsi/sdh1-1c0i0l0p1 on / type ext2 (rw)" in the first line.

6. Shutdown the system. Attach the external drive and boot up. The system comes up without kernel panic. You may run "scsidev" again to create aliases for the new drive as well.

7. Make sure, that "boot.scsidev" is enabled with the command 'yast2 runlevel &' at boot time, so that this service is executed each time at boot up.



Product
Sun Fire V65x Server
Sun Fire V60x Server

Internal Comments
For internal Sun use only.

Voyager entry corresponds to Escalation #1-1263286


Boot, SCSI, Array, external
Previously Published As
73544

Change History
Date: 2004-07-21
User Name: 13128
Action: Approved
Comment:
Update is fine, modified title for standards
Version: 2
Date: 2004-07-21
User Name: 13128
Action: Accept
Comment:
Version: 0
Date: 2004-07-21
User Name: 100632
Action: Approved
Comment: technically OK
please publish
Version: 0
Product_uuid
079e9bbc-0ee3-11d7-8c50-f1061905b56f|Sun Fire V65x Server
03728cec-0ee3-11d7-9be8-dd41f651e0a3|Sun Fire V60x Server

Attachments
This solution has no attachment
  Copyright © 2011 Sun Microsystems, Inc.  All rights reserved.
 Feedback