aboutsummaryrefslogtreecommitdiffstats
path: root/debian/arch-chroot.adoc
blob: 67a82d95ce15e86ca8e4a9cfd7993de896d14a56 (plain) (blame)
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
arch-chroot(1)
==============
:doctype: manpage

NAME
----
arch-chroot - script to mount API filesystems like /proc and make /etc/resolv.conf available in a chroot


SYNOPSIS
--------
*arch-chroot* ['option'] 'chroot-dir' ['command']


OPTIONS
-------
*-h*::
 Print the help message

*-u* '<user>[:group]'::
 Specify non-root user and optional group to use


DESCRIPTION
-----------
Before *arch-chroot* runs */usr/bin/chroot*, the script mounts API filesystems
like '/proc' and makes '/etc/resolv.conf' available in a chroot.

The Debian version of this script also sets up '/usr/sbin/policy-rc.d' to
disable autostart of daemons.

If 'command' is unspecified, arch-chroot will launch */bin/bash*.

Note that when using arch-chroot, the target chroot directory *should* be a
mountpoint. This ensures that tools such as findmnt(8) have an accurate hierarchy
of the mounted filesystems within the chroot.

If your chroot target is not a mountpoint, you can bind mount the directory on
itself to make it a mountpoint, i.e. 'mount --bind /your/chroot /your/chroot'.


EXAMPLES
--------
=== Enter a chroot ===

Run arch-chroot with the new root directory as first argument:

```
arch-chroot /location/of/new/root
```

To exit the chroot simply use:

```
exit
```

=== Run a single command and exit ===

To run a command in the chroot and exit again, append the command to the end of the line:

```
arch-chroot /location/of/new/root command
```

For example, to run *dpkg-configure -a* for a chroot located at '/media/testing' do:

```
arch-chroot /media/testing dpkg-configure -a
```