Multiuser (or at least dual user :) ) puppy linux
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
HALLELUJA! It worked!
I combined the info from both threads and set up a few little scripts, among with modified versions of the init scripts for X. Now I can use the programs that were already installed on the system, but I cannot mount any devices. Still need to check out my internet connectivity as well (using my standard system again right now), but I hope to find that out in the next few days.
Thanks Pizzasgood! You saved my day.
I combined the info from both threads and set up a few little scripts, among with modified versions of the init scripts for X. Now I can use the programs that were already installed on the system, but I cannot mount any devices. Still need to check out my internet connectivity as well (using my standard system again right now), but I hope to find that out in the next few days.
Thanks Pizzasgood! You saved my day.
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
Here's Multiuser Puppy 4.2.1 Beta 2:
< BETA REMOVED >
md5sum - (eef9d8f392e055033444b7f2fabdc5f9)
Changes:
I verified that CUPS works fine as a limited user. I was surprised. It shouldn't by default. I think somebody probably chmodded something they shouldn't have when making the package. But I'm not going to mess with it though, unless somebody has very strong emotions about this.
There are still no drive icons on the desktop and I'm not going to bother adding any.
The icon changer does not work, and I'm not going to fix it. (The problem is that how it works is to change the icons in /usr/share/pixmaps/, which is a root-only location. I don't know of any good way to adjust the icon path to be per-user, so I'm not going to bother with it.)
Other than the unmounting thing and any bugs, I consider this done. I'm going to start writing up my documentation later this week.
There still things that could be improved but I'm not going to improve them. My goal wasn't perfection, just to get it to the point that it's more than good enough. As far as I'm aware, all that's left is the fluff, things that just make it nicer but aren't actually needed (automatically generating menus, for example). A graphical login program like XDM could be installed. But as it is, you can just log in via. CLI like real men. Etc. etc.
< BETA REMOVED >
md5sum - (eef9d8f392e055033444b7f2fabdc5f9)
Changes:
- The adduser wizard allows you to opt out of putting new users into the audio and disk groups.
Users in the audio group should be able to use audio properly.
Users in the disk group should be able to mount (but unfortunately not unmount) any partitions that have the "group" option set in /etc/fstab and have the device node's group set to 'disk'. Mounting must be done with mount-FULL, not mount.
Puppy should automatically add entries in /etc/fstab for any partitions it detects, including on-the-fly ones (flash drives), and will give them the group option and set the device node to 'disk'. This means you can also navigate to /mnt/ and click the dir and ROX-Filer will mount it too.
The adduser wizard should also automatically set up an /etc/X11/${USER}/ directory.
The cursor selector should now work for users.
The wallpaper setter (actually, pwidget's background handling) should work for users.
The "restart X" option should work now.
The timezone wizard is usable by users (stores choice in ~/Choices/localtime and is read by /etc/bashrc).
I verified that CUPS works fine as a limited user. I was surprised. It shouldn't by default. I think somebody probably chmodded something they shouldn't have when making the package. But I'm not going to mess with it though, unless somebody has very strong emotions about this.
There are still no drive icons on the desktop and I'm not going to bother adding any.
The icon changer does not work, and I'm not going to fix it. (The problem is that how it works is to change the icons in /usr/share/pixmaps/, which is a root-only location. I don't know of any good way to adjust the icon path to be per-user, so I'm not going to bother with it.)
Other than the unmounting thing and any bugs, I consider this done. I'm going to start writing up my documentation later this week.
There still things that could be improved but I'm not going to improve them. My goal wasn't perfection, just to get it to the point that it's more than good enough. As far as I'm aware, all that's left is the fluff, things that just make it nicer but aren't actually needed (automatically generating menus, for example). A graphical login program like XDM could be installed. But as it is, you can just log in via. CLI like real men. Etc. etc.
Last edited by Pizzasgood on Sun 04 Oct 2009, 21:06, edited 1 time in total.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
Hehe, can't wait for the documentation, man.
I've been working on my K-9 project again to make it a multi-user system as well, and it seems to work pretty good so far. However I need to set up the whole security framework now, which is the tricky part. Preparing Puppy for basic multi-user support and creating an account management tool was piece of cake when compared to that.
I've been working on my K-9 project again to make it a multi-user system as well, and it seems to work pretty good so far. However I need to set up the whole security framework now, which is the tricky part. Preparing Puppy for basic multi-user support and creating an account management tool was piece of cake when compared to that.
Hey Pizzasgood, someone found out about multiuser puppy reading my blog and he/she has problem with grub, can you take a look @ comments, don't know if this is puppy issue or he/she didn't pick right options when installing grub:
http://dejan555.freehostia.com/?p=31&cpage=1#comment-10
http://dejan555.freehostia.com/?p=31&cpage=1#comment-10
puppy.b0x.me stuff mirrored [url=https://drive.google.com/open?id=0B_Mb589v0iCXNnhSZWRwd3R2UWs]HERE[/url] or [url=http://archive.org/details/Puppy_Linux_puppy.b0x.me_mirror]HERE[/url]
MultiUser Puppy--Grub trouble
Hi, Dejan & Pizzasgood--
Some but not extensive experience with Linux...but I really like Puppy and have installed it before without problems. I did a full install of MultiUser Puppy on an old compaq deskpro with 6 GB hdd and 192 MB Ram. I chose install grub on MBR. When finished, I rebooted without cd, and got a (terminal-like screen) with a short paragraph about tab giving some possible completions after the first word, and then below:
grub>
When I pressed tab, I got a list of words like boot, ioprobe, etc. Tried typing boot after grub> but then got a message that the kernel has to be loaded first. Don't know how to do that.
Does this give you any idea of where I might have gone wrong?
many thanks,
srdorothy
Some but not extensive experience with Linux...but I really like Puppy and have installed it before without problems. I did a full install of MultiUser Puppy on an old compaq deskpro with 6 GB hdd and 192 MB Ram. I chose install grub on MBR. When finished, I rebooted without cd, and got a (terminal-like screen) with a short paragraph about tab giving some possible completions after the first word, and then below:
grub>
When I pressed tab, I got a list of words like boot, ioprobe, etc. Tried typing boot after grub> but then got a message that the kernel has to be loaded first. Don't know how to do that.
Does this give you any idea of where I might have gone wrong?
many thanks,
srdorothy
MultiUser Puppy--Grub trouble
I tried once more installing M.U. Puppy to hdd, and this time got a message that the hdd could not be unmounted (I had saved a pup_save file). So I put in my Mepis live cd, found the file and as root deleted it. Rebooted Puppy cd, and didn't get the 'can't unmount hdd' message...continued with install, etc, and couldn't boot Puppy on the hdd.
So with the live cd I mounted the hdd, and found and edited menu.lst per the installation instructions, but still no joy.
I think there is something important that I am missing...8^)
So with the live cd I mounted the hdd, and found and edited menu.lst per the installation instructions, but still no joy.
I think there is something important that I am missing...8^)
Try to do grubconfig from one of your other puppy cd's that work
(Menu -> System -> Grub Bootloader config ) then edit menu.lst to boot multiuser puppy
(Menu -> System -> Grub Bootloader config ) then edit menu.lst to boot multiuser puppy
puppy.b0x.me stuff mirrored [url=https://drive.google.com/open?id=0B_Mb589v0iCXNnhSZWRwd3R2UWs]HERE[/url] or [url=http://archive.org/details/Puppy_Linux_puppy.b0x.me_mirror]HERE[/url]
MultiUser Puppy--Grub trouble
Thank you, Dejan--I'll try that!
- Max Headroom
- Posts: 421
- Joined: Wed 28 Jun 2006, 07:17
- Location: GodZone Kiwi
- Contact:
G'day Pizzasgood & dejan555
Wundered 'bout recent Progress, & Developments w/ a view to Applying this to Dingo 4.3, otherwise is there a time frame 4 an 1d10T Proof howto documentation? ... Thanx
Um, just a thought Pizzasgood. Could it be made a pet with useradd and your wizards for managing users/login and other needed content, then make pinstall.sh set all neded things, I guess this could be done with one script to change all instances of root into $HOME in scripts and set permissions and stuff, that way, instead remastering iso specifically for puppy versions users could just download pet and run it to enable multiuser on any puppy version. What you think, could it be done with one well writen script suplied in package?.
puppy.b0x.me stuff mirrored [url=https://drive.google.com/open?id=0B_Mb589v0iCXNnhSZWRwd3R2UWs]HERE[/url] or [url=http://archive.org/details/Puppy_Linux_puppy.b0x.me_mirror]HERE[/url]
- Max Headroom
- Posts: 421
- Joined: Wed 28 Jun 2006, 07:17
- Location: GodZone Kiwi
- Contact:
Woof
Or SFS Package?
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
Forget the docs? I spent a long time last weekend writing those, no way I'd forget them at this stage... I have them nearly done, and the actual work of finishing off the puplet nearly done. As in, I ought to have it complete by Sunday at the latest unless I realize I made some horribly bad oversight. I'd have had it done already but this last week was busier than normal (I had three exams plus the weekly thermodynamics quiz). And my uncle has been working on his website again, so I needed to help fix it a couple times.
Anyway, I realized over the weekend that users could not shutdown or reboot. Well, they normally shouldn't be able to in a server environment, but in a desktop environment you might want at least some users to be able to. I had just written the daemon I mentioned for unmounting partitions, so I was able to reuse that to set up another for rebooting/powering down. Users in the "power" group can do that now.
WRT the mounting/unmounting, it turns out limited users can't do NTFS. For NTFS root needs to mount it. This is because Puppy uses ntfs-3g to handle NTFS partitions, and that doesn't want to let me allow limited users to use it properly. I suppose I could do the same thing I did for unmounting and powering off, but I don't like the idea of having so many daemons (even though they aren't really impacting anything - they just sit there waiting until the directory they monitor changes). But if anyone feels especially strongly about NTFS I'll do it.
I don't know how well all of this could be done by a .pet. I guess I'll look into it. I am making the extra scripts I've written into a .pet, and another for the shadow utilities, and probably a third .pet (or at least .tar.gz archive) for the modifications I had to do to get X running, since it involved some extra stuff like support for /etc/X11/$USER/xorg.conf.
Anyway, I realized over the weekend that users could not shutdown or reboot. Well, they normally shouldn't be able to in a server environment, but in a desktop environment you might want at least some users to be able to. I had just written the daemon I mentioned for unmounting partitions, so I was able to reuse that to set up another for rebooting/powering down. Users in the "power" group can do that now.
WRT the mounting/unmounting, it turns out limited users can't do NTFS. For NTFS root needs to mount it. This is because Puppy uses ntfs-3g to handle NTFS partitions, and that doesn't want to let me allow limited users to use it properly. I suppose I could do the same thing I did for unmounting and powering off, but I don't like the idea of having so many daemons (even though they aren't really impacting anything - they just sit there waiting until the directory they monitor changes). But if anyone feels especially strongly about NTFS I'll do it.
I don't know how well all of this could be done by a .pet. I guess I'll look into it. I am making the extra scripts I've written into a .pet, and another for the shadow utilities, and probably a third .pet (or at least .tar.gz archive) for the modifications I had to do to get X running, since it involved some extra stuff like support for /etc/X11/$USER/xorg.conf.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
Glad to hear that, pizzasgood.
I can't wait for the documentation so I can finish my work on my Account Control Center for K-9. The GUI is (almost) done and my scripts for user creation, group assignment and deletion seem to work flawlessly. However, I still have probs with removing users from a specific group, as the BB-variant of delgroup seems to be pretty crappy (my tcl/tk-based frontend frequently pops up a message that it couldn't find a certain group entry in /etc/gshadow, which I need to iron out in some way now).
And looking at the reports about the troubles you had with mounting and unmounting, I guess that issue will probably give me some sleepless nights as well.
I can't wait for the documentation so I can finish my work on my Account Control Center for K-9. The GUI is (almost) done and my scripts for user creation, group assignment and deletion seem to work flawlessly. However, I still have probs with removing users from a specific group, as the BB-variant of delgroup seems to be pretty crappy (my tcl/tk-based frontend frequently pops up a message that it couldn't find a certain group entry in /etc/gshadow, which I need to iron out in some way now).
And looking at the reports about the troubles you had with mounting and unmounting, I guess that issue will probably give me some sleepless nights as well.
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
It lives.
http://www.murga-linux.com/puppy/viewtopic.php?t=47409
I felt guilty so I went ahead and took care of the ntfs issue. I also noticed that somewhere along the way the inittab-AUTO and inittab-NOAUTO files wound up in /usr/etc/ rather than /etc/. I don't know if that happened before or after the last beta. Anyway, it's fixed in the final.
I also set the adduser-wizard to make the user's home directory 750 rather than 755.
The documentation is linked to from the announcement.
Sorry about how I kept releasing it with the exact same filename. I normally don't do that, but I forgot this time around (it's been over a year since I've released a puplet).
http://www.murga-linux.com/puppy/viewtopic.php?t=47409
I felt guilty so I went ahead and took care of the ntfs issue. I also noticed that somewhere along the way the inittab-AUTO and inittab-NOAUTO files wound up in /usr/etc/ rather than /etc/. I don't know if that happened before or after the last beta. Anyway, it's fixed in the final.
I also set the adduser-wizard to make the user's home directory 750 rather than 755.
The documentation is linked to from the announcement.
Sorry about how I kept releasing it with the exact same filename. I normally don't do that, but I forgot this time around (it's been over a year since I've released a puplet).
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
Thank you for your efforts, pizzasgood.
I'll have a look at your multiuser-iso as soon as I finished ironing out some serious probs with my own system. Erm, did you ever encounter the following problem by chance?
When you try to start X as a limited user you see the output
"Startup X, specs in /home/user/.etc/X11/xorg.conf, startup apps /home/user/.xinitrc ..."
but then, nothing happens until the connection to X timed out and you get bumped back to the prompt. Any idea what might cause it? It didn't happen with NOP 4.13, it just happens in Puppy 4.21.
I'll have a look at your multiuser-iso as soon as I finished ironing out some serious probs with my own system. Erm, did you ever encounter the following problem by chance?
When you try to start X as a limited user you see the output
"Startup X, specs in /home/user/.etc/X11/xorg.conf, startup apps /home/user/.xinitrc ..."
but then, nothing happens until the connection to X timed out and you get bumped back to the prompt. Any idea what might cause it? It didn't happen with NOP 4.13, it just happens in Puppy 4.21.
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
I think I had a problem like that with Xvesa. I was trying to let the user use his choice of X server, but I didn't realize that xwin was calling xinit, not X, to start it. So to make that work I'd probably have needed to give users a local symlink to their X of choice and then add that to their path so that it overrides /usr/X11R7/bin/X. Once I realized what was wrong I decided it wasn't worth the effort.
I think it did that when xwin was configuring it for xorg but X still pointed at Xvesa. But it might have been the other way around. Not sure.
I think it did that when xwin was configuring it for xorg but X still pointed at Xvesa. But it might have been the other way around. Not sure.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]