namespaces(7)

Från Wiki.linux.se
Version från den 25 november 2024 kl. 07.14 av Admin (diskussion | bidrag) (Skapade sidan med '= 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...')
(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till navigering Hoppa till sök

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.

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.