Date: Sat, 05 Aug 2000 11:02:47 -0500 From: Frank Pawlak <fpawlak@execpc.com> To: Joe Warner <jswarner@uswest.net>, freebsd-newbies@freebsd.org, freebsd-advocacy@freebsd.org Subject: Re: Newbie Learning Experience Message-ID: <4.3.2.7.2.20000805110010.00b8d348@127.0.0.1> In-Reply-To: <398C2599.FB356E7E@uswest.net>
next in thread | previous in thread | raw e-mail | index | archive | help
IMHO this is a great story. Perhaps this deserves a daemon news spot with some HOWTO implications. Regards, Frank At 08:32 AM 8/5/2000 -0600, Joe Warner wrote: >Hi all, > > I've had a real learning experience with my FreeBSD (3.4) system at >work over the past couple of days and at the risk of making myself look >like an idiot, I felt it important enough to share. Since I'm a newbie >and hope to help other newbies when facing similar situations, this >email is directed mainly at freebsd-newbies. However, I also felt it >important enough to share with freebsd-advocacy because of how amazed I >am with the OS. Instead of a little cartoon devil, maybe the mascot >should be the Energizer Bunny? FreeBSD keeps going and going and >going... 8^) Anyway, please bear with me. This is probably going to be >pretty lengthy, so for those of you don't like to read or are >uninterested, just close this email and delete it now. For the rest of >you, read on... > When I came into work last Thursday morning, I noticed that my PC >(Compaq Deskpro 2000), running FreeBSD 3.4 was at the login prompt and >my WIN NT machine was at the boot up password. I realized then that the >inevitable had happened....Power Outage! Thinking that power >outages/cold reboots meant death to most UNIX systems, I hurried to >prevent this from happening again and hooked up an APC Smart-UPS 1000 >that we had sitting in one of our storage closets. Hooking it up to my >FreeBSD machine was easy enough. I just plugged the power cord into a >receptacle and then plugged the power from the CPU and monitor into the >back of the UPS. I finished by attaching the serial cable on the UPS to >the serial port on the back of the CPU (COM1) - There is only one serial >port available for Compaq Deskpro's. After hooking it up, I realized >that I would need to install some software that could communicate with >the UPS through the serial line and allow me to do a graceful shutdown >in the event of power loss. I went to APC's web site and though they >had their Powerchute software available for many commercial versions of >UNIX, I didn't see anything that was designed specifically for any of >the BSD's. They even had a Linux version and I learned later that at >least one person was running this successfully under Linux emulation on >his FreeBSD 3.4 system. I didn't want to run this under Linux emulation >if I didn't have to. Later, I came across an application in the ports >collection called UPSD - 2.0 that seemed to be designed specifically to >work with the APC Smart-UPS models. I loaded the 4th CD from the CD ROM >set and from /usr/ports/sysutils/upsd/ I typed make install and >installed it. I noticed that there wasn't any documentation included >with this port, not even a man page. It loaded only 2 files, the upsd >executable in /usr/local/sbin and the configuration file (upsd.conf) in >/usr/local/etc I su'd to root and attempted to spawn the daemon by >cd'ng to /usr/local/sbin and typing # ./upsd At this point, my whole >system locked up tighter than a drum! I couldn't kill X and couldn't >switch to another terminal. Nothing! I had to cold-reboot my system >again! After I booted back up, I looked at my logs and noticed a >message indicating there was a permission problem with /dev/cuaa0 This >device is owned by uucp and belongs to the dialer group. I su'd to root >again and adjusted the permissions so that other users would have access >and then tried to execute the program again. Same thing happened, >complete lockup! At this point, I was pretty frustrated and none the >information I had read in my books or the answers I received from >posting to FreeBSD-Questions seemed to help. I cd'd to >/usr/ports/sysutils/upsd and typed make deinstall and went home. > When I came in Friday morning, I noticed an email from someone who >said they were using a port called UPSMON - 2.1.3 with an APC Smart-UPS >on their FreeBSD system without any problems. This port wasn't on the >CD ROM set, so when I installed it, it had to fetch it from an ftp >site. No problem, right? Wrong! I installed this port and decided to >reboot. Big mistake! Now, during boot-up, my system would just hang >at: > >local package initialization: Cannot open /dev/cuaa0: Permission denied >upsmond<---(this is where it would hang) > > After hearing the voice of Ralph from the Simpsons in my head, going >Ha! Ha!.., I thought, now what do I do! After going through all my >books and documentation and trying to boot into single-user mode, fixit >mode from the 2nd cd in the cd rom set and even from kernel.GENERIC, I >realized I wasn't getting anywhere. My machine would always hang when >trying to launch the upsmond daemon during boot up. As a last resort, I >posted to FreeBSD-Questions and got the answer I was looking for. I was >told to go into single-user mode. At the beginning of the boot-up >process, there is a ten second count down that tells you to either hit >enter or wait for the count down to finish for system boot-up. Before >the counter finishes, you hit the space bar and you're presented with a >prompt where you can specify different boot options. I specified "boot >-s" for single user mode. In The Complete FreeBSD, it tells you to boot >into single-user mode and run fsck on / by issuing: fsck -y / <cr> I >ran this on / and /dev/wd0s1a, respectively. Then it tells you to mount >/ by typing: mount -u / I did this and it let me mount it. Lastly, it >says to mount /usr by typing: mount /usr It would let me mount this but >only with read access. I needed write access so that I could go into >/usr/local/etc/rc.d/ and either remove or change the upsmond.sh file in >there that was causing my system to hang. I got a response from someone >telling me to mount /usr by typing the following: mount -rwf /usr This >worked and I was able to edit upsmond.sh so that it was pointing to >/dev/cuaa1 and not cuaa0. This got my system booting. I found out >later that I could have successfully mounted /usr with r/w access if I >would have first fsck'd it by issuing: fsck -y /usr (I probably should >have done this for /var too) > I got my system booting again (Whew!) but still haven't figured out >why /dev/cuaa0 causes problems. I seems as if some kind of conflict is >going on, maybe something else is using this device? I haven't found >the answer to this yet. I got an email response back from APC, saying >they did have an application that would work with FreeBSD but I would >need to purchase their Simple UNIX Serial cable for $39.00 in order for >it to work. So, now I don't know if it's a device conflict or the cable >but I doubt I'll shell out the money for a new cable. Maybe my manager >will let me order it and reimburse me? > I've always thought that cold reboot/shutdowns were death to UNIX >systems, especially if you did it more than 5 or 6 times. I've >completely trashed my systems this way when I was using Red Hat 6.x and >Caldera 2.x in the past. Cold booted more than 5 times and got the >dreaded "kernel panic" message and had to reinstall. I ended up cold >booting my FreeBSD system more than 12 times the last couple of days and >it's still going! 8^) So, the moral of this story? FreeBSD is >forgiving, you just need to tell it how to forgive you! And...forgive >me for such a long story... 8^} > >Joe > > >-- > > FreeBSD = The Power to Serve > ..Simply put = FreeBSD Rocks! > > > > >To Unsubscribe: send mail to majordomo@FreeBSD.org >with "unsubscribe freebsd-advocacy" in the body of the message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-newbies" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4.3.2.7.2.20000805110010.00b8d348>