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 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172
|
.\" Copyright (C) 2000 by Werner Almesberger
.\" May be distributed under GPL
.\"
.\" Written 2000-02-23 by Werner Almesberger
.\" Modified 2004-06-17 Michael Kerrisk <mtk-manpages@gmx.net>
.\"
.\" Japanese Version Copyright (c) 2000 NAKANO Takeo all rights reserved.
.\" Translated Wed Jun 14 2000 by NAKANO Takeo <nakano@apm.seikei.ac.jp>
.\"
.TH PIVOT_ROOT 2 2004-06-17 "Linux 2.6.7" "Linux Programmer's Manual"
.SH ̾
pivot_root \- root ե륷ƥѹ
.SH
.B #include <linux/unistd.h>
.br
.B #include <errno.h>
.sp
.B _syscall2(int,pivot_root,const char *,new_root,const char *,put_old)
.sp
.BI "int pivot_root(const char *" new_root ", const char *" put_old );
.SH
.B pivot_root
ϥȥץ root ե륷ƥ
.I put_old
ǥ쥯ȥ˰ư
.I new_root
ȥץο root ե륷ƥˤ롣
.\"
.\" .B CAP_SYS_ADMIN
.\" ѥӥƥɬפǤ롣
.B pivot_root
ŵŪˡϡƥεư˥ƥबŪ
root ե륷ƥ (㤨
.BR initrd )
ޥȤ³ root ե륷ƥޥȤ
ԤɬפƤΥץåɤ
root ѹ褦ʾǤ롣
Ť root ǥ쥯ȥȤäƤƤΥץ䥹åɤ
root ȥȥǥ쥯ȥ (cwd)
.B pivot_root
ѹ뤫ɤϤ狼ʤ
.B pivot_root
θƤӤץϡŤ root / cwd ȤäƤץ
ξǤư뤳ȤݾڤʤФʤʤ
ñ˹ԤˤϡΥץ root cwd
.B pivot_root
ƤӽФ
.I new_root
ѹƤȤǤ롣
嵭ϡ
.B pivot_root
ѹ뤫ΤʤȤդߤơ虜ۣ˽Ƥ롣
ܥڡҤƤǤϡ
.B pivot_root
ϸŤ root ǥ쥯ȥѤƤƤΥץåɤ root cwd
.I new_root
ѹ롣ϥͥΥåɤŤ root ǥ쥯ȥ
busy ֤ˤʤɬפǤ롣Υåɤ
Ťǥ쥯ȥ root / cwd ȤƤȡե륷ƥ
ڥʤǤŤ root busy ˤʤäƤޤǤ롣
.\"nakano: ȾĹ...
ϡͥ륹åɤե륷ƥؤΥ
Ūᥫ˥बǤΤǤФʵǽ
.B pivot_root
뤫⤷ʤ
ϥȥץˤĤƤƤϤޤ뤳Ȥա
.B pivot_root
ȥץ cwd ˱ƶ뤫ɤϤ狼ʤ
ä
.B pivot_root
ľ
.B chdir("/")
ƤӽФȤ褤
.IR new_root " " put_old
ˤϰʲ¤:
.IP \- 3
ǥ쥯ȥǤʤФʤʤ
.IP \- 3
.IR new_root " " put_old
ϸߤ root Ʊե륷ƥˤäƤϤʤʤ
.IP \- 3
.IR put_old " " new_root
ʲˤʤФʤʤʤ
.I put_old
ʸ 1 İʾ
.B ../
դ뤳Ȥˤä
.I new_root
Ʊǥ쥯ȥ꤬ʤФʤʤ
.IP \- 3
¾Υե륷ƥब
.I put_old
˥ޥȤƤƤϤʤʤ
.PP
ˤĤƤ
.BR pivot_root (8)
ȤΤȡ
ߤ root ޥȥݥȤǤϤʤ
.RB ( chroot (2)
.B pivot_root
θʤɡʲ⻲) 硢
Ť root ǥ쥯ȥǤϤʤ
Υե륷ƥΥޥȥݥȤ
.I put_old
˥ޥȤ롣
.SH
.I new_root
ϥޥȥݥȤǤʤƤ褤
ξ
.B /proc/mounts
ϡ
.I new_root
root
.RB ( / )
Ȥե륷ƥΥޥȥݥȤɽ롣
.SH ֤
0 ֤顼 \-1 ֤
.I errno
Ŭڤͤꤵ롣
.SH 顼
.B pivot_root
.BR stat (2)
֤륨顼
.RI ( errno
) ֤ǽ롣˰ʲ֤Ȥ:
.TP
.B EBUSY
.IR new_root " ޤ " put_old
ߤ root ե륷ƥˤ뤫
.I put_old
ˤʤ餫Υե륷ƥबޥȤƤ롣
.TP
.B EINVAL
.IR put_old " " new_root
βؤˤʤ
.TP
.B ENOTDIR
.IR new_root " ޤ " put_old
ǥ쥯ȥǤʤ
.TP
.B EPERM
ȥץ
.B CAP_SYS_ADMIN
ѥӥƥäƤʤ
.SH Х
.B pivot_root
ϥƥ¾ΥץƤ root
cwd ȤѹʤƤ褤ϤǤ롣
.B pivot_root
λȤ⤦äۣˤʤȡ
äȤ֤ˤ櫓Τ狼ʤ֤ˤʤäƤޤ
.SH
.B pivot_root
Linux ˸ͭΤΤʤΤǡܿϤʤ
.SH
.B pivot_root
Linux 2.3.41 Ƴ줿
.SH Ϣ
.BR chdir (2),
.BR chroot (2),
.BR stat (2),
.BR initrd (4),
.BR pivot_root (8)
|