LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Puppy (http://www.linuxquestions.org/questions/puppy-71/)
-   -   Pup 5.2.5 reboots instead of shutting down (http://www.linuxquestions.org/questions/puppy-71/pup-5-2-5-reboots-instead-of-shutting-down-887962/)

tmcmilli 06-23-2011 01:05 PM

Pup 5.2.5 reboots instead of shutting down
 
My old Dell Optiplex GX110 (Pentium III, 256 MB RAM, Intel onboard video) will not shut down IF my hard drive is mounted. Instead, it reboots.

Here are some particulars:
  • I did a full install of Lucid Puppy 5.2.5 to my hard disk
  • I intentionally did not create a save file during the first shut down after installation
  • The internal IDE hard drive is recognized as sda1, its file system is ext3
  • I installed Grub to the MBR of /dev/sda1
  • Boots fine, programs run fine, and ordinarily it shuts down normally
  • I noticed that my hard drive sda1 is not mounted by default. It is this way at startup. I can open Pmount drive mounter and mount it manually, or simply click on the sda1 icon on the desktop and a green dot appears over the sda1 icon indicating the partition is now mounted, but...
  • If I mount sda1, then after I tell the PC to shut down it will shutdown AND reboot, rather than shutting down and powering off
  • After it has rebooted, the hard drive shows that it is once again unmounted
  • As long as hard drive sda1 is unmounted when the PC is told to shut down, it shuts down and powers off
  • FWIW, the only flag that is set on the sda1 partition (which is the only partition on drive, a Maxtor 20 GB IDE) is the boot flag.

From what I understand so far, I perceive that it would be preferable to have the hard drive partition mounted. That's why I mounted it manually, which triggered this repeated reboot process. Unless there is some compelling reason for it not to mount, I would like for sda1 to be mounted automatically at startup. Can I accomplish this without having my system reboot instead of shut down when I click on Shutdown, and without me having to add commands for startup and shutdown to mask whatever is the real problem?

Thanks in advance for any help.

8-bit 06-24-2011 12:59 AM

You stated that you did a full install. Since I have never done one and usually use a frugal install, things might work differently for each of us.
As to the hard drive shown as not mounted after booting to the desktop, try this.
Without mounting the hard drive, click on the house icon.
It should open to the /root directory.
If you see files and directories, then it is accessing your hard drive.
Then click on the green UP arrow.
That should take you to the base hard drive directory and show root usr etc.
If that all works, then open gleany or abiword, make a short document and save it.
If on the next boot, the file is available to you, there is no need to mount the hard drive.

Also, the only time you would see a prompt at shutdown to create a save file is for a frugal install.
A full install does not use a pupsave file.

Hope that helps some.

tmcmilli 06-24-2011 09:43 AM

8-bit,

Thanks for the reply. It seems weird now in light of your reply, but I was prompted to create a save file the first time I shut down after a full install. In fact I had earlier done a full install at least 5 or 6 times trying to resolve another issue, and I finally discovered that answering NO to the save prompt resolved that issue for me.

Question Update:
So to everyone, is there a script command that I can insert somewhere that will ensure that the hard drive sda1 unmounts every time, or if it is mounted it will unmount, before shutting down? Please bear in mind that although I've created my share of batch files and done text editing in a DOS environment over the years, I've not done any scripting in a Linux environment. So if someone simply said, "Oh just use PenguinScript and insert such and such a command in /root", (obviously I'm just making this stuff up), I wouldn't know how to execute that. So in that case a bit more specific detail, such as which text file to edit or where to insert a newly created script file, would be helpful. Thanks.

I have opened Abiword to create and save a text file which is still there after a reboot. So it sounds like I don't need to have the hard drive mounted. But I am configuring this PC as a master, to create a Ghost image for cloning 100 identical desktop PCs to give away to needy families. It's a collaborative effort between our public school division where I work in IT support, and the local cable TV / Internet service provider who are going to distribute the free computers and provide cheap monthly internet service to these families.

This is a noble cause, and Puppy Linux seems a fantastic choice for these old machines. But I need to ensure that it can't be easily broken by a child simply clicking on a desktop icon and causing the PC to reboot rather than shutting down and powering off next time it is shut down. "Look Mommy, they gave us this computer and it's junk. It doesn't even work right anymore." Ha!

Regards,
tmcmilli

Karl Godt 06-26-2011 04:10 AM

I am guessing that you did indeed a full installation .
For the drive icon there seems to be the '/bin/df' script replaced by the normal df binary .
Pup510 should still contain this script to rename '/dev/root' to '/dev/sda1' .

If you boot your installation , what is the output of the console commands "df" and "mount" ?
And after you ran "pmount" is the output of these two commands different from the first outputs ?

From Xorg the scripts "wmpoweroff" and "wmreboot" kill X
and the script "xwin" is executed further and it execs
"/sbin/poweroff" || "/sbin/reboot" , which are also scripts to only execute two commands :
/etc/rc.d/rc.shutdown
busybox poweroff || busybox reboot

The last line in /etc/rc.d/rc.shutdown is
busybox umount -ar > /dev/null 2>&1

perhaps make it look like this
busybox umount -ar ###> /dev/null 2>&1
sleep 20s

AND | OR
busybox poweroff -f || busybox reboot -f
in the two other scripts.

Actually 'umount -ar' is a simple line to unmount everything (a)
and if unmounting fails , try to remount read only (r) .
The main partition never unmounts 'ro' this way .

busybox poweroff works with my HW Bios from 2001 with the grub line
"kernel /boot/vmlinux root=HERE_MY_DEVICE HERE_OTHER_PARAMETERS acpi_enforce_resources=lax"

My computer halted put did not shutoff the power supply unit without "acpi_enforce_resources=lax" .
The acpi blacklist year @Puppy5 kernel is 2001 and @Puppy4 is 2002 ,
so I have to boot Pupp4 with "acpi=force acpi_enforce_resources=lax" .

So I think you should try this first .

tmcmilli 06-27-2011 01:21 PM

With the drive sda1 unmounted, here is the output of the df command:

Filesystem 1K Blocks Used Available Use Mounted on
rootfs 19223252 792616 17454152 5% /
/dev/root 19223252 792616 17454512 5% /
shmfs 50564 0 50564 0% /dev/shm

Output of the mount command:

rootfs on / type rootfs (rw)
/dev/root on / type ext3 (rw,relatime,errors=continue,data=ordered)
none on /proc type proc (rw,relatime)
none on /dev/pts type devpts (rw/relative,gid=2,mode=620)
none on /sys type sysfs (rw,relatime)
shmfs on /dev/shm type tmpfs (rw,relative,size=50564k)
none on /proc/bus/usb type usbfs (rw,relatime)

(yes it does say relatime, I don't know if that is supposed to be realtime but it wouldn't surprise me)

--------------------------------------------------

I have noticed that after I mount drive sda1, when I tell the system to Shutdown - power off the computer, it displays a series of commands on screen. It actually calls for a reboot right at the last, instead of calling for a shutdown sequence. Then after the system reboots, the drive sda1 comes up unmounted again. So the next time I Shutdown - power off, at the last a command is issued and executed to Poweroff Computer instead of Reboot.

Prior to reading this latest reply (by the way thank you very much for your reply), I had already edited the last line of the rc.shutdown script so that it reads

busybox umount -af > /dev/sda1 2>&1

instead of...

busybox umount -ar > /dev/sda1 2>&1

This made no difference in the behavior of the PC. If drive sda1 is mounted, the system will call for a reboot rather than calling for a shutdown as it executes the series of commands at the end of the shutdown sequence. It seems to me that for whatever reason, the drive mounted condition triggers a call for a reboot script execution, rather than a shutdown script execution. But I don't know how to fix this.

Again, any help is greatly appreciated.

Karl Godt 06-28-2011 05:04 PM

First : Pupp511 and later do not have the 'df' script to
convert the output of df-FULL from /dev/root to /dev/sda1 .
see
http://www.murga-linux.com/puppy/vie...9ca7f33#537920

And after a while I think I had a similar reboot annoyance ;
which I got fixed after doing some other settings in the BIOS .
Since I've not found out to copy the BIOS to a file
I tend to forget what I have changed .

What does
Code:

dmidecode | grep -A 50 -i 'BIOS Information'
say ?

relatime means relative access time , I think : see
Code:

pman mount
What still puzzles me is , that you are able to unmount the only partition and unmount the full install .
This should not be possible .

Please post the content of
Code:

source /etc/rc.d/PUPSTATE ; echo 'PUPMODE='"$PUPMODE"
source /etc/DISTRO_SPECS ; echo "$DISTRO_NAME" "$DISTRO_VERSION"
cat /etc/rc.d/BOOTCONFIG

In a full installation the Bootconfig file should contain no entries .

tmcmilli 06-29-2011 07:52 AM

1 Attachment(s)
Thank you Karl for your latest reply.

QUOTE:
What does
Code:

dmidecode | grep -A 50 -i 'BIOS Information'
say ?

REPLY:
Please see the attached text file for results of that command.

QUOTE:
What still puzzles me is , that you are able to unmount the only partition and unmount the full install .
This should not be possible.

REPLY:
I understand what you are saying. After my first attempt to install this version of this distro, drive sda1 would mount by default with a blue dot over it. The drive was mounted by default and could not be unmounted. Apparently there was a problem with how I installed Grub, and I needed to unmount sda1 to make a repair, but could not unmount it. So once again I booted from the Live CD, completely reformatted the hard drive again (file system ext3) and did a full install of Puppy Linux again. This time, per a suggestion I read on a Linux forum, I installed Grub to the boot sector of the hard drive, and I did not save the PUPSAVE file when prompted after finishing the install. So that's how I arrived at the place where I am now. The system boots fine, runs programs just fine, normally shuts down just fine. But if I mount the hard drive, the next time I shut down and power off it reboots instead.

QUOTE:
Please post the content of
Code:

source /etc/rc.d/PUPSTATE ; echo 'PUPMODE='"$PUPMODE"
source /etc/DISTRO_SPECS ; echo "$DISTRO_NAME" "$DISTRO_VERSION"
cat /etc/rc.d/BOOTCONFIG

In a full installation the Bootconfig file should contain no entries.

REPLY:
PUPMODE=2
Distro version = Lucid Puppy 525
The bootconfig file is blank, it has no entries.

Hope this helps,
Tom McMillion

Karl Godt 06-29-2011 02:29 PM

Quote:

Release Date: 09/18/2000
You fall out into the Puppy kernel2.6.30.5 and 2.6.33.2 ACPI_BLACKLIST_YEAR 2002/2001 !

Either your BIOS has no ACPI support ,
or probably has to be forced by the kernel to use it .

Code:

grep -i -E 'APM|ACPI' /tmp/bootkernel.log
would show info about the AdvancedPowerManagement
and or AdvancedConfigurationandPowerInterface .

The file bootkernel.log gets created by /etc/profile ,
which gets sourced by
tty1::respawn:/sbin/getty -n -l /bin/autologinroot 38400 tty1
by busybox init executing /etc/inittab .

Your Puppy should have the file
/etc/modprobe.d/apm.conf
with the entry
options apm smp=1 power_off=1
SMP="Symmetric multi-processing support"

and
Code:

modinfo apm
says:
vermagic: 2.6.30.9-KRG-i386-compiled-AcerLaptop-rev2 SMP mod_unload 386
parm: debug:Enable debug mode (bool)
parm: power_off:Enable power off (bool)
parm: bounce_interval:Set the number of ticks to ignore suspend bounces (int)
parm: allow_ints:Allow interrupts during BIOS calls (bool)
parm: broken_psr:BIOS has a broken GetPowerStatus call (bool)
parm: realmode_power_off:Switch to real mode before powering off (bool) ### Don't know what tis means
parm: idle_threshold:System idle percentage above which to make APM BIOS idle calls (int)
parm: idle_period:Period (in sec/100) over which to caculate the idle percentage (int)
parm: smp:Set this to enable APM use on an SMP platform. Use with caution on older systems (bool)

Unfortunately the kernel documentation of APM is widespread and would need a tar file .
I will try to gather relevant files I can find ,
looks like one header is not available : <asm[-generic]/apm.h> .

First I would check if ACPI or APM is mainly used for your platform by the kernel ,
looking into [dmesg] /tmp/bootkernel.log [/tmp/bootsysinit.log]

There is also an IDE configured kernel for single processor platforms
http://bkhome.org/blog/?viewDetailed=02100
That runs well on my P4 2,4GH 448MB RAM 500GB HD

Karl Godt 06-29-2011 02:51 PM

Quote:

drive sda1 would mount by default with a blue dot over it. The drive was mounted by default and could not be unmounted.
So should it be at frugal and full installations .

Because of the lacking 'df' shellscript , I believe your first installation had been a frugal installation .

As said , the df-script uses the "rdev" command to rename "/dev/root" to "/dev/sda1" . It might be , that you believe , that the partition isn't mounted because of the missing mount-ball on the drive icon .

Now because of "PUPMODE=2" and the result of the other output ,
your installation is a full installation to Master Boot Record (MBR) , or do you chainload ?

What does
Code:

grep -i -E -H -n 'initrd|kernel|chain|root' /boot/grub/menu.lst  || \
grep -i -E -H -n 'initrd|kernel|chain|root' /menu.lst

say ?

tmcmilli 06-29-2011 03:09 PM

Found a 'workaround' for this issue
 
In another discussion thread on this Puppy Linux discussion forum, I found that someone else was having the same problem I am having, and he discovered a method of working around this "reboot if mounted" problem.

He added a line at the beginning of rc.shutdown which says:

umount /mnt/sdb4

where sdb4 is the name of his hard drive. I added the following line at the beginning of my rc.update:

umount /mnt/sda1

and now if I mount sda1, then tell the PC to shutdown and power off, it does power off instead of rebooting. So you might say the problem is solved, or rather I am working around the problem.

I did find a newer BIOS download from Dell for this model, which is from 2003. I can try updating the BIOS to the newest revision from 2003 and see if that makes any difference without the extra line of text added to the beginning of my rc.shutdown file.

Karl Godt 06-29-2011 03:36 PM

Further from your attached .txt file :
Quote:

APM is supported
ACPI is supported
Manufacturer: Dell Computer Corporation
Product Name: OptiPlex GX110
1.: The BIOS told dmidecode , that ACPI and APM are supported .
The Puppy kernels have mostly
the many ACPI features compiled as modules :
modprobe -l | grep acpi :
  • kernel/drivers/platform/x86/thinkpad_acpi.ko
  • kernel/drivers/platform/x86/asus_acpi.ko
  • kernel/drivers/platform/x86/toshiba_acpi.ko
  • kernel/drivers/acpi/thermal.ko
  • kernel/drivers/acpi/battery.ko
  • kernel/drivers/acpi/pci_slot.ko
  • kernel/drivers/acpi/video.ko
  • kernel/drivers/acpi/container.ko
  • kernel/drivers/acpi/sbs.ko
  • kernel/drivers/acpi/processor.ko
  • kernel/drivers/acpi/ac.ko
  • kernel/drivers/acpi/fan.ko
  • kernel/drivers/acpi/sbshc.ko
  • kernel/drivers/pci/hotplug/acpiphp.ko
  • kernel/drivers/pci/hotplug/acpiphp_ibm.ko
  • kernel/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.ko
while for APM there seems to be only one module
  • kernel/arch/x86/kernel/apm.ko
2.: and modprobe -l | grep dell shows
  • kernel/drivers/firmware/dell_rbu.ko
  • kernel/drivers/platform/x86/dell-wmi.ko
  • kernel/drivers/platform/x86/dell-laptop.ko
The command
Code:

lsmod
shows the currently loaded modules .

Many things to check for .

Karl Godt 06-29-2011 04:05 PM

from /etc/rc.d/rc.update :
Quote:

PUPMODE="$1"
KERNVER="`uname -r`"
[ -z $DISPLAY ] || XSTATUS="yes" #v3.99
[ "$PUPMODE" = "" ] && exit
case $PUPMODE in
lots|of|Pup|Modes|here)
;;
*) #v423 PUPMODE=2 (full hd install) then just exit.
exit
;;
esac
In fact , the "Update" part is the first part to follow the "File system" part ,
where everything gets mounted and
"/dev/root" gets "mount -o remount,rw /" .

Perhaps this umount of the partition makes the "dev/root" read-only again ?

I really would like to see your "/tmp/bootsysinit.log" :study:

Or did you mean /etc/rc.d/rc.local ?


All times are GMT -5. The time now is 06:24 PM.