Man page - pid_namespaces(7)
Packages contains this manual
- shm_overview(7)
- nss(5)
- proc_mtrr(5)
- intro(7)
- tcp(7)
- iso_8859-9(7)
- armscii-8(7)
- proc_kpagecount(5)
- initrd(4)
- mouse(4)
- proc_stat(5)
- x25(7)
- proc_interrupts(5)
- fifo(7)
- repertoiremap(5)
- icmp(7)
- futex(7)
- feature_test_macros(7)
- lp(4)
- bpf-helpers(7)
- epoll(7)
- proc_sys_dev(5)
- namespaces(7)
- proc_sysrq-trigger(5)
- proc_bus(5)
- cp1251(7)
- proc_pid_maps(5)
- proc_sys_vm(5)
- proc_pid_projid_map(5)
- st(4)
- proc_pid(5)
- issue(5)
- pid_namespaces(7)
- unicode(7)
- inode(7)
- hosts.equiv(5)
- iso-8859-13(7)
- proc_fb(5)
- proc_modules(5)
- proc_pid_autogroup(5)
- keyrings(7)
- sysvipc(7)
- proc_kmsg(5)
- cgroups(7)
- latin6(7)
- proc_pid_uid_map(5)
- unix(7)
- proc_pid_io(5)
- pts(4)
- packet(7)
- ld-linux.so(8)
- tzselect(8)
- iconv(1)
- proc_pid_syscall(5)
- proc_pid_net(5)
- proc_pid_pagemap(5)
- tty(4)
- proc_profile(5)
- standards(7)
- proc_pid_mounts(5)
- filesystems(5)
- iso-8859-15(7)
- locale(5)
- iso_8859_3(7)
- xattr(7)
- iso-8859-2(7)
- proc_uptime(5)
- persistent-keyring(7)
- credentials(7)
- proc_pid_timers(5)
- utmpx(5)
- vcsa(4)
- proc_pid_exe(5)
- proc_net(5)
- proc_timer_stats(5)
- ip(7)
- proc_pid_fd(5)
- ptmx(4)
- user_namespaces(7)
- resolv.conf(5)
- url(7)
- iso_8859_5(7)
- iso_8859-8(7)
- urn(7)
- process-keyring(7)
- proc_pid_auxv(5)
- proc_ksyms(5)
- proc_ide(5)
- veth(4)
- ldd(1)
- proc_swaps(5)
- landlock(7)
- proc_vmstat(5)
- system_data_types(7)
- cp1252(7)
- lirc(4)
- proc_kpageflags(5)
- random(7)
- precedence(7)
- cpuset(7)
- proc_pid_ns(5)
- acct(5)
- latin4(7)
- proc_pid_cgroup(5)
- proc_cpuinfo(5)
- iso_8859-2(7)
- proc_keys(5)
- charsets(7)
- pldd(1)
- proc_pid_stat(5)
- rtnetlink(7)
- netlink(7)
- ram(4)
- mem(4)
- iso-8859-6(7)
- proc_key-users(5)
- iso_8859_15(7)
- fanotify(7)
- proc_sys_net(5)
- sysfs(5)
- math_error(7)
- latin1(7)
- proc_pid_root(5)
- nptl(7)
- proc_cgroups(5)
- proc_iomem(5)
- proc_pid_statm(5)
- sem_overview(7)
- hier(7)
- full(4)
- proc_pid_status(5)
- proc_pid_cwd(5)
- proc_pid_cpuset(5)
- proc_scsi(5)
- uri(7)
- proc_diskstats(5)
- iso_8859_6(7)
- latin2(7)
- latin5(7)
- man-pages(7)
- ld.so(8)
- uts_namespaces(7)
- proc_pid_mountstats(5)
- intro(3)
- proc_pid_seccomp(5)
- proc_pid_wchan(5)
- attributes(7)
- symlink(7)
- mount_namespaces(7)
- charmap(5)
- tis-620(7)
- iso-8859-10(7)
- getent(1)
- proc_buddyinfo(5)
- ttytype(5)
- rtc(4)
- proc_malloc(5)
- suffixes(7)
- sln(8)
- signal(7)
- proc_sys_abi(5)
- signal-safety(7)
- time_namespaces(7)
- proc_pid_comm(5)
- raw(7)
- gai.conf(5)
- proc_crypto(5)
- locale(1)
- iso-8859-3(7)
- motd(5)
- proc_meminfo(5)
- iso-8859-8(7)
- protocols(5)
- proc_pid_map_files(5)
- pthreads(7)
- null(4)
- proc(5)
- zdump(8)
- socket(7)
- proc_sys_kernel(5)
- ddp(7)
- memusagestat(1)
- hd(4)
- iso-8859-14(7)
- shells(5)
- pipe(7)
- glob(7)
- proc_self(5)
- network_namespaces(7)
- utmp(5)
- proc_kcore(5)
- nsswitch.conf(5)
- sd(4)
- iso-8859-5(7)
- iso_8859_16(7)
- man(7)
- iso_8859-6(7)
- dir_colors(5)
- mq_overview(7)
- vsock(7)
- ascii(7)
- thread-keyring(7)
- fs(5)
- proc_pid_attr(5)
- proc_sys_debug(5)
- proc_sys(5)
- proc_pid_cmdline(5)
- pty(7)
- services(5)
- cgroup_namespaces(7)
- securetty(5)
- netdevice(7)
- iso_8859_13(7)
- host.conf(5)
- proc_pid_setgroups(5)
- proc_slabinfo(5)
- sock_diag(7)
- iso_8859-14(7)
- iso-8859-11(7)
- iso_8859_11(7)
- operator(7)
- regex(7)
- wavelan(4)
- proc_sys_fs(5)
- nologin(5)
- proc_pci(5)
- koi8-r(7)
- erofs(5)
- intro(2)
- utf8(7)
- proc_kallsyms(5)
- proc_sysvipc(5)
- queue(7)
- proc_sys_sunrpc(5)
- intro(5)
- latin8(7)
- mtrace(1)
- ipc_namespaces(7)
- dsp56k(4)
- iso_8859_4(7)
- proc_pid_smaps(5)
- proc_cmdline(5)
- rpc(5)
- proc_tty(5)
- proc_version(5)
- smartpqi(4)
- proc_pid_timerslack_ns(5)
- aio(7)
- session-keyring(7)
- resolver(5)
- slabinfo(5)
- wtmp(5)
- iso_8859_9(7)
- proc_locks(5)
- mailaddr(7)
- proc_pid_oom_score(5)
- kmem(4)
- iconvconfig(8)
- iso_8859-7(7)
- glibc(7)
- hostname(7)
- proc_thread-self(5)
- ipv6(7)
- iso_8859_7(7)
- proc_kpagecgroup(5)
- core(5)
- time(7)
- units(7)
- proc_dma(5)
- loop(4)
- address_families(7)
- zero(4)
- intro(4)
- procfs(5)
- iso_8859-4(7)
- vdso(7)
- tmpfs(5)
- iso-8859-16(7)
- iso_8859_10(7)
- user-session-keyring(7)
- libc(7)
- proc_fs(5)
- koi8-u(7)
- latin3(7)
- proc_tid_children(5)
- proc_pid_limits(5)
- proc_pid_coredump_filter(5)
- iso_8859-15(7)
- arp(7)
- urandom(4)
- iso_8859-10(7)
- hpsa(4)
- proc_pid_environ(5)
- boot(7)
- ftm(7)
- ld-linux(8)
- proc_driver(5)
- loop-control(4)
- iso_8859-16(7)
- proc_filesystems(5)
- tzfile(5)
- sprof(1)
- proc_pid_task(5)
- proc_pid_oom_score_adj(5)
- proc_mounts(5)
- iso-8859-4(7)
- iso_8859-1(7)
- utf-8(7)
- iso_8859-13(7)
- intro(6)
- proc_timer_list(5)
- rtld-audit(7)
- iso_8859-3(7)
- group(5)
- sched(7)
- proc_pid_clear_refs(5)
- hosts(5)
- iso_8859-11(7)
- numa(7)
- iso_8859_2(7)
- locale(7)
- iso-8859-1(7)
- fuse(4)
- proc_tid(5)
- proc_execdomains(5)
- proc_pid_mountinfo(5)
- intro(8)
- iso_8859_8(7)
- proc_loadavg(5)
- proc_pid_oom_adj(5)
- re_format(7)
- iso_8859_14(7)
- zic(8)
- bootparam(7)
- inotify(7)
- posixoptions(7)
- proc_partitions(5)
- iso-8859-9(7)
- proc_pid_mem(5)
- networks(5)
- proc_sys_user(5)
- udp(7)
- proc_zoneinfo(5)
- latin10(7)
- proc_pid_fdinfo(5)
- proc_pid_stack(5)
- memusage(1)
- spufs(7)
- pkeys(7)
- path_resolution(7)
- proc_ioports(5)
- intro(1)
- ldconfig(8)
- msr(4)
- svipc(7)
- port(4)
- proc_pid_personality(5)
- cciss(4)
- latin9(7)
- capabilities(7)
- localedef(1)
- vcs(4)
- iso_8859-5(7)
- elf(5)
- proc_sys_proc(5)
- console_codes(4)
- random(4)
- iso-8859-7(7)
- termcap(5)
- cpuid(4)
- environ(7)
- string_copying(7)
- proc_pid_gid_map(5)
- queue(3)
- termio(7)
- user-keyring(7)
- complex(7)
- latin7(7)
- proc_config.gz(5)
- udplite(7)
- kernel_lockdown(7)
- proc_devices(5)
- proc_apm(5)
- iso_8859_1(7)
- proc_pid_numa_maps(5)
apt-get install manpages
Available languages:
en fr sv ja ru ro deManual
pid_namespaces
NOMDESCRIPTION
Le processus dâinitialisation (init) de lâespace de noms
Imbrication des espaces de noms PID
Sémantiques de setns(2) et de unshare(2)
Adoption dâun enfant orphelin
Compatibilité de CLONE_NEWPID avec les autres attributs CLONE_*
/proc et espaces de noms PID
Fichiers /proc
Divers
STANDARDS
EXEMPLES
VOIR AUSSI
TRADUCTION
NOM
pid_namespaces - PrĂ©sentation des espaces de noms dâidentifiants de processus (ou PID) sous Linux
DESCRIPTION
Pour une présentation générale des espaces de noms, consultez namespaces (7).
Les espaces de noms PID isolent les espaces de numĂ©ros dâidentifiants de processus, ce qui signifie que des processus de diffĂ©rents espaces de noms PID peuvent avoir le mĂȘme PID. Les espaces de noms PID permettent aux conteneurs de fournir des possibilitĂ©s telles que la suspension et la reprise de lâensemble des processus dâun conteneur et la migration du conteneur vers un nouvel hĂŽte tout en permettant aux processus du conteneur de conserver leurs PID.
Dans un nouvel espace de noms PID, la numĂ©rotation commence Ă Â 1 comme pour un systĂšme autonome et les appels Ă fork (2), vfork (2) ou clone (2) gĂ©nĂšrent des identifiants de processus uniques dans lâespace de noms PID.
Le noyau doit avoir Ă©tĂ© configurĂ© avec lâoption CONFIG_PID_NS pour permettre lâutilisation des espaces noms PID.
Le processus dâinitialisation (init) de lâespace de noms
Le premier processus créé dans un nouvel espace de noms (câest-Ă -dire le processus créé par clone (2) avec lâattribut CLONE_NEWPID ou le premier processus enfant créé aprĂšs un appel Ă unshare (2) avec lâattribut CLONE_NEWPID ) a pour PID 1. Il est le processus « init » pour lâespace de noms (consultez init (1)). Ce processus devient le parent pour nâimporte quel processus enfant qui devient orphelin parce quâun processus rĂ©sidant dans cet espace de noms PID se termine (voir ci-aprĂšs pour plus de dĂ©tails).
Si le processus « init » dâun espace de noms PID se termine, le noyau tue tous les processus de cet espace de noms au moyen du signal SIGKILL . Ce comportement illustre le fait que le processus « init » est essentiel au bon fonctionnement de lâespace de noms PID. Dans ce cas, une commande fork (2) ultĂ©rieure dans cet espace de noms PID Ă©chouera en renvoyant lâerreur ENOMEM . Il nâest plus possible de crĂ©er des processus dans un espace de noms PID dont le processus « init » est terminĂ©. Cela peut, par exemple, se produire lorsquâun processus utilise un descripteur de fichier ouvert pour un fichier /proc/ pid /ns/pid correspondant Ă un processus dâun espace de noms pour une rĂ©association ( setns (2)) dans cet espace de noms aprĂšs que le processus « init » soit terminĂ©. Un autre scĂ©nario est possible aprĂšs un appel Ă unshare (2) : si le premier enfant créé par un appel Ă fork (2) se termine, alors les appels ultĂ©rieurs Ă fork (2) Ă©choueront en renvoyant lâerreur ENOMEM .
Seuls les signaux pour lesquels le processus « init » a dĂ©fini un gestionnaire de signal peuvent ĂȘtre envoyĂ©s au processus « init » par les autres processus de lâespace de noms PID. Cette rĂšgle sâapplique Ă©galement aux processus disposant de privilĂšges et permet dâĂ©viter quâun processus membre de lâespace de noms PID ne tue accidentellement le processus « init ».
De mĂȘme, un processus dâun espace ancĂȘtre peut â en tenant compte des vĂ©rifications de droits habituelles dĂ©crites dans kill (2) â envoyer des signaux au processus « init » dâun espace de noms enfant, Ă la condition que le processus « init » ait Ă©tabli un gestionnaire pour ce signal. Le champ si_pid de siginfo_t dĂ©crit dans sigaction (2) pour ce gestionnaire vaudra zĂ©ro. SIGKILL et SIGSTOP font figure dâexception : ces signaux seront appliquĂ©s « de force » lorsquâils sont Ă©mis depuis un espace de noms PID ancĂȘtre. Ces signaux ne peuvent pas ĂȘtre interceptĂ©s par le processus « init » et les actions associĂ©es Ă ces processus seront exĂ©cutĂ©es (respectivement, tuer ou suspendre lâexĂ©cution du processus).
Depuis Linux 3.4, lâappel systĂšme reboot (2) dĂ©clenche lâenvoi dâun signal aux processus « init » des espaces de noms. Consultez reboot (2) pour obtenir plus dâinformations.
Imbrication des espaces de noms PID
Les espaces de noms PID peuvent ĂȘtre imbriquĂ©s : tous les espaces de noms PID ont un parent, sauf lâespace de noms PID initial (« root »). Le parent dâun espace de noms PID est lâespace de noms PID du processus qui a créé lâespace de noms Ă lâaide de clone (2) ou unshare (2). Les espaces de noms PID forment donc une arborescence dans laquelle chaque espace de noms peut remonter jusquâĂ lâespace « root ». Depuis Linux 3.7, le noyau limite la profondeur maximale dâimbrication pour les espace de noms PID Ă Â 32.
Un processus est visible de tous les processus de son espace de noms PID, et de tous les processus des espaces de noms PID ancĂȘtres qui le sĂ©parent de lâespace PID « root ». Ici, on entend par « visible » quâun autre processus peut ĂȘtre la cible dâopĂ©rations dâun autre processus utilisant des appels systĂšme qui prĂ©cisent lâID du processus. Inversement, les processus dâun espace de noms PID enfant ne peuvent pas voir les processus de lâespace parent et des espaces de noms ancĂȘtre Ă©loignĂ©s. En rĂ©sumĂ©, un processus peut seulement voir (câest-Ă -dire envoyer des signaux avec kill (2), dĂ©finir des valeurs de courtoisie avec setpriority (2), etc.) les processus de son propre espace de noms PID et des espaces de noms de sa descendance.
Un processus a un identifiant dans chaque niveau de la hiĂ©rarchie des espaces de noms PID dans lequel il est visible, et ce en remontant chaque espace de noms ancĂȘtre jusquâĂ lâespace de noms PID « root ». Les appels systĂšme qui sâexĂ©cutent sur des identifiants de processus sâappliquent Ă lâidentifiant du processus qui est visible dans lâespace de noms PID de lâappelant. Un appel Ă getpid (2) renvoie toujours le PID associĂ© Ă lâespace de noms dans lequel le processus a Ă©tĂ© créé.
Certains processus dâun espace de noms PID peuvent avoir des parents en dehors de cet espace. Par exemple, le parent du processus initial de lâespace de noms ( init (1), processus dont le PID est 1) se trouve forcĂ©ment en dehors de cet espace. De mĂȘme, lâenfant direct dâun processus qui a invoquĂ© setns (2) pour que son enfant rejoigne un espace de noms PID, se trouve dans un espace de noms PID diffĂ©rent de celui de lâappelant Ă setns (2). Les appels Ă getppid (2) pour de tels processus renvoient 0 .
Alors que les processus peuvent descendre librement dans les espaces de noms enfant (par exemple, en utilisant setns (2) avec un descripteur de fichier dâespace de noms PID), ils ne peuvent pas se dĂ©placer dans lâautre direction. Cela veut dire que les processus ne peuvent entrer dans aucun espace de noms ancĂȘtre (parent, grand-parent, etc.). La modification dâespace de noms PID est une opĂ©ration Ă sens unique.
LâopĂ©ration NS_GET_PARENT dâ ioctl (2) peut ĂȘtre utilisĂ©e pour dĂ©couvrir la relation parentale entre les espaces de noms PID. Consultez ioctl_nsfs (2).
Sémantiques de setns(2) et de unshare(2)
Les appels Ă setns (2) qui indiquent un descripteur de fichier dâun espace de noms PID et les appels Ă unshare (2) avec lâattribut CLONE_NEWPID font que les processus enfant qui seront créés par la suite seront placĂ©s dans un espace de noms PID diffĂ©rent de celui de lâappelant. Depuis Linux 4.12, cet espace de noms PID est affichĂ© Ă lâaide du fichier /proc/ pid /ns/pid_for_children , comme dĂ©crit dans namespaces (7). Cependant, ces appels ne changent pas lâespace de noms PID du processus appelant, parce que le faire modifierait la perception par lâappelant de son propre PID (comme indiquĂ© dans getpid ()), cassant de nombreuses applications et bibliothĂšques.
Pour prĂ©senter les choses diffĂ©remment, lâappartenance dâun processus Ă un espace de noms PID est dĂ©terminĂ©e lors de la crĂ©ation du processus et ne peut plus ĂȘtre changĂ©e ensuite. Cela signifie que la relation parent-enfant entre processus reproduit la relation parentale entre des espaces de noms PID : le parent dâun processus est soit dans le mĂȘme espace de noms, soit dans lâespace de noms PID du parent immĂ©diat.
Un processus peut appeler unshare (2) avec lâindicateur CLONE_NEWPID seulement une fois. AprĂšs avoir rĂ©alisĂ© cette opĂ©ration, son lien symbolique /proc/ pid /ns/pid_for_children sera vide jusquâĂ la crĂ©ation du premier enfant dans lâespace de noms.
Adoption dâun enfant orphelin
Quand un processus enfant devient orphelin, il est rĂ©apparentĂ© au processus « init » dans lâespace de noms PID de son parent (sinon un des ancĂȘtres les plus proches du parent employĂ© dans la commande PR_SET_CHILD_SUBREAPER de prctl (2) pour ĂȘtre marquĂ© comme le rĂ©cupĂ©rateur des processus de descendants orphelins). Il est Ă noter quâĂ cause des sĂ©mantiques de setns (2) et unshare (2) dĂ©crites ci-dessus, cela peut ĂȘtre le processus « init » dans lâespace de noms PID qui est le parent de lâespace de noms PID de lâenfant, plutĂŽt que le processus « init » dans le propre espace de noms PID de lâenfant.
Compatibilité de CLONE_NEWPID avec les autres attributs CLONE_*
Dans les versions actuelles de Linux, CLONE_NEWPID ne peut pas ĂȘtre combinĂ© avec CLONE_THREAD . Les threads doivent ĂȘtre dans le mĂȘme espace de noms PID de telle façon que les threads puissent sâenvoyer des signaux les uns aux autres. De la mĂȘme façon, il doit ĂȘtre possible de voir tous les threads dâun processus dans le systĂšme de fichiers proc (5). De plus, si deux threads Ă©taient dans des espaces de noms PID diffĂ©rents, lâID de processus du processus envoyant un signal ne pourrait pas ĂȘtre encodĂ© judicieusement lors de lâenvoi dâun signal (consultez la description du type siginfo_t dans sigaction (2)). Puisque que cela a du sens lorsquâun signal est mis en file dâattente, une file de signaux partagĂ©e par des processus dans plusieurs espaces de noms PID irait Ă lâencontre de cela.
De plus dans les premiĂšres versions de Linux, CLONE_NEWPID nâĂ©tait pas autorisĂ© (Ă©chouant avec lâerreur EINVAL ) en combinaison avec CLONE_SIGHAND (avant Linux 4.3) ainsi que CLONE_VM (avant Linux 3.12). Les modifications qui ont apportĂ© ces restrictions ont Ă©tĂ© aussi portĂ©es sur les prĂ©cĂ©dents noyaux stables.
/proc et espaces de noms PID
Un systĂšme de fichiers /proc ne prĂ©sente (dans les rĂ©pertoires /proc/ pid) que les processus visibles dans lâespace de noms PID du processus qui a effectuĂ© le montage, mĂȘme si le systĂšme de fichiers /proc est vu par des processus appartenant Ă dâautres espaces de noms.
AprĂšs la crĂ©ation dâun nouvel espace de noms PID, un enfant peut avoir intĂ©rĂȘt Ă changer son rĂ©pertoire racine et Ă monter une nouvelle instance procfs sur /proc afin dâassurer que des commandes comme ps (1) fonctionneront correctement. Si un nouvel espace de noms montage est créé simultanĂ©ment en invoquant clone (2) ou unshare (2) avec lâargument CLONE_NEWNS , il nâest alors pas nĂ©cessaire de changer le rĂ©pertoire racine : une nouvelle instance procfs peut ĂȘtre montĂ©e directement dans /proc .
Depuis un interpréteur de commandes, la commande permettant de monter /proc est :
$ mount -t proc proc /proc
Lâappel de readlink (2) appliquĂ© au chemin /proc/self affiche les identifiants des processus de lâappelant dans lâespace de noms PID du montage procfs (câest-Ă -dire lâespace de noms PID du processus qui a montĂ© procfs). Cela peut ĂȘtre utile lorsque quâun processus a besoin de connaĂźtre son PID dans un autre espace de noms.
Fichiers /proc
/proc/sys/kernel/ns_last_pid (depuis Linux 3.3)
Ce fichier (virtualisé par espace de noms PID) affiche le dernier PID qui a été alloué dans cet espace de noms PID. Quand le prochain PID est alloué, le noyau recherchera le plus petit PID non alloué qui est supérieur à cette valeur, et quand ce fichier est lu ultérieurement, il affiche ce PID.
Un processus peut Ă©crire sur ce fichier sâil a la capacitĂ© CAP_SYS_ADMIN ou (depuis Linux 5.9) CAP_CHECKPOINT_RESTORE Ă lâintĂ©rieur de lâespace de noms utilisateur qui possĂšde lâespace de noms PID. Cela rend possible de dĂ©terminer le PID qui est allouĂ© au prochain processus créé dans cet espace de noms PID.
Divers
Lorsquâun identifiant de processus est transmis Ă lâaide dâun socket de domaine UNIX Ă un processus dâun autre espace de noms PID (consultez SCM_CREDENTIALS dans unix (7)), il est transformĂ© pour devenir le PID correspondant dans lâespace de noms PID du processus recevant.
STANDARDS
Linux.
EXEMPLES
Consulter user_namespaces (7).
VOIR AUSSI
clone (2), reboot (2), setns (2), unshare (2), proc (5), capabilities (7), credentials (7), mount_namespaces (7), namespaces (7), user_namespaces (7), switch_root (8)
TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Cédric Boutillier <cedric.boutillier@gmail.com>, Frédéric Hantrais <fhantrais@gmail.com> et Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
Cette traduction est une documentation libre ; veuillez vous reporter Ă la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il nây a aucune RESPONSABILITĂ LĂGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org .