LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - Installation
User Name
Password
Slackware - Installation This forum is for the discussion of installation issues with Slackware.

Notices

Reply
 
Search this Thread
Old 03-22-2009, 04:21 PM   #1
kirkengaard
LQ Newbie
 
Registered: Aug 2006
Location: Chicago
Distribution: slackware-current
Posts: 3

Rep: Reputation: 0
Making a libata-only install to a PATA system


Basic desire: I want to go from install media through first boot and be able to run my system through the libata/scsi layer. This involves the kernel IDE system not taking over the drives first. Unfortunately, IDE taking the devices is the current default even in huge, where both are compiled in.

I have a system with ICH4 and HPT372 PATA controllers, both of which work perfectly well under libata PATA support (2.6 series, obviously). Hard drives, DVD drives, everything works. I use several USB storage peripherals, which automatically are SCSI-identified. It's more convenient for me simply to have the SCSI layer run all of my storage devices.

However, on a default slackware installation (I run -current, and this has been the case since libata became usable), the IDE support takes the drives, and then the installer deals with /dev/hd?# identifiers. LILO and fstab are set up this way. When I have recompiled and installed my current kernel, with libata/scsi only, I have to go through both LILO and a copy fstab to change everything to /dev/sd?#, and then detour into another system on reboot to switch the new fstab in. Once I do this, everything works. I'm just tired of having to do it every time.

I know that the proper solution is compiling a kernel without IDE, installing it so that the installer can use it, calling it from the prompt, and then having everything come up SCSI. What I want to know is, has anyone had any success getting it done with existing kernels under some set of options? If not, does anyone have a good tutorial on how the distribution kernels are compiled and packaged for the installer?

Thanks!

Matt
 
Old 03-22-2009, 04:27 PM   #2
H_TeXMeX_H
Guru
 
Registered: Oct 2005
Location: $RANDOM
Distribution: slackware64
Posts: 12,928
Blog Entries: 2

Rep: Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269
Have you tried something like 'hda=noprobe' as a boot option / append in lilo ? (or even 'hda=none') where hda is the drive you want to skip ?
 
Old 03-22-2009, 05:55 PM   #3
guanx
Senior Member
 
Registered: Dec 2008
Posts: 1,014

Rep: Reputation: 146Reputation: 146
Quote:
Originally Posted by kirkengaard View Post
Basic desire: I want to go from install media through first boot and be able to run my system through the libata/scsi layer. This involves the kernel IDE system not taking over the drives first. Unfortunately, IDE taking the devices is the current default even in huge, where both are compiled in.

I have a system with ICH4 and HPT372 PATA controllers, both of which work perfectly well under libata PATA support (2.6 series, obviously). Hard drives, DVD drives, everything works. I use several USB storage peripherals, which automatically are SCSI-identified. It's more convenient for me simply to have the SCSI layer run all of my storage devices.

However, on a default slackware installation (I run -current, and this has been the case since libata became usable), the IDE support takes the drives, and then the installer deals with /dev/hd?# identifiers. LILO and fstab are set up this way. When I have recompiled and installed my current kernel, with libata/scsi only, I have to go through both LILO and a copy fstab to change everything to /dev/sd?#, and then detour into another system on reboot to switch the new fstab in. Once I do this, everything works. I'm just tired of having to do it every time.

I know that the proper solution is compiling a kernel without IDE, installing it so that the installer can use it, calling it from the prompt, and then having everything come up SCSI. What I want to know is, has anyone had any success getting it done with existing kernels under some set of options? If not, does anyone have a good tutorial on how the distribution kernels are compiled and packaged for the installer?

Thanks!

Matt
You can use UUID instead of device name in /etc/fstab.
e.g.
Code:
# dumpe2fs /dev/hda1 | grep UUID
dumpe2fs 1.41.2 (02-Oct-2008)
Filesystem UUID:          b97632c8-fa7a-46d0-b64c-14ab82b6631b
Then, change
Code:
/dev/hda1    /     ext3     defaults,acl    1   1
in /etc/fstab to
Code:
UUID=b97632c8-fa7a-46d0-b64c-14ab82b6631b   /     ext3     defaults,acl    1   1
However, I do not see it more convenient to run PATA disks as sd*. I think if it's hd* then it's more easy for me to distinguish my harddisks from USB sticks. So when I dd to the USB stick I will not destroy my whole system.
 
Old 03-22-2009, 07:30 PM   #4
kirkengaard
LQ Newbie
 
Registered: Aug 2006
Location: Chicago
Distribution: slackware-current
Posts: 3

Original Poster
Rep: Reputation: 0
Thank you for your suggestions, guanx and TeX.

A) I've tried playing with UUIDs, and
B) I know which devices are which.

The trouble with UUID, as far as I've played with it, is that 1) the slackware installer doesn't deal with it, so I still have to modify my lilo.conf and fstab after the fact (at which point, I have to do the same amount of different work), and 2) I can't always get the system to boot properly with UUIDs instead of device names (I also use GRUB). This has to do with not messing around with initrd.

While I know they're a good solution for not having to mess with what driver deals with what disk, I'm not sanguine on UUIDs as a solution to this particular problem. I also don't know by looking which UUID is which disk, so even if the installer did work with them, it would drive me crazy!

and,

C) It's not the detection I mind, so much as which driver operates. I still need the install partitions, and I'm not clear on how making the kernel skip the drive helps. Please, TeX, I'd be glad if you could tell me more about using noprobe and manually defining hardware for the installer kernel.

Basically, If I can get it right in the installer, when laying down the OS the first time, it will be right every time afterwards. If I can't, well, I already have a process to do what I want at that point.
 
Old 03-23-2009, 12:00 PM   #5
H_TeXMeX_H
Guru
 
Registered: Oct 2005
Location: $RANDOM
Distribution: slackware64
Posts: 12,928
Blog Entries: 2

Rep: Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269
So, when you get a 'boot:' prompt after booting the install CD, put in there something like:

Code:
hugesmp.s hda=noprobe

# or

hugesmp.s hda=none
Where hda is the name of the drive you don't want to be probed or used by the IDE drivers.

If that seems to work, add it to your '/etc/lilo.conf' append line near the top, so change:

Code:
append=" vt.default_utf8=0"

# to

append=" vt.default_utf8=0 hda=noprobe"
then run 'lilo' to apply changes.
 
Old 03-25-2009, 01:06 PM   #6
guanx
Senior Member
 
Registered: Dec 2008
Posts: 1,014

Rep: Reputation: 146Reputation: 146
Quote:
Originally Posted by kirkengaard View Post
A) I've tried playing with UUIDs, and
B) I know which devices are which.

The trouble with UUID, as far as I've played with it, is that 1) the slackware installer doesn't deal with it, so I still have to modify my lilo.conf and fstab after the fact (at which point, I have to do the same amount of different work),
After running setup, before rebooting, "chroot /mnt", that is your new system. Then run "vim /etc/fstab", "lilo", or whatever you need.

Quote:
and 2) I can't always get the system to boot properly with UUIDs instead of device names (I also use GRUB). This has to do with not messing around with initrd.
I don't understand. Do you mean UUID breaks initrd?
 
Old 03-27-2009, 07:49 PM   #7
kirkengaard
LQ Newbie
 
Registered: Aug 2006
Location: Chicago
Distribution: slackware-current
Posts: 3

Original Poster
Rep: Reputation: 0
guanx, thanks for the tip on how to edit files ahead of the first system boot. I hadn't figured that out, and it will save me a lot of hassle!

As to UUIDs and initrd, if I'm not using the default kernel, I tend to build a kernel that doesn't need an initrd. Which causes trouble in my experience when I try to define partitions by their UUIDs, because the system doesn't seem to have that information on boot without me including it in an initrd. Caused me some pain a while back, and I just found it simpler to do without.
 
  


Reply

Tags
install, kernel, libata, slackware


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Transition to libata driver - SCSI system - GRUB changes kushalkoolwal Linux - Software 6 05-17-2008 01:54 PM
LXer: Linux: LibATA PATA Status LXer Syndicated Linux News 0 07-05-2007 07:46 PM
New motherboard with SATA and PATA won't boot linux from PATA centosian Linux - General 4 08-14-2006 10:24 AM
LXer: Linux: libATA PATA Status Report LXer Syndicated Linux News 0 02-07-2006 02:31 PM
Wine install making system hang jimdaworm Linux - Software 1 08-20-2003 09:50 AM


All times are GMT -5. The time now is 05:36 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration