unshare

Autres langues

Langue: ja

Version: 2005-03-10 (openSuse - 09/10/07)

Autres sections - même nom

Section: 2 (Appels système)

̾Á°

unshare - ¥×¥í¥»¥¹¼Â¹Ô¥³¥ó¥Æ¥­¥¹¥È¤Î°ìÉô¤òʬΥ¤¹¤ë

½ñ¼°


#include <sched.h>



int unshare(int flags);

ÀâÌÀ

unshare() ¤ò»È¤¦¤È¡¢¥×¥í¥»¥¹¤Ï¾¤Î¥×¥í¥»¥¹¤È¸½ºß¶¦Í­¤·¤Æ¤¤¤ë ¼Â¹Ô¥³¥ó¥Æ¥­¥¹¥È¤Î°ìÉô¤òʬΥ¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£ ¼Â¹Ô¥³¥ó¥Æ¥­¥¹¥È¤Î°ìÉô¡¢¤¿¤È¤¨¤Ð̾Á°¶õ´Ö¤Ê¤É¤Ï¡¢ ¿·¤·¤¤¥×¥í¥»¥¹¤ò fork(2) ¤Þ¤¿¤Ï vfork(2) ¤ò»È¤Ã¤ÆÀ¸À®¤·¤¿¤È¤­¤Ë¡¢°ÅÌۤΤ¦¤Á¤Ë¶¦Í­¤µ¤ì¤ë¡£ °ìÊý¡¢²¾ÁÛ¥á¥â¥ê¤Ê¤É¤Ï¡¢ clone(2) ¤ò»È¤Ã¤Æ¥×¥í¥»¥¹¤òÀ¸À®¤¹¤ë¤È¤­¤Ë¡¢ÌÀ¼¨Åª¤Ë¶¦Í­¤¹¤ë¤³¤È¤òÍ×µá¤Ç¤­¤ë¡£

unshare() ¤Î¼ç¤ÊÍøÍÑË¡¤Ï¡¢¥×¥í¥»¥¹¤¬¿·¤·¤¤¥×¥í¥»¥¹¤òÀ¸À®¤¹¤ë¤³¤È¤Ê¤¯¡¢ ¶¦Í­¼Â¹Ô¥³¥ó¥Æ¥­¥¹¥È¤òÀ©¸æ¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£

flags °ú¤­¿ô¤Ï¥Ó¥Ã¥È¥Þ¥¹¥¯¤Ç¤¢¤ê¡¢ ¼Â¹Ô¥³¥ó¥Æ¥­¥¹¥È¤Î¤É¤ÎÉôʬ¤Î¶¦Í­¤ò²ò½ü¤¹¤ë¤«¤òɽ¤¹¡£ ¤³¤Î°ú¤­¿ô¤Ï¡¢°Ê²¼¤ÎÄê¿ô¤Î 0 ¸Ä°Ê¾å¤Î OR ¤Ç»ØÄꤹ¤ë:

CLONE_FILES
clone(2) CLONE_FILES ¥Õ¥é¥°¤Î¸ú²Ì¤ò¼è¤ê¾Ã¤¹¡£ ¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¥Æ¡¼¥Ö¥ë¤ò¶¦Í­¤µ¤»¤º¡¢ ¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Ï¾¤Î¥×¥í¥»¥¹¤È¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤ò¶¦Í­¤·¤Ê¤¯¤Ê¤ë¡£
CLONE_FS
clone(2) CLONE_FS ¥Õ¥é¥°¤Î¸ú²Ì¤ò¼è¤ê¾Ã¤¹¡£ ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à°À­¤ò¶¦Í­¤µ¤»¤º¡¢ ¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Ï¾¤Î¥×¥í¥»¥¹¤È¥ë¡¼¥È¥Ç¥£¥ì¥¯¥È¥ê¡¦ ¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¡¦umask °À­¤ò¶¦Í­¤·¤Ê¤¯¤Ê¤ë¡£ chroot(2), chdir(2), umask(2) ¤Ë±Æ¶Á¤¹¤ë¡£
CLONE_NEWNS
¤³¤Î¥Õ¥é¥°¤Ï clone(2) CLONE_NEWNS ¥Õ¥é¥°¤ÈƱ¤¸¸ú²Ì¤ò»ý¤Ä¡£ ̾Á°¶õ´Ö¤ò¶¦Í­¤»¤º¡¢¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Ï ¾¤Î¥×¥í¥»¥¹¤È¤Ï¶¦Í­¤·¤Ê¤¤¸ÇÍ­¤Î̾Á°¶õ´Ö¤Î¥³¥Ô¡¼¤ò»ý¤Ä¡£ ¤³¤Î¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È¡¢ CLONE_FS ¤â°ÅÌۤΤ¦¤Á¤Ë»ØÄꤵ¤ì¤ë¡£

flags ¤Ë 0 ¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢ unshare() ¤Ï²¿¤â¹Ô¤ï¤Ê¤¤¤Î¤Ç¡¢ ¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Î¼Â¹Ô¥³¥ó¥Æ¥­¥¹¥È¤Ï¡¢²¿¤âÊѹ¹¤µ¤ì¤Ê¤¤¡£

ÊÖ¤êÃÍ

À®¸ù¤·¤¿¾ì¹ç¤Ï 0 ¤¬ÊÖ¤µ¤ì¤ë¡£ ¼ºÇÔ¤·¤¿¾ì¹ç¤Ï -1 ¤¬ÊÖ¤µ¤ì¤Æ¡¢ errno ¤Ë¤Ï¥¨¥é¡¼¤ò¼¨¤¹Ãͤ¬ÀßÄꤵ¤ì¤ë¡£

¥¨¥é¡¼

EPERM
flags ¤Ë CLONE_NEWNS ¤¬»ØÄꤵ¤ì¤¿¤¬¡¢¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤ËÆø¢ (CAP_SYS_ADMIN ¥±¡¼¥Ñ¥Ó¥ê¥Æ¥£) ¤¬¤Ê¤«¤Ã¤¿¡£
ENOMEM
¸Æ¤Ó½Ð¤·¸µ¤Î¥³¥ó¥Æ¥­¥¹¥È¤Î¤¦¤Á¶¦Í­¤ò²ò½ü¤¹¤ëɬÍפ¬¤¢¤ëÉôʬ¤ò¥³¥Ô¡¼¤¹¤ë¤¿¤á¤Ë¡¢ ½½Ê¬¤Ê¥á¥â¥ê¤¬³ÎÊݤǤ­¤Ê¤«¤Ã¤¿¡£
EINVAL
flags ¤ËÉÔÀµ¤Ê¥Ó¥Ã¥È¤¬»ØÄꤵ¤ì¤¿¡£

¥Ð¡¼¥¸¥ç¥ó

unshare() ¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï Linux ¥«¡¼¥Í¥ë 2.6.16 ¤ÇÄɲ䵤줿¡£

½àµò

unshare() ¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï Linux ¸ÇÍ­¤Ç¤¢¤ë¡£

Ãí°Õ

clone(2) ¤Ç¿·¤·¤¤¥×¥í¥»¥¹¤òÀ¸À®¤·¤¿¤È¤­¤Ë¶¦Í­¤µ¤ì¤ëÁ´¤Æ¤Î¥×¥í¥»¥¹Â°À­¤ò¡¢ unshare() ¤Ë¤è¤Ã¤Æ¶¦Í­¤Î²ò½ü¤¬¤Ç¤­¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£ Æäˡ¢¥«¡¼¥Í¥ë 2.6.16 ¤Ë¤ª¤¤¤Æ¤Ï¡¢ unshare() ¤Ë CLONE_SIGHAND, CLONE_SYSVSEM, CLONE_THREAD, CLONE_VM ¤Î¸ú²Ì¤ò¼è¤ê¾Ã¤¹¤¿¤á¤Î¥Õ¥é¥°¤¬¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£ ¤³¤ì¤é¤Îµ¡Ç½¤Ï¡¢É¬ÍפǤ¢¤ì¤Ð¾­ÍèÄɲ䵤ì¤ë¤«¤â¤·¤ì¤Ê¤¤¡£

´ØÏ¢¹àÌÜ

clone(2), fork(2), vfork(2), Documentation/unshare.txt