[SOLVED] slackware 14,1 versus slackware 14,0 boot freeze
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
When I installed slackware 14.0 on my usbkey, I was able to boot it on /dev/sdb1. Thing is that with slackware 14.1 I get a error message just as if it didnt detect the usbkey infos. What was suggested to me was to give rootdelay=30 params to the kernel so lilo could have the time to detect /dev/sdb. When you boot 14.0 from a usbkey you see clearly the message "waiting 30sec before mounting root partition", and right after that message you see the usbkey info cause it shoes that the work of rootdelay=30 is used the correct way or in the needed way. With 14.1, i applied rootdelay=30 params, its in the lilo.conf "append" section, but when I boot, I see the "waiting 30sec before mounting root partition" but it doesnt go forward and showing me the usbkey info on the screen as a /dev/sdb device...
How can I get 14.1 to boot from my usbkey then? The lilo.conf and fstab files from 14.0 to 14.1 are basicly the same...
are you booting from the usb device or are you booting from a hard drive and telling it to look for sdb1. ? you will need to use a initrid.img not sure the huge kernel will do what you need. http://docs.slackware.com/slackware:beginners_guide scroll to the mkinitrd part.
are you booting from the usb device or are you booting from a hard drive and telling it to look for sdb1. ? you will need to use a initrid.img not sure the huge kernel will do what you need. http://docs.slackware.com/slackware:beginners_guide scroll to the mkinitrd part.
Thanks for the reply. lilo boots from the usb. lilo.conf says "boot = /dev/sdb". The "append" section of lilo.conf says "hugesmp.s rootdelay=30 root=/dev/sdb1".
A reply would be appreciated...
My main question is why does it work with 14.0 and not with 14.1... 2nd question would be how to solve this problem... I use not UUID, no labels, just a very basic fstab file.
your root delay is not whats seems to be going on. it is dropping to shell in 30 seconds because it is not finding root. most likley since your booting from the usb device this set that device to load first on the system which is sda. not sdb. Just a guess. if I was going to boot from a usb device I would use isolinux. Learn how to edit the isolinux.cfg just like the cdrom uses. you will see it there. If you have a full copy of Slackware 14.1 you will see the folder.
If you was booting from a hard drive and your second drive is the usb. that would make it sdb. then it could load it ?.
As far as your question about 14.0 have no clue how you installed that.
if your going to use lilo. when you partitioned your usb did you make sdb1 bootable. check it with cfdisk.
your root delay is not whats seems to be going on. it is dropping to shell in 30 seconds because it is not finding root. most likley since your booting from the usb device this set that device to load first on the system which is sda. not sdb. Just a guess. if I was going to boot from a usb device I would use isolinux. Learn how to edit the isolinux.cfg just like the cdrom uses. you will see it there. If you have a full copy of Slackware 14.1 you will see the folder.
If you was booting from a hard drive and your second drive is the usb. that would make it sdb. then it could load it ?.
As far as your question about 14.0 have no clue how you installed that.
if your going to use lilo. when you partitioned your usb did you make sdb1 bootable. check it with cfdisk.
Thanks for the reply...
sdb1 is bootable yes. As I mentionned, i get a error message just after the booting process reaches the "rootdelay=30", meaning the booting process kinda stops printing on the screen cuz its waiting for 30 seconds before mounting the root partition...
I'll check with isolinux.cfg. Thanks. I'll reply later today.
Still its weird that with 14.0 all is well and with 14.1 it isnt... something musta changed. I love slackware, but aint a pro either.
I'll check with isolinux.cfg to see whats in there. Ill reply later today.
Cheers,
Dumdadum
Last edited by dumdadum; 04-04-2014 at 12:30 PM.
Reason: confirmation of the fact that I came to reply "later today"
your root delay is not whats seems to be going on. it is dropping to shell in 30 seconds because it is not finding root. most likley since your booting from the usb device this set that device to load first on the system which is sda. not sdb. Just a guess. if I was going to boot from a usb device I would use isolinux. Learn how to edit the isolinux.cfg just like the cdrom uses. you will see it there. If you have a full copy of Slackware 14.1 you will see the folder.
If you was booting from a hard drive and your second drive is the usb. that would make it sdb. then it could load it ?.
As far as your question about 14.0 have no clue how you installed that.
if your going to use lilo. when you partitioned your usb did you make sdb1 bootable. check it with cfdisk.
I havent found the isolinux.cfg file...
Just so I get approval, here is my fstab and lilo.conf file...
I understand that the lilo boot sector is on your USB stick and that the lilo.conf and fstab you show are on the USB stick as well, right?
Assuming that, keep in mind that the name of that device allocated by the kernel at boot time may be not /dev/sdb2 but /dev/sdb1, whatever. To be safe you should name the USB stick by LABEL or by UUID as stated in "man lilo.conf":
Code:
root=<root-device>
This specifies the device that should be mounted as root. It may be specified as a global option. If
the special name current is used, the root device is set to the device on which the root file system is
currently mounted. If the root has been changed with -r , the respective device is used. If the vari‐
able `root' is omitted, the root device setting contained in the running kernel image is used. Warning:
This can induce to an unbootable system!
The root filesystem may also be specified by a LABEL= or UUID= directive, as in '/etc/fstab'. In this
case, the argument to root= must be enclosed in quotation marks, to avoid a syntax error on the second
equal sign, e.g.:
root="LABEL=MyDisk"
root="UUID=5472fd8e-9089-4256-bcaa-ceab4f01a439"
Note: The command line root= parameter passed to the kernel will be: 'root=LABEL=MyDisk'; i.e., without
the quotation marks. If the root= parameter is passed from the boot time boot: prompt, no quotes are
used. The quotes are only there to satisfy the requirements of the boot-installer parser, which treats
an equal sign as an operator. The kernel command line parser is very much simpler, and must not see any
quotation marks. Simply stated, only use the quotation marks within /etc/lilo.conf.
And "man fstab" says:
Code:
The first field (fs_spec).
This field describes the block special device or remote filesystem to be mounted.
For ordinary mounts it will hold (a link to) a block special device node (as created by mknod(8)) for
the device to be mounted, like `/dev/cdrom' or `/dev/sdb7'. For NFS mounts one will have <host>:<dir>,
e.g., `knuth.aeb.nl:/'. For procfs, use `proc'.
Instead of giving the device explicitly, one may indicate the (ext2 or xfs) filesystem that is to be
mounted by its UUID or volume label (cf. e2label(8) or xfs_admin(8)), writing LABEL=<label> or
UUID=<uuid>, e.g., `LABEL=Boot' or `UUID=3e6be9de-8139-11d1-9106-a43f08d823a6'. This will make the sys‐
tem more robust: adding or removing a SCSI disk changes the disk device name but not the filesystem vol‐
ume label.
Note that mount(8) uses UUIDs as strings. The string representation of the UUID should be based on lower
case characters.
Last edited by Didier Spaier; 04-04-2014 at 05:24 PM.
I understand that the lilo boot sector is on your USB stick and that the lilo.conf and fstab you show are on the USB stick as well, right?
Assuming that, keep in mind that the name of that device allocated by the kernel at boot time may be not /dev/sdb2 but /dev/sdb1, whatever. To be safe you should name the USB stick by LABEL or by UUID as stated in "man lilo.conf":
Code:
root=<root-device>
This specifies the device that should be mounted as root. It may be specified as a global option. If
the special name current is used, the root device is set to the device on which the root file system is
currently mounted. If the root has been changed with -r , the respective device is used. If the vari‐
able `root' is omitted, the root device setting contained in the running kernel image is used. Warning:
This can induce to an unbootable system!
The root filesystem may also be specified by a LABEL= or UUID= directive, as in '/etc/fstab'. In this
case, the argument to root= must be enclosed in quotation marks, to avoid a syntax error on the second
equal sign, e.g.:
root="LABEL=MyDisk"
root="UUID=5472fd8e-9089-4256-bcaa-ceab4f01a439"
Note: The command line root= parameter passed to the kernel will be: 'root=LABEL=MyDisk'; i.e., without
the quotation marks. If the root= parameter is passed from the boot time boot: prompt, no quotes are
used. The quotes are only there to satisfy the requirements of the boot-installer parser, which treats
an equal sign as an operator. The kernel command line parser is very much simpler, and must not see any
quotation marks. Simply stated, only use the quotation marks within /etc/lilo.conf.
And "man fstab" says:
Code:
The first field (fs_spec).
This field describes the block special device or remote filesystem to be mounted.
For ordinary mounts it will hold (a link to) a block special device node (as created by mknod(8)) for
the device to be mounted, like `/dev/cdrom' or `/dev/sdb7'. For NFS mounts one will have <host>:<dir>,
e.g., `knuth.aeb.nl:/'. For procfs, use `proc'.
Instead of giving the device explicitly, one may indicate the (ext2 or xfs) filesystem that is to be
mounted by its UUID or volume label (cf. e2label(8) or xfs_admin(8)), writing LABEL=<label> or
UUID=<uuid>, e.g., `LABEL=Boot' or `UUID=3e6be9de-8139-11d1-9106-a43f08d823a6'. This will make the sys‐
tem more robust: adding or removing a SCSI disk changes the disk device name but not the filesystem vol‐
ume label.
Note that mount(8) uses UUIDs as strings. The string representation of the UUID should be based on lower
case characters.
Yes Mr. Didier, the lilo boot sector is on the usb stick and lilo.conf and fstab are on the usb stick...
I'll try what you said with labels and uuids... Still, why did it work with 14.0 and not 14.1, thats what I dont understand.
I'll keep you posted with the label and uuid instead of the plain declarations in the fstab. Thanks for the quick reply. I appreciate.
I understand that the lilo boot sector is on your USB stick and that the lilo.conf and fstab you show are on the USB stick as well, right?
Assuming that, keep in mind that the name of that device allocated by the kernel at boot time may be not /dev/sdb2 but /dev/sdb1, whatever. To be safe you should name the USB stick by LABEL or by UUID as stated in "man lilo.conf":
Code:
root=<root-device>
This specifies the device that should be mounted as root. It may be specified as a global option. If
the special name current is used, the root device is set to the device on which the root file system is
currently mounted. If the root has been changed with -r , the respective device is used. If the vari‐
able `root' is omitted, the root device setting contained in the running kernel image is used. Warning:
This can induce to an unbootable system!
The root filesystem may also be specified by a LABEL= or UUID= directive, as in '/etc/fstab'. In this
case, the argument to root= must be enclosed in quotation marks, to avoid a syntax error on the second
equal sign, e.g.:
root="LABEL=MyDisk"
root="UUID=5472fd8e-9089-4256-bcaa-ceab4f01a439"
Note: The command line root= parameter passed to the kernel will be: 'root=LABEL=MyDisk'; i.e., without
the quotation marks. If the root= parameter is passed from the boot time boot: prompt, no quotes are
used. The quotes are only there to satisfy the requirements of the boot-installer parser, which treats
an equal sign as an operator. The kernel command line parser is very much simpler, and must not see any
quotation marks. Simply stated, only use the quotation marks within /etc/lilo.conf.
And "man fstab" says:
Code:
The first field (fs_spec).
This field describes the block special device or remote filesystem to be mounted.
For ordinary mounts it will hold (a link to) a block special device node (as created by mknod(8)) for
the device to be mounted, like `/dev/cdrom' or `/dev/sdb7'. For NFS mounts one will have <host>:<dir>,
e.g., `knuth.aeb.nl:/'. For procfs, use `proc'.
Instead of giving the device explicitly, one may indicate the (ext2 or xfs) filesystem that is to be
mounted by its UUID or volume label (cf. e2label(8) or xfs_admin(8)), writing LABEL=<label> or
UUID=<uuid>, e.g., `LABEL=Boot' or `UUID=3e6be9de-8139-11d1-9106-a43f08d823a6'. This will make the sys‐
tem more robust: adding or removing a SCSI disk changes the disk device name but not the filesystem vol‐
ume label.
Note that mount(8) uses UUIDs as strings. The string representation of the UUID should be based on lower
case characters.
So yes the usb stick has, on its MBR, lilo installed. Here is a little question... sorry if I dont get it...
Since the usb stick boots up after I installed Slackware on it, weither its Slackware 14.0 or 14.1 cuz both installations are successful since they both show me the lilo prompt to boot Slackware and I'm 101% convinced its not the hard drive booting Slackware but really is the usb stick booting Slackware, the boot sequence shows alot of boot info to the screen that I as a beginner have no clue what it all means nor do I know where the logs of the boot sequence are, I simply notice the difference with the boot sequence of 14.0 compared to 14.1, hence the problem I'm faced with, that I see with the boot sequence of Slackware 14.0 the probing of the usb stick with the key words "sdb1" "sdb2" "sdb3" clearly printed on the screen alongside with the name of the manufacturer of the usb key in question AFTER the "waiting 30 secs before mounting root partition" message is shown on the screen during the boot sequence of Slackware 14.0, cuz it seems to be probing for the usb stick while doing the "rootdelay=30" part of the kernel params configured in the "append" section of lilo.conf, correct me if I'm wrong, but weither its, in the fstab listed as /dev/sdb2 for the root partition OR declared with labels or UUID's, why would labels and UUID's make a difference since at boot with 14.1 there doesnt even seem to be a probing for a /dev/sdb* since there is no printing on the screen that the usb stick is being probed during the "rootdelay=30" portion of the boot sequence, compared to the boot sequence of Slackware 14.0 that clearly shows the name of the manufacturer of the usb stick, in my case being Kingston, thus what I'm trying to say is that its a difference that I notice between the Slackware 14.0 and Slackware 14.1 boot sequence... hence the reason why I'm confused and faced with the obvious necessity to ask people in this forum for help, and I would really like to show greps of logs I might have in /var/log which I'm going to start looking for in order to supply them here, I'm almost asking myself if someone can tell me if Pat made any changes from 14.0 to 14.1 in the boot sequence probing of the devices while the kernel is doing the 30 seconds wait with the advice I got being to give the "rootdelay=30" param to the kernel for the boot sequence... Why would it change from 14.0 to 14.1... Is there another kernel param' that I should include in the lilo.conf file in order for the boot sequence to probe for the usb stick in question before it mounts the root partition? I cant imagine that the probing of devices will change every new version of Slackware will be released right?
I'll read the man pages, but still, with Slackware 14.0 the question was asked in another thread about that problem, "rootdelay=30" was proposed as a solution, and now the solution doesnt work with Slackware 14.1... I dont get it... What is the use of "rootdelay=30" in Slackware 14.1 then? I'm not trying to insult any intelligence that I meet with this problem I'm faced... I want to upgrade to 14.1, thats for sure. I dont want to be limited to sticking with 14.0 just for a boot problem... "rootdelay=30" really solved the problem with the boot sequence of Slackware 14.0 on my usb stick. I really want to have Slackware on a usb stick.
Please help me, I'm waiting for a reply, in the meantime I'll try to find logs on the usb stick of the boot sequence of 14.0 and 14.1, even if I have to reinstall Slackware 14.0 then 14.1 on the usb stick just to supply logs to this thread.
Thanks again, I appreciate all help,
Cheers,
Dumdadum
The "rootdelay=30" command line parameter is nothing magic. I suggested to use it in this old post because I was installing Slackware on an USB hard disk and a hard disk needs some time to spin fast enough for the data in it be read. An USB stick instead has not mechanical parts, so if a delay is needed (of which I am not sure) it is certainly not that big.
Other than that, when you use USB devices the way their partitions' names are given by the kernel depends on the order they are scanned, that in turn depends on how many they are, on which slots they are plugged in and in which order the slots are scanned.
For instance if you have only one USB device plugged in, its first partition will be named /dev/sdb1 but if you have two the naming can change. That's why it's advisable to use UUID or LABELS, as a mean of giving always the same name to the same physical device, regardless of where it is inserted and how many devices you have plugged in at boot time or later.
Anyhow to better understand your problem it would be useful to know if you have other USB devices than your USB stick plugged in at boot time.
Last edited by Didier Spaier; 04-05-2014 at 06:55 AM.
I suggested to use it in this old post because I was installing Slackware on an USB hard disk and a hard disk needs some time to spin fast enough for the data in it be read.
no this is a up to date thread Didier Spaier I just did not have a spare usb thumb drive to test it on. Thank you for your wonderful input
and the direction we was going.
The "rootdelay=30" command line parameter is nothing magic. I suggested to use it in this old post because I was installing Slackware on an USB hard disk and a hard disk needs some time to spin fast enough for the data in it be read. An USB stick instead has not mechanical parts, so if a delay is needed (of which I am not sure) it is certainly not that big.
Other than that, when you use USB devices the way their partitions' names are given by the kernel depends on the order they are scanned, that in turn depends on how many they are, on which slots they are plugged in and in which order the slots are scanned.
For instance if you have only one USB device plugged in, its first partition will be named /dev/sdb1 but if you have two the naming can change. That's why it's advisable to use UUID or LABELS, as a mean of giving always the same name to the same physical device, regardless of where it is inserted and how many devices you have plugged in at boot time or later.
Anyhow to better understand your problem it would be useful to know if you have other USB devices than your USB stick plugged in at boot time.
Hello Mr. Didier, thanks for the reply.
You use a usb hard disk or firewire right? I think rootdelay=30 helped me too since my usb stick is also like your usb hard drive, it had solved my problem. Still, did you try just for kicks to use slackware 14.1 as booting OS on that hard drive? Just to see if you can still use rootdelay=30 with 14.1? Unless you use current? I dont, I'm not that good with slackware...
To answer your question, yes I made sure there was only my usb stick and not an mp3 player or any other usb device plugged in, thanks for asking. My problem is really the probing of the device at boot, slackware 14.1 doesnt seem to be doing any probing while rootdelay=30 is in action...
no this is a up to date thread Didier Spaier I just did not have a spare usb thumb drive to test it on. Thank you for your wonderful input
and the direction we was going.
Thanks for trying to test it out on your own. I really appreciate the efforts.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.