[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Daemons in schroot or how to start chroot automatically



On Fri, Jul 20, 2012 at 12:48:49PM +0000, Ramon Hofer wrote:
> On Fri, 20 Jul 2012 10:42:58 +0100, Roger Leigh wrote:
> 
> > On Thu, Jul 19, 2012 at 12:34:26PM +0000, Ramon Hofer wrote:
> >> I have some questions about starting daemons in a chroot environment or
> >> rather about starting schroot on bootup.
> >> The reason I want to do this is to clean up my server. It's a Squeeze
> >> with an AMD64 kernel from backports. Some packages are from testing
> >> which gives me problems because of dependencies that can't be
> >> fullfilled: sabnzbdplus from testing depends on python so I can't
> >> install build- essential...
> >> 
> >> So far I was able to setup a chroot with schroot and installed sid in
> >> it.
> >> 
> >> [sid]
> >> description=Debian sid (unstable)
> >> directory=/srv/chroot/sid users=hoferr groups=hoferr root-groups=root
> >> aliases=unstable,default
> > 
> > set type=directory here
> 
> That sounds great what I can read in the schroot.conf manpage:
> "In consequence, filesystems  such  as  /proc  are  not  mounted  in  
> plain chroots;  it  is  the  responsibility  of  the  system 
> administrator to configure  such  chroots  by  hand,  whereas  
> directory   chroots   are automatically  configured."
> 
> This means I can remove the remounts of /proc, /dev and /sys to /srv/
> chroot/sid/... from my /etc/fstab?

Yes, exactly.  You still have an fstab--it's
/etc/schroot/default/fstab, though this is configurable (set
script=config with schroot 1.4.x, or profile= with schroot 1.6.x).

> But when I try this out and comment the proc and dev remounts and restart 
> the system sabnzbd+ isn't started automatically and when I try it when 
> the init.d script manually I get:
> [....] Starting SABnzbd+ binary newsgrabber:start-stop-daemon: nothing 
> in /proc - not mounted?
>  failed!

Hmm, it should have mounted it.  Try looking at the information
reported with "-v"; you should see the 10mount script mount mounting
the filesystems.  If it doesn't, you should see an error at this point.
Or, if the configuration is broken for some reason, maybe you'll see
an absence of mounting.  You should see the reverse happen when you
end the session as well.

> >> In the chroot I have created a new user called hoferr and am now able
> >> to login without root privilieges.
> >> But in there sudo is missing. Maybe this can be resolved by installing
> >> the correct base system meta package mentioned above?
> > 
> > You could install sudo.  But why?  This is what schroot /is/ (chroot +
> > sudo).  If you want to do stuff as root inside the chroot,
> > just add yourself to root-groups/root-users.
> 
> Or start it with `sudo schroot -p -c sid`.

That's a possibility, though I would personally just configure schroot
to give me root access directly.

> I'm still using version 1.4.19. But this feature sounds very good!
> 
> Btw I have accidentally run `schroot -v` instead -V to get the version 
> number. First I got a little shock but now the prompt shows the name of 
> the chroot I'm logged into even if I only do `schroot -p -c sid`. That's 
> great :-)

Fantastic!  That's one of the little details set up by the setup
scripts (50chrootname).  It will also handle other things like copying
over the passwd database so you have the same accounts inside the
chroot that you have on the host.


Regards,
Roger

-- 
  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux    http://people.debian.org/~rleigh/
 `. `'   schroot and sbuild  http://alioth.debian.org/projects/buildd-tools
   `-    GPG Public Key      F33D 281D 470A B443 6756 147C 07B3 C8BC 4083 E800


Reply to: