namespaces(7)
namespaces(7) — Linux Manual Page
Namn
namespaces - översikt av Linux namnrymder
Beskrivning
En namnrymd omsluter en global systemresurs i en abstraktion som gör att processerna inom namnrymden uppfattar att de har sin egen isolerade instans av den globala resursen. Ändringar av den globala resursen är synliga för andra processer inom samma namnrymd men är osynliga för processer utanför den. Ett av användningsområdena för namnrymder är att implementera containrar.
Den här sidan beskriver de olika typerna av namnrymder, relaterade filer i /proc, samt en sammanfattning av API:er för att arbeta med namnrymder.
Typer av namnrymder
Tabellen nedan visar tillgängliga namnrymder i Linux. Den andra kolumnen anger flaggorna som används för att specificera namnrymden i olika API:er. Den tredje kolumnen hänvisar till relevanta manual-sidor, och den sista kolumnen sammanfattar vad respektive namnrymd isolerar.
Namnrymd Flagg Sida Isolerar Cgroup CLONE_NEWCGROUP cgroup_namespaces(7) Cgroup-rotdirektivet IPC CLONE_NEWIPC ipc_namespaces(7) System V IPC, POSIX-meddelandeköer Network CLONE_NEWNET network_namespaces(7) Nätverksgränssnitt, stackar, portar, etc. Mount CLONE_NEWNS mount_namespaces(7) Monteringspunkter PID CLONE_NEWPID pid_namespaces(7) Process-ID:n Time CLONE_NEWTIME time_namespaces(7) Boot- och monotona klockor User CLONE_NEWUSER user_namespaces(7) Användar- och grupp-ID:n UTS CLONE_NEWUTS uts_namespaces(7) Värdnamn och NIS-domännamn
API:er för namnrymder
Förutom de relaterade filerna i /proc (beskrivna nedan) omfattar namnrymds-API följande systemanrop:
- clone(2) – Skapar en ny process. Om argumentet flags anger en eller flera av flaggorna CLONE_NEW*, skapas nya namnrymder för varje flagga, och barnprocessen görs till medlem i dessa namnrymder.
- setns(2) – Låter en process ansluta sig till en befintlig namnrymd via en filbeskrivare som pekar på en fil i /proc/pid/ns.
- unshare(2) – Flyttar en process till en ny namnrymd. Argumentet flags anger vilka namnrymder som ska skapas.
- ioctl(2) – Ger olika operationer för att hämta information om namnrymder. Se ioctl_nsfs(2).
Relaterade filer i /proc/pid/ns
Varje process har en /proc/pid/ns/-undermapp med en symbolisk länk för varje namnrymd som kan manipuleras med setns(2). Till exempel:
$ ls -l /proc/$$/ns lrwxrwxrwx. cgroup -> cgroup:[4026531835] lrwxrwxrwx. ipc -> ipc:[4026531839] lrwxrwxrwx. mnt -> mnt:[4026531840] lrwxrwxrwx. net -> net:[4026531969] lrwxrwxrwx. pid -> pid:[4026531836] lrwxrwxrwx. time -> time:[4026531834] lrwxrwxrwx. user -> user:[4026531837] lrwxrwxrwx. uts -> uts:[4026531838]
Symboliska länkar i denna undermapp inkluderar:
- /proc/pid/ns/cgroup – Hanterar Cgroup-namnrymden.
- /proc/pid/ns/ipc – Hanterar IPC-namnrymden.
- /proc/pid/ns/mnt – Hanterar monteringsnamnrymden.
- /proc/pid/ns/net – Hanterar nätverksnamnrymden.
- /proc/pid/ns/pid – Hanterar PID-namnrymden.
- /proc/pid/ns/time – Hanterar tidsnamnrymden.
- /proc/pid/ns/user – Hanterar användarnamnrymden.
- /proc/pid/ns/uts – Hanterar UTS-namnrymden.
Exempel
Se clone(2) och user_namespaces(7).
Se även
Colophon
Denna sida är en del av Linux-manualprojektet. För mer information, se [1].
Sidslut
Orginalhemsidan på Engelska :https://man7.org/linux/man-pages/man7/namespaces.7.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.