1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
|
schroot
=======
Securely enter a chroot and run a command or login shell.
Note that giving untrusted users root access to chroots is a serious
security risk! Although the untrusted user will only have root access
to files inside the chroot, in practice there are many obvious ways of
breaking out of the chroot and of disrupting services on the host
system. As always, this boils down to trust. Don't give chroot root
access to users you would not trust with root access to the host
system.
For compatibility with existing tools and scripts, wrapper binaries
for dchroot and DSA dchroot are provided.
Build Dependencies
------------------
An ISO C++ compiler supporting TR1 (e.g. GCC 4.x), or an ISO C++
compiler and the Boost libraries
libstdc++ (GNU libstdc++)
libpam0g-dev (Linux-PAM)
libboost-dev }
libboost-program-options-dev } The Boost C++ libraries
libboost-regex-dev }
uuid-dev (e2fsprogs)
groff (or troff) soelim
cmake
If building from GIT, you will also need:
gettext (0.16 or greater)
doxygen
po4a (>=0.40)
To run the unit tests, you will optionally need:
cppunit
And then to build with:
cmake /path/to/schroot
make
Translation
-----------
If you would like to see the schroot messages output in your own
language, please consider translating the pot file (po/schroot.pot).
If you would like to see the schroot man pages in your own language,
please consider translating the pot file
(man/po/schroot-man.pot).
Building and installation
-------------------------
Run "cmake -LH" to see basic configurable options. The following basic
options are supported:
btrfs-snapshot=(ON|OFF) Enable support for btrfs snapshots (requires Btrfs)
dchroot=(ON|OFF) Enable dchroot compatibility
dchroot-dsa=(ON|OFF) Enable dchroot-dsa compatibility
debug=(ON|OFF) Enable debugging messages
default_environment_filter=REGEX
Default environment filter
doxygen=(ON|OFF) Enable doxygen documentation
loopback=(ON|OFF) Enable support for loopback mounts
lvm-snapshot=(ON|OFF) Enable support for LVM snapshots (requires LVM)
nls=(ON|OFF) Enable national language support (requires gettext)
pam=(ON|PFF) Enable support for PAM authentication (requires libpam)
personality=(ON|OFF) Enable personality support (Linux only)
test=(ON|OFF) Enable unit tests
union=(ON|OFF) Enable support for union mounts
uuid=(ON|OFF) Enable support for UUIDs in session names (requires libuuid)
cmake will autodetect and enable all available features by default,
with the exception of dchroot and dchroot-dsa which require manually
specifying, so these options are mostly useful for disabling features
which are not required.
Run "cmake -LA" to see all settable options. CMAKE_INSTALL_PREFIX is
the equivalent of the configure --prefix option. Additionally,
CMAKE_INSTALL_SYSCONFDIR, CMAKE_INSTALL_LOCALSTATEDIR,
CMAKE_INSTALL_LIBDIR etc. provide the equivalent sysconfdir,
localstatedir and libdir, etc. options.
Run "make doc" to make the doxygen documentation.
Run "make test" to run the testsuite.
Note that the testsuite ("make test") should be run under fakeroot or
real root in order to work correctly.
Configuration
-------------
See schroot.conf(5) and schroot-setup(5).
Running
-------
See schroot(1).
|