CHOWN
Section: ¸®´ª½º ÇÁ·Î±×·¡¸Ó ¸Å´º¾ó
(2)
Updated: 1997³â 5¿ù 18ÀÏ
Index
Return to Main Contents
À̸§
chown, fchown, lchown - ÆÄÀÏ¿¡ ´ëÇÑ ¼ÒÀ¯±ÇÀ» ¹Ù²Û´Ù.
»ç¿ë¹ý
#include <sys/types.h>
#include <unistd.h>
int chown(const char *path, uid_t owner, gid_t group);
int fchown(int fd, uid_t owner, gid_t group);
int lchown(const char *path, uid_t owner, gid_t group);
¼³¸í
path³ª
fd·Î
ÁöÁ¤µÈ ÆÄÀÏÀÇ ¼ÒÀ¯ÀÚ¸¦ ¹Ù²Û´Ù.
½´ÆÛ »ç¿ëÀÚ(root)¸¸ÀÌ ÆÄÀÏÀÇ ¼ÒÀ¯ÀÚ¸¦ ¹Ù²Ü¼ö ÀÖ´Ù. ÆÄÀÏÀÇ ¼ÒÀ¯ÀÚ´Â ÆÄÀÏÀÇ
±×·ìÀ» ±× ¼ÒÀ¯ÀÚ°¡ ¸â¹öÀÎ ¾î¶² ±×·ìÀ¸·Î ¹Ù²Ü¼ö ÀÖ´Ù.
½´ÆÛ »ç¿ëÀÚ´Â ÀÓÀÇ·Î ±×·ìÀ» º¯°æÇÒ ¼ö ÀÖ´Ù.
owner³ª
group°¡
-1·Î ÁöÁ¤µÇ¾ú´Ù¸é, ±× ID´Â ¹Ù²îÁö ¾Ê´Â´Ù.
½ÇÇà ÆÄÀÏÀÇ ¼ÒÀ¯ÀÚ³ª ±×·ìÀÌ ½´ÆÛ »ç¿ëÀÚ(root)°¡ ¾Æ´Ñ »ç¿ëÀÚ¿¡ ÀÇÇØ
º¯°æµÇ¸é, S_ISUID ±×¸®°í S_ISGID ¸ðµå ºñÆ®´Â Áö¿öÁø´Ù(clear). POSIX´Â
·çÆ®(root)°¡
chownÀ»
ÇÒ ¶§ ÀÌ ÀÛ¾÷ÀÌ ½ÇÇà °¡´ÉÇÑ Áö ¿©ºÎ¸¦ ±â¼úÇÏÁö ¾Ê´Â´Ù;
¸®´ª½º¿¡¼´Â ÀÌ ÀÛ¾÷ÀÌ Ä¿³Î ¹öÀü¿¡ ÀÇÁ¸ÇÑ´Ù.
±×·ì¿¡ ÀÇÇØ ½ÇÇàµÇ´Â ÆÄÀÏÀÌ ¾Æ´Ò °æ¿ì¿¡´Â S_ISGID ºñÆ®´Â ±Ç°í Àá±Ý
(mandatory locking)À» °¡¸®Å°¸ç (S_IXGRP bit´Â Áö¿öÁø´Ù),
chown¿¡
ÀÇÇØ Áö¿öÁöÁö ¾Ê´Â´Ù.
¹Ýȯ°ª
¼º°ø½Ã, 0À» ¹ÝȯÇÑ´Ù. ¿¡·¯½Ã, -1ÀÌ ¹ÝȯÇϸç,
errno´Â
Àû´çÇÑ °ªÀ¸·Î ¼³Á¤µÈ´Ù.
¿¡·¯
ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀÇÁ¸ÇÏ¿©, ´Ù¸¥ ¿¡·¯ Äڵ尡 ¹ÝȯµÉ ¼ö ÀÖ´Ù.
chownÀÇ
ÀϹÝÀûÀÎ ¿¡·¯ ¸ñ·ÏÀº ´ÙÀ½°ú °°´Ù:
- EPERM
-
À¯È¿ UID´Â ÆÄÀÏÀÇ ¼ÒÀ¯ÀÚ¿Í ÀÏÄ¡ÇÏÁö ¾ÊÀ¸¸ç 0ÀÌ ¾Æ´Ï´Ù;
¶Ç´Â ¼ÒÀ¯ÀÚ³ª ±×·ìÀÌ Á¤È®È÷ ÁöÁ¤µÇÁö ¾Ê¾Ò´Ù.
- EROFS
-
ÁöÁ¤µÈ ÆÄÀÏÀÌ Àбâ-Àü¿ë ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀÖ´Ù.
- EFAULT
-
path°¡
Á¢±ÙÇÒ¼ö ¾ø´Â ÁÖ¼Ò °ø°£À» °¡¸®Å°°í ÀÖ´Ù.
- ENAMETOOLONG
-
path°¡
³Ê¹« ±æ´Ù.
- ENOENT
-
ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù.
- ENOMEM
-
ÀÌ¿ëÇÒ ¼ö ÀÖ´Â Ä¿³Î ¸Þ¸ð¸®°¡ ÃæºÐÇÏÁö ¾Ê´Ù.
- ENOTDIR
-
°æ·Î¸íÀÇ ¾ÕºÎºÐ(prefix)ÀÌ µð·ºÅ丮°¡ ¾Æ´Ï´Ù.
- EACCES
-
ã±â Çã°¡±ÇÀÌ °æ·Î¸íÀÇ ¾ÕºÎºÐ¿¡¼ °ÅºÎµÇ¾ú´Ù.
- ELOOP
-
³Ê¹« ¸¹Àº ½Éº¼¸¯ ¸µÅ©¸¦
path¿¡¼
¸¸³µ´Ù.
fchownÀÇ
ÀϹÝÀû ¿¡·¯´Â ¾Æ·¡¿Í °°´Ù:
- EBADF
-
±â¼úÀÚ°¡ À¯È¿ÇÏÁö ¾Ê´Ù.
- ENOENT
-
À§¸¦ ÂüÁ¶Çضó.
- EPERM
-
À§¸¦ ÂüÁ¶Çضó.
- EROFS
-
À§¸¦ ÂüÁ¶Çضó.
- EIO
-
ÇÏÀ§ ·¹º§ I/O ¿¡·¯°¡ inode ¼öÁ¤ ½Ã ¹ß»ýÇß´Ù.
ÁÖÀÇ
2.1.81ÀÌÀüÀÇ ¸®´ª½º ¹öÀü¿¡¼
chown´Â
½Éº¼¸¯ ¸µÅ©¸¦ Çã¿ëÇÏÁö ¾Ê´Â´Ù.
¸®´ª½º Ä¿³Î 2.1.81 ÀÌÈÄ¿¡,
chown
½Éº¼¸¯ ¸µÅ©¸¦ Çã¿ëÇϸç, »õ·Î¿î ½Ã½ºÅÛ ÄÝ
lchown´Â
½Éº¼¸¯ ¸µÅ©¸¦ Çã¿ëÇÏÁö ¾Ê´Â´Ù.
¸®´ª½º Ä¿³Î 2.1.86 ÀÌÈÄ¿¡, ÀÌ »õ·Î¿î ½Ã½ºÅÛ ÄÝ(¿¹ÀüÀÇ
chown°ú
°°Àº ÀǹÌÀ» °¡Áö°í ÀÖ´Â)Àº °°Àº ½Ã½ºÅÛ ÄÝ ¼ö¸¦ °¡Áö°í ÀÖÀ¸¸ç,
chown¿¡¼´Â
»õ·Î¿î ½Ã½ºÅÛ ÄÝ ¼ö¸¦ °¡Áö°Ô µÇ¾ú´Ù.
fchownÀÇ
¿øÇüÀº
_BSD_SOURCE°¡
Á¤ÀǵǾî ÀÖÀ» °æ¿ì¿¡¸¸ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.
ȣȯ
chown
½Ã½ºÅÛ ÄÝÀº SVr4, SVID, POSIX, X/OPEN ¿¡¼ È®½ÇÇÏ´Ù. 4.4BSD ¹öÀüÀº ½´ÆÛ
»ç¿ëÀÚ¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù.(Áï, ÀϹÝÀûÀÎ »ç¿ëÀÚ´Â ÆÄÀÏÀ» ¹Ù²Ü ¼ö ¾ø´Ù.)
SVr4 ¹®¼´Â EINVAL, EINTR, ENOLINK ±×¸®°í EMULTIHOP ¹ÝȯÀ» ¹®¼È
ÇßÁö¸¸, ENOMEMÀº ¾Æ´Ï´Ù. POSIX.1¿¡¼´Â ENOMEM ¶Ç´Â ELOOP ¿¡·¯ Á¶°ÇÀ»
¹®¼È ÇÏÁö ¾Ê¾Ò´Ù.
fchown
½Ã½ºÅÛ ÄÝÀº 4.4BSD ±×¸®°í SVr4 ¿¡¼ È®½ÇÇÏ´Ù.
SVr4Àº EINVAL, EIO, EINTR, ±×¸®°í ENOLINK ¿¡·¯ Á¶°ÇÀ»
Ãß°¡ÀûÀ¸·Î ¹®¼È Çß´Ù.
Á¦ÇÑ
chown()ÀÇ ÀǹÌ(semantic)Àº UID ´ëÀÀÀÌ °¡´ÉÇÑ NFS ÆÄÀÏ ½Ã½ºÅÛ¿¡¼´Â
Àû¿ëµÇÁö ¾ÊÀ» ¼öµµ ÀÖ´Ù.
Ãß°¡ÀûÀ¸·Î, ÆÄÀÏ ³»¿ëÀ» Á¢±ÙÇÏ´Â ¸ðµç ½Ã½ºÅÛ ÄÝÀÇ ÀǹÌÀº Àû¿ëµÇÁö
¾ÊÀ» ¼ö ÀÖ´Ù. ¿Ö³ÄÇϸé chown()°¡ ÀÌ¹Ì ¿·ÁÁø ÆÄÀÏ¿¡ Á¢±Ù Ãë¼Ò¸¦
ÀÏÀ¸Å³ ¼ö Àֱ⠶§¹®ÀÌ´Ù.
Ŭ¶óÀ̾ðÆ® ÂÊ Ä³½Ì(caching)Àº ¼ÒÀ¯±ÇÀÌ »ç¿ëÀÚÀÇ Á¢±ÙÀ» Çã¿ëÇϵµ·Ï ¹Ù²ð ¼ö
ÀÖ´Â ½Ã°£°ú ÆÄÀÏÀÌ ´Ù¸¥ Ŭ¶óÀ̾ðÆ® ÂÊ »ç¿ëÀÚ¿¡ ÀÇÇØ Á¢±ÙµÉ ¼ö ÀÖ´Â
½Ã°£ »çÀÌ¿¡ ¿¬±âµÉÁöµµ ¸ð¸¥´Ù.
°ü·Ã Ç׸ñ
chmod(2),
flock(2)
¿ªÀÚ
Á¤°ÈÆ <skyeyes@soback.kornet.net>, 2000³â 5¿ù 26ÀÏ
Index
- À̸§
-
- »ç¿ë¹ý
-
- ¼³¸í
-
- ¹Ýȯ°ª
-
- ¿¡·¯
-
- ÁÖÀÇ
-
- ȣȯ
-
- Á¦ÇÑ
-
- °ü·Ã Ç׸ñ
-
- ¿ªÀÚ
-
This document was created by
man2html,
using the manual pages.
Time: 08:07:01 GMT, March 25, 2004