Felhasználói eszközök

Eszközök a webhelyen


podman:chroot

Ez a dokumentum egy előző változata!


Chroot

A chroot utasítás segítségével az operációs rendszer egy könyvtárában alakítjuk ki a program futásához szükséges környezetet. Ebben a környezetben a futtatáshoz szükséges összes állományt a forrás fájlrendszer struktúráját követve adjuk meg.

Programok futtatása

Egyszerű shell futtatása

Létrehozzuk a chroot könyvtárat, majd bemásoljuk a 'bash' programot. majd 'chroot' paramétereként.

# mkdir -p /opt/chroot/01-shell-minimal

# type bash
bash: /usr/sbin/bash

# mkdir -p /opt/chroot/01-shell-minimal/usr/bin
cp -a /usr/bin/bash /opt/chroot/01-shell-minimal/usr/bin

Futtatjuk a programot chroot nélkül. Ellenőrizzük a szülö shell PID-jét, a futtatot program PID-jét, majd kilépés után újra a szülőt.

# echo $$
4595

# /opt/chroot/01-shell-minimal/usr/bin/bash 
# echo $$
5121
# exit
exit

# echo $$
4595

Futtassuk a programot 'chroot' segítségével. Hibát kapunk, mert a programhoz tartozó megosztott függvényeket tartalmazó állományok hiányoznak.

# chroot /opt/chroot/01-shell-minimal /usr/bin/bash
chroot: failed to run command ‘/usr/bin/bash’: No such file or directory

Ellenőrizzük mire van szükség.

<code> # ldd /usr/bin/bash

linux-vdso.so.1 (0x00007f5879c64000)
libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007f5879aa9000)
libc.so.6 => /lib64/libc.so.6 (0x00007f58798b6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5879c66000)

<code>

A hiányzó állományok listájában három típust különböztetünk meg:

  1. a programhoz linkelt állomány 'linux-vdso.so.1 (0x00007f5879c64000)' nincs vele teendő.
  2. dinamikusan linkelt állomány amit a program hivatkozás segítségével ér el 'libtinfo.so.6 ⇒ /lib64/libtinfo.so.6 (0x00007f5879aa9000)'.
  3. statikusan megadott állomány, amelynek helye nem módosítható '/lib64/ld-linux-x86-64.so.2 (0x00007f5879c66000)'.

Hozzuk létre a könyvtárstruktúrát és másoljuk be az állományokat. A példában a szimbolikus linkeket is létrehozzuk.

podman/chroot.1776146742.txt.gz · legutóbbi módosítás: – Szerkesztő: riba.zoltan