Skip to content

Instantly share code, notes, and snippets.

@Phr33d0m
Created October 3, 2012 17:53
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Phr33d0m/3828590 to your computer and use it in GitHub Desktop.
Save Phr33d0m/3828590 to your computer and use it in GitHub Desktop.
A fstab example for Bedrock Linux's client management
/dev/sda1 / ext4 noatime 0 1
/dev/sda2 none swap sw 0 0
# Bedrock Linux 1.0alpha2 /etc/fstab
#
# Things which should be mounted at boot go here. Additionally, things which
# should be mounted to share between clients should be placed here.
#
# It is recommended to make the core Bedrock accessible as a client as well, so
# that it can be accessed from within other clients. This is the only item
# described herein which should be mounted at boot. To do so, uncomment the
# following line (optionally changing /var/chroot/bedrock to where you would
# like to place the bedrock client).
#
/ /var/chroot/bedrock bind defaults,bind 0 0
#
# For the items which should be shared, two special options need to be given:
# "noauto" and "user" - the first specifies that the items are not mounted at
# boot, and the second allows non-root users to mount the items.
#
# Most clients will require access to /proc, /dev (and its subdirectories) and
# /sys. To make these acessible in a bedrock client, uncomment the following:
#
#/proc /var/chroot/bedrock/proc proc noauto,user,exec,nosuid 0 0
#/dev /var/chroot/bedrock/dev bind noauto,user,exec,dev,bind,nosuid 0 0
#/dev/pts /var/chroot/bedrock/dev/pts devpts noauto,user,exec,dev,nosuid 0 0
#/dev/shm /var/chroot/bedrock/dev/shm bind noauto,user,exec,dev,bind,nosuid 0 0
#/sys /var/chroot/bedrock/sys sysfs noauto,user,exec,dev,nosuid 0 0
#
# Other things which are recommended to be shared:
#
# Ensures client can itself prepare other clients:
#/etc/fstab /var/chroot/bedrock/etc/fstab bind noauto,user,bind,nosuid 0 0
#/opt/bedrock /var/chroot/bedrock/opt/bedrock bind noauto,user,bind,exec,suid 0 0
#/var/chroot /var/chroot/bedrock/var/chroot bind noauto,user,bind,exec,suid 0 0
#/var/chroot/bedrock /var/chroot/bedrock/var/chroot/bedrock bind noauto,user,bind,exec,suid 0 0
# Ensures clients properly integrate users:
#/etc/group /var/chroot/bedrock/etc/group bind noauto,user,bind,nosuid 0 0
#/etc/passwd /var/chroot/bedrock/etc/passwd bind noauto,user,bind,nosuid 0 0
#/etc/shadow /var/chroot/bedrock/etc/shadow bind noauto,user,bind,nosuid 0 0
#/etc/profile /var/chroot/bedrock/etc/profile bind noauto,user,bind,nosuid 0 0
#/home /var/chroot/bedrock/home bind noauto,user,bind,exec,nosuid 0 0
#/root /var/chroot/bedrock/root bind noauto,user,bind,exec,nosuid 0 0
# Needed for many applications:
#/etc/hostname /var/chroot/bedrock/etc/hostname bind noauto,user,bind,nosuid 0 0
#/etc/hosts /var/chroot/bedrock/etc/hosts bind noauto,user,bind,nosuid 0 0
#/etc/resolv.conf /var/chroot/bedrock/etc/resolv.conf bind noauto,user,bind,nosuid 0 0
# Not overly much reason to keep these unique per client:
#/etc/sudoers /var/chroot/bedrock/etc/sudoers bind noauto,user,bind,nosuid 0 0
#/tmp /var/chroot/bedrock/tmp bind noauto,user,bind,exec,nosuid 0 0
#/usr/src /var/chroot/bedrock/usr/src bind noauto,user,bind,exec,nosuid 0 0
#/boot /var/chroot/bedrock/boot bind noauto,user,bind,exec,nosuid 0 0
#
# Baring the first example item (/ /var/chroot/bedrock bind defaults,bind 0 0),
# all of the items described above should be created for every client which you
# would like fully integrated into the system (the exceptions being clients
# which you would like to sandbox). Copy the entire block of items for each
# client, replacing the "/var/chroot/bedrock" which is at the beginning of the
# second column with the location of the newly-being-added client.
#
# Remember that each item described above, baring the first one, should have a
# corresponding mount line in /opt/bedrock/etc/brclients.conf
#
# Finally, /etc/fstab can be used as one would typically use it in a more
# standard Linux distribution. If you would like to mount, say, a Windows
# partition on boot, or ensure users can automatically mount an optical disk
# drive, those will also need lines in this file.
# bedrock
/dev /var/chroot/bedrock/dev bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/pts /var/chroot/bedrock/dev/pts bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/shm /var/chroot/bedrock/dev/shm bind noauto,user,bind,exec,dev,nosuid 0 0
/etc/fstab /var/chroot/bedrock/etc/fstab bind noauto,user,bind,nosuid 0 0
/etc/group /var/chroot/bedrock/etc/group bind noauto,user,bind,nosuid,rw 0 0
/etc/hostname /var/chroot/bedrock/etc/hostname bind noauto,user,bind,nosuid 0 0
/etc/hosts /var/chroot/bedrock/etc/hosts bind noauto,user,bind,nosuid 0 0
/etc/passwd /var/chroot/bedrock/etc/passwd bind noauto,user,bind,nosuid,rw 0 0
/etc/profile /var/chroot/bedrock/etc/profile bind noauto,user,bind,nosuid 0 0
/etc/resolv.conf /var/chroot/bedrock/etc/resolv.conf bind noauto,user,bind,nosuid 0 0
/etc/shadow /var/chroot/bedrock/etc/shadow bind noauto,user,bind,nosuid 0 0
/etc/sudoers /var/chroot/bedrock/etc/sudoers bind noauto,user,bind,nosuid 0 0
/home /var/chroot/bedrock/home bind noauto,user,bind,exec,nosuid 0 0
/opt/bedrock /var/chroot/bedrock/opt/bedrock bind noauto,user,bind,exec,suid 0 0
/proc /var/chroot/bedrock/proc proc noauto,user,exec,nosuid 0 0
/root /var/chroot/bedrock/root bind noauto,user,bind,exec,nosuid 0 0
/sys /var/chroot/bedrock/sys sysfs noauto,user,exec,nosuid 0 0
/tmp /var/chroot/bedrock/tmp bind noauto,user,bind,exec,nosuid 0 0
/usr/src /var/chroot/bedrock/usr/src bind noauto,user,bind,exec,nosuid 0 0
/var/chroot /var/chroot/bedrock/var/chroot bind noauto,user,bind,exec,suid 0 0
/var/chroot/bedrock /var/chroot/bedrock/var/chroot/bedrock bind noauto,user,bind,exec,suid 0 0
# archlinux
/dev /var/chroot/archlinux/dev bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/pts /var/chroot/archlinux/dev/pts bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/shm /var/chroot/archlinux/dev/shm bind noauto,user,bind,exec,dev,nosuid 0 0
/etc/fstab /var/chroot/archlinux/etc/fstab bind noauto,user,bind,nosuid 0 0
/etc/group /var/chroot/archlinux/etc/group bind noauto,user,bind,nosuid 0 0
/etc/hostname /var/chroot/archlinux/etc/hostname bind noauto,user,bind,nosuid 0 0
/etc/hosts /var/chroot/archlinux/etc/hosts bind noauto,user,bind,nosuid 0 0
/etc/passwd /var/chroot/archlinux/etc/passwd bind noauto,user,bind,nosuid 0 0
/etc/profile /var/chroot/archlinux/etc/profile bind noauto,user,bind,nosuid 0 0
/etc/resolv.conf /var/chroot/archlinux/etc/resolv.conf bind noauto,user,bind,nosuid 0 0
/etc/shadow /var/chroot/archlinux/etc/shadow bind noauto,user,bind,nosuid 0 0
/etc/sudoers /var/chroot/archlinux/etc/sudoers bind noauto,user,bind,nosuid 0 0
/home /var/chroot/archlinux/home bind noauto,user,bind,exec,nosuid 0 0
/opt/bedrock /var/chroot/archlinux/opt/bedrock bind noauto,user,bind,exec,suid 0 0
/proc /var/chroot/archlinux/proc proc noauto,user,exec,nosuid 0 0
/root /var/chroot/archlinux/root bind noauto,user,bind,exec,nosuid 0 0
/sys /var/chroot/archlinux/sys sysfs noauto,user,exec,nosuid 0 0
/tmp /var/chroot/archlinux/tmp bind noauto,user,bind,exec,nosuid 0 0
/usr/src /var/chroot/archlinux/usr/src bind noauto,user,bind,exec,nosuid 0 0
/var/chroot /var/chroot/archlinux/var/chroot bind noauto,user,bind,exec,suid 0 0
/var/chroot/bedrock /var/chroot/archlinux/var/chroot/bedrock bind noauto,user,bind,exec,suid 0 0
# gentoo
/dev /var/chroot/gentoo/dev bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/pts /var/chroot/gentoo/dev/pts bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/shm /var/chroot/gentoo/dev/shm bind noauto,user,bind,exec,dev,nosuid 0 0
/etc/fstab /var/chroot/gentoo/etc/fstab bind noauto,user,bind,nosuid 0 0
/etc/group /var/chroot/gentoo/etc/group bind noauto,user,bind,nosuid 0 0
/etc/hostname /var/chroot/gentoo/etc/hostname bind noauto,user,bind,nosuid 0 0
/etc/hosts /var/chroot/gentoo/etc/hosts bind noauto,user,bind,nosuid 0 0
/etc/passwd /var/chroot/gentoo/etc/passwd bind noauto,user,bind,nosuid 0 0
/etc/profile /var/chroot/gentoo/etc/profile bind noauto,user,bind,nosuid 0 0
/etc/resolv.conf /var/chroot/gentoo/etc/resolv.conf bind noauto,user,bind,nosuid 0 0
/etc/shadow /var/chroot/gentoo/etc/shadow bind noauto,user,bind,nosuid 0 0
/etc/sudoers /var/chroot/gentoo/etc/sudoers bind noauto,user,bind,nosuid 0 0
/home /var/chroot/gentoo/home bind noauto,user,bind,exec,nosuid 0 0
/opt/bedrock /var/chroot/gentoo/opt/bedrock bind noauto,user,bind,exec,suid 0 0
/proc /var/chroot/gentoo/proc proc noauto,user,exec,nosuid 0 0
/root /var/chroot/gentoo/root bind noauto,user,bind,exec,nosuid 0 0
/sys /var/chroot/gentoo/sys sysfs noauto,user,exec,nosuid 0 0
/tmp /var/chroot/gentoo/tmp bind noauto,user,bind,exec,nosuid 0 0
/usr/src /var/chroot/gentoo/usr/src bind noauto,user,bind,exec,nosuid 0 0
/var/chroot /var/chroot/gentoo/var/chroot bind noauto,user,bind,exec,suid 0 0
/var/chroot/bedrock /var/chroot/gentoo/var/chroot/bedrock bind noauto,user,bind,exec,suid 0 0
# squeeze
/dev /var/chroot/squeeze/dev bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/pts /var/chroot/squeeze/dev/pts bind noauto,user,bind,exec,dev,nosuid 0 0
/dev/shm /var/chroot/squeeze/dev/shm bind noauto,user,bind,exec,dev,nosuid 0 0
/etc/fstab /var/chroot/squeeze/etc/fstab bind noauto,user,bind,nosuid 0 0
/etc/group /var/chroot/squeeze/etc/group bind noauto,user,bind,nosuid 0 0
/etc/hostname /var/chroot/squeeze/etc/hostname bind noauto,user,bind,nosuid 0 0
/etc/hosts /var/chroot/squeeze/etc/hosts bind noauto,user,bind,nosuid 0 0
/etc/passwd /var/chroot/squeeze/etc/passwd bind noauto,user,bind,nosuid 0 0
/etc/profile /var/chroot/squeeze/etc/profile bind noauto,user,bind,nosuid 0 0
/etc/resolv.conf /var/chroot/squeeze/etc/resolv.conf bind noauto,user,bind,nosuid 0 0
/etc/shadow /var/chroot/squeeze/etc/shadow bind noauto,user,bind,nosuid 0 0
/etc/sudoers /var/chroot/squeeze/etc/sudoers bind noauto,user,bind,nosuid 0 0
/home /var/chroot/squeeze/home bind noauto,user,bind,exec,nosuid 0 0
/opt/bedrock /var/chroot/squeeze/opt/bedrock bind noauto,user,bind,exec,suid 0 0
/proc /var/chroot/squeeze/proc proc noauto,user,exec,nosuid 0 0
/root /var/chroot/squeeze/root bind noauto,user,bind,exec,nosuid 0 0
/sys /var/chroot/squeeze/sys sysfs noauto,user,exec,nosuid 0 0
/tmp /var/chroot/squeeze/tmp bind noauto,user,bind,exec,nosuid 0 0
/usr/src /var/chroot/squeeze/usr/src bind noauto,user,bind,exec,nosuid 0 0
/var/chroot /var/chroot/squeeze/var/chroot bind noauto,user,bind,exec,suid 0 0
/var/chroot/bedrock /var/chroot/squeeze/var/chroot/bedrock bind noauto,user,bind,exec,suid 0 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment