Submitted by: Akira Ikeuchi <a_ikeuchi@mic.mitsumi.co.jp> Reviewed by: Watanabe Kazuhiro <CQG00620@nifty.ne.jp>
227 lines
7.2 KiB
Groff
227 lines
7.2 KiB
Groff
.\" Copyright (c) 1980, 1991, 1993
|
|
.\" The Regents of the University of California. All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
.\" must display the following acknowledgement:
|
|
.\" This product includes software developed by the University of
|
|
.\" California, Berkeley and its contributors.
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" @(#)chmod.2 8.1 (Berkeley) 6/4/93
|
|
.\" %FreeBSD: src/lib/libc/sys/chmod.2,v 1.31 2004/07/02 23:52:13 ru Exp %
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.Dd June 4, 1993
|
|
.Dt CHMOD 2
|
|
.Os
|
|
.Sh ̾¾Î
|
|
.Nm chmod ,
|
|
.Nm fchmod ,
|
|
.Nm lchmod
|
|
.Nd ¥Õ¥¡¥¤¥ë¤Î¥â¡¼¥É¤òÊѹ¹¤¹¤ë
|
|
.Sh ¥é¥¤¥Ö¥é¥ê
|
|
.Lb libc
|
|
.Sh ½ñ¼°
|
|
.In sys/stat.h
|
|
.Ft int
|
|
.Fn chmod "const char *path" "mode_t mode"
|
|
.Ft int
|
|
.Fn fchmod "int fd" "mode_t mode"
|
|
.Ft int
|
|
.Fn lchmod "const char *path" "mode_t mode"
|
|
.Sh ²òÀâ
|
|
.Fa path
|
|
¤Ç»ØÄꤵ¤ì¤ë¤«¡¢¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ëµ½Ò»Ò
|
|
.Fa fd
|
|
¤Ç»²¾È¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î
|
|
¥Õ¥¡¥¤¥ëµö²Ä¥Ó¥Ã¥È¤ò
|
|
.Fa mode
|
|
¤ËÊѹ¹¤·¤Þ¤¹¡£
|
|
.Fn chmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¡¢¥×¥í¥»¥¹½êͼÔ
|
|
(¥æ¡¼¥¶) ¤¬
|
|
.Fa path
|
|
(¤Þ¤¿¤Ï
|
|
.Fa fd )
|
|
¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò½êͤ¹¤ë¤«¡¢¤Þ¤¿¤Ï¥¹¡¼¥Ñ¥æ¡¼¥¶¤Ç
|
|
¤¢¤ë¤«¤Î¤É¤Á¤é¤«¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£
|
|
.Fn chmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¡¢¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤ò¤¿¤É¤ê¡¢
|
|
¥ê¥ó¥¯¼«ÂΤǤϤʤ¯¥ê¥ó¥¯¤Î¥¿¡¼¥²¥Ã¥È¤ËºîÍѤ·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn lchmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï
|
|
.Fn chmod
|
|
¤ËÎà»÷¤·¤Æ¤¤¤Þ¤¹¤¬¡¢¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤ò¤¿¤É¤ê¤Þ¤»¤ó¡£
|
|
.Pp
|
|
¥â¡¼¥É¤Ï
|
|
.In sys/stat.h
|
|
¤ÇÄêµÁ¤µ¤ì¤¿µö²Ä¥Ó¥Ã¥È¥Þ¥¹¥¯¤ÎÏÀÍýÏÂ
|
|
.Pf ( Em or )
|
|
¤«¤éºîÀ®¤µ¤ì¤Þ¤¹:
|
|
.Pp
|
|
.Bd -literal -offset indent -compact
|
|
#define S_IRWXU 0000700 /* ½êͼÔÍѤΠRWX ¥Þ¥¹¥¯ */
|
|
#define S_IRUSR 0000400 /* ½êͼÔÍѤΠR */
|
|
#define S_IWUSR 0000200 /* ½êͼÔÍѤΠW */
|
|
#define S_IXUSR 0000100 /* ½êͼÔÍѤΠX */
|
|
|
|
#define S_IRWXG 0000070 /* ¥°¥ë¡¼¥×ÍѤΠRWX ¥Þ¥¹¥¯ */
|
|
#define S_IRGRP 0000040 /* ¥°¥ë¡¼¥×ÍѤΠR */
|
|
#define S_IWGRP 0000020 /* ¥°¥ë¡¼¥×ÍѤΠW */
|
|
#define S_IXGRP 0000010 /* ¥°¥ë¡¼¥×ÍѤΠX */
|
|
|
|
#define S_IRWXO 0000007 /* ¤½¤Î¾ÍѤΠRWX ¥Þ¥¹¥¯ */
|
|
#define S_IROTH 0000004 /* ¤½¤Î¾ÍѤΠR */
|
|
#define S_IWOTH 0000002 /* ¤½¤Î¾ÍѤΠW */
|
|
#define S_IXOTH 0000001 /* ¤½¤Î¾ÍѤΠX */
|
|
|
|
#define S_ISUID 0004000 /* ¼Â¹Ô»þ¤Ë¥æ¡¼¥¶ ID ¤òÀßÄê */
|
|
#define S_ISGID 0002000 /* ¼Â¹Ô»þ¤Ë¥°¥ë¡¼¥× ID ¤òÀßÄê */
|
|
#define S_ISVTX 0001000 /* ¥¹¥Æ¥£¥Ã¥¥Ó¥Ã¥È */
|
|
#ifndef _POSIX_SOURCE
|
|
#define S_ISTXT 0001000
|
|
#endif
|
|
.Ed
|
|
.Pp
|
|
.Fx
|
|
VM ¥·¥¹¥Æ¥à¤Ï¡¢¼Â¹Ô²Äǽ¥â¥¸¥å¡¼¥ë¤Ë¤Ä¤¤¤Æ¥¹¥Æ¥£¥Ã¥¥Ó¥Ã¥È
|
|
.Pq Dv ISVTX
|
|
¤ò´°Á´¤Ë̵»ë¤·¤Þ¤¹¡£
|
|
UFS ¤ò¥Ù¡¼¥¹¤È¤·¤¿¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à (FFS, LFS) ¤Ç¤Ï¡¢
|
|
¥¹¥Æ¥£¥Ã¥¥Ó¥Ã¥È¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤À¤±ÀßÄê¤Ç¤¤Þ¤¹¡£
|
|
.Pp
|
|
.Dv ISVTX
|
|
(`¥¹¥Æ¥£¥Ã¥¥Ó¥Ã¥È') ¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¡¢
|
|
ÆÃ¸¢¤Î¤Ê¤¤¥æ¡¼¥¶¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¤¢¤ë¾¥æ¡¼¥¶¤Î¥Õ¥¡¥¤¥ë¤Îºï½ü¡¢
|
|
̾Á°¤ÎÊѹ¹¤¬¤Ç¤¤Þ¤»¤ó¡£
|
|
¤É¤Î¥æ¡¼¥¶¤Ç¤â¡¢¤½¤Î¥æ¡¼¥¶¤¬½êͤ¹¤ë¤«Å¬Àڤʵö²Ä¤Î¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ä¤¤¤Æ
|
|
¥¹¥Æ¥£¥Ã¥¥Ó¥Ã¥È¤òÀßÄê¤Ç¤¤Þ¤¹¡£
|
|
¥¹¥Æ¥£¥Ã¥¥Ó¥Ã¥È¤ÎÀ¼Á¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢
|
|
.Xr sticky 8
|
|
¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
|
|
.Pp
|
|
¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ë ISUID (¥æ¡¼¥¶ ID ÀßÄê¥Ó¥Ã¥È) ¤¬ÀßÄꤵ¤ì¤Æ¤ª¤ê¡¢
|
|
¤«¤Ä¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò¥Þ¥¦¥ó¥È¤¹¤ëºÝ¤Ë MNT_SUIDDIR ¥ª¥×¥·¥ç¥ó¤¬
|
|
»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢
|
|
¤³¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤ËºîÀ®¤µ¤ì¤ë¿·¤·¤¤¥Õ¥¡¥¤¥ë¤È¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Î½êͼԤϡ¢
|
|
¥Ç¥£¥ì¥¯¥È¥ê¤Î½êͼԤËÀßÄꤵ¤ì¤Þ¤¹¡£
|
|
¤³¤Îµ¡Ç½¤¬Í¸ú¤Ç¤¢¤ë¤È¤¡¢¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤Ï¿Æ¤«¤é
|
|
ISUID ¥Ó¥Ã¥È¤ò·Ñ¾µ¤·¤Þ¤¹¡£
|
|
¼Â¹Ô¥Ó¥Ã¥È¤Ï¥Õ¥¡¥¤¥ë¤«¤é¼è¤ê½ü¤«¤ì¡¢¥Õ¥¡¥¤¥ë¤Ï root ¤Î½êͤȤϤʤê¤Þ¤»¤ó¡£
|
|
¤³¤Îµ¡Ç½¤Ï¡¢¥Õ¥¡¥¤¥ë¤Ø¤Î½ñ¹þ¤ß¤¬¥æ¡¼¥¶¤Ëµö²Ä¤µ¤ì¤ë¾ò·ï¤òÊѹ¹¤·¤Þ¤»¤ó¡£
|
|
¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤¿¸å¤ÎºÇ½ªÅª¤Ê½êͼԤηèÄê¤Ë±Æ¶Á¤¹¤ë¤Î¤ß¤Ç¤¹¡£
|
|
¥°¥ë¡¼¥×¤Ï·Ñ¾µ¤µ¤ì¤Þ¤»¤ó¡£
|
|
.Pp
|
|
¤³¤Îµ¡Ç½¤Ï¡¢ftp¡¢SAMBA ¤Þ¤¿¤Ï netatalk ·Ðͳ¤Î PC ¥æ¡¼¥¶¤Ø¤Î
|
|
¥Õ¥¡¥¤¥ë¥µ¡¼¥Ó¥¹¤Ç»ÈÍѤµ¤ì¤ë¤è¤¦À߷פµ¤ì¤Æ¤¤¤Þ¤¹¡£
|
|
¤³¤ì¤Ï¥·¥§¥ë¥æ¡¼¥¶¤Ë¥»¥¥å¥ê¥Æ¥£¥Û¡¼¥ë¤òÄ󶡤¹¤ë¤Î¤Ç¡¢
|
|
ÆÃ¤Ë¡¢¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï»ÈÍѤ·¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
|
|
¤³¤Î¥ª¥×¥·¥ç¥ó¤¬µ¡Ç½¤¹¤ë¤¿¤á¤Ë¤Ï¡¢
|
|
¥«¡¼¥Í¥ëÆâ¤Ë SUIDDIR ¥ª¥×¥·¥ç¥ó¤¬É¬ÍפǤ¹¡£
|
|
UFS ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤À¤±¤¬¤³¤Î¥ª¥×¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£
|
|
suiddir ¥Þ¥¦¥ó¥È¥ª¥×¥·¥ç¥ó¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢
|
|
.Xr mount 8
|
|
¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
|
|
.Pp
|
|
¥¹¡¼¥Ñ¥æ¡¼¥¶°Ê³°¤Î¥æ¡¼¥¶¤Ë¤è¤ë¡¢
|
|
¥Õ¥¡¥¤¥ë¤Î½ñ¹þ¤ß¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë¤Î½êͼԤÎÊѹ¹¤Ë¤è¤Ã¤Æ¥æ¡¼¥¶ ID ÀßÄê¥Ó¥Ã¥È¤È
|
|
¥°¥ë¡¼¥× ID ÀßÄê¥Ó¥Ã¥È¤Ï¥ª¥Õ¤ËÀÚ¤êÂØ¤¨¤é¤ì¤Þ¤¹¡£
|
|
¸ß´¹À¤Ïµ¾À·¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢
|
|
¥æ¡¼¥¶ ID ÀßÄê (¥°¥ë¡¼¥× ID ÀßÄê) ¥Ó¥Ã¥È¤ò»Ä¤·¤¿¤Þ¤Þ
|
|
¥Õ¥¡¥¤¥ë¤¬Êѹ¹¤µ¤ì¤ë¤Î¤òËɤ°¤³¤È¤Ç¡¢
|
|
¥·¥¹¥Æ¥à¤Ï¤¤¤¯¤é¤«°ÂÁ´¤Ë¤Ê¤ê¤Þ¤¹¡£
|
|
.Sh Ìá¤êÃÍ
|
|
.Rv -std
|
|
.Sh ¥¨¥é¡¼
|
|
.Fn chmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¡¢¼¡¤Î¾ì¹ç¤Ë½èÍý¤Ë¼ºÇÔ¤·¥Õ¥¡¥¤¥ë¥â¡¼¥É¤ÏÊѹ¹¤µ¤ì¤Þ¤»¤ó:
|
|
.Bl -tag -width Er
|
|
.It Bq Er ENOTDIR
|
|
¥Ñ¥¹¤Î¹½À®Í×ÁÇÃæ¤Ë¥Ç¥£¥ì¥¯¥È¥ê°Ê³°¤Î¤â¤Î¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
|
|
.It Bq Er ENAMETOOLONG
|
|
¥Ñ¥¹Ì¾¤Î¹½À®Í×ÁǤ¬ 255 ʸ»ú¤ò±Û¤¨¤Æ¤¤¤ë¤«¡¢
|
|
¤Þ¤¿¤Ï¥Ñ¥¹Ì¾Á´ÂΤ¬ 1023 ʸ»ú¤ò±Û¤¨¤Æ¤¤¤Þ¤¹¡£
|
|
.It Bq Er ENOENT
|
|
»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤»¤ó¡£
|
|
.It Bq Er EACCES
|
|
»ØÄꤵ¤ì¤¿¥Ñ¥¹¤Ë¤Ï¡¢¸¡º÷¤¬µö²Ä¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ç¥£¥ì¥¯¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
|
|
.It Bq Er ELOOP
|
|
¥Ñ¥¹Ì¾¤òÊÑ´¹¤¹¤ë¤È¤¤Ë¸¡½Ð¤µ¤ì¤¿¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤¬Â¿¤¹¤®¤Þ¤¹¡£
|
|
.It Bq Er EPERM
|
|
¼Â¸ú¥æ¡¼¥¶ ID ¤¬¥Õ¥¡¥¤¥ë¤Î½êͼԤȰìÃפ»¤º¡¢
|
|
¼Â¸ú¥æ¡¼¥¶ ID ¤¬¥¹¡¼¥Ñ¥æ¡¼¥¶¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
|
|
.It Bq Er EROFS
|
|
»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ÏÆÉ¼è¤êÀìÍÑ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¾å¤Ë¤¢¤ê¤Þ¤¹¡£
|
|
.It Bq Er EFAULT
|
|
.Fa path
|
|
°ú¿ô¤¬¡¢¥×¥í¥»¥¹¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥¢¥É¥ì¥¹¶õ´Ö¤ÎÈϰϳ°¤ò»Ø¤·¤Æ¤¤¤Þ¤¹¡£
|
|
.It Bq Er EIO
|
|
¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ËÆÉ¤ß½ñ¤¤·¤Æ¤¤¤ë´Ö¤ËÆþ½ÐÎÏ¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£
|
|
.It Bq Er EFTYPE
|
|
¼Â¹Ô²Äǽ¥â¥¸¥å¡¼¥ë¾å¤Ç¥¹¥Æ¥£¥Ã¥¥Ó¥Ã¥È¤òÀßÄꤷ¤è¤¦¤È¤·¤Þ¤·¤¿¡£
|
|
.El
|
|
.Pp
|
|
.Fn fchmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¡¢¼¡¤Î¾ì¹ç¤Ë½èÍý¤ò¼ºÇÔ¤·¤Þ¤¹:
|
|
.Bl -tag -width Er
|
|
.It Bq Er EBADF
|
|
µ½Ò»Ò¤¬Í¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
|
|
.It Bq Er EINVAL
|
|
.Fa fd
|
|
°ú¿ô¤¬¥Õ¥¡¥¤¥ë¤Ç¤Ï¤Ê¤¯¥½¥±¥Ã¥È¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£
|
|
.It Bq Er EROFS
|
|
¥Õ¥¡¥¤¥ë¤¬ÆÉ¼è¤êÀìÍѤΥե¡¥¤¥ë¥·¥¹¥Æ¥à¾å¤ËÃÖ¤«¤ì¤Æ¤¤¤Þ¤¹¡£
|
|
.It Bq Er EIO
|
|
¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ËÆÉ¤ß½ñ¤¤·¤Æ¤¤¤ë´Ö¤ËÆþ½ÐÎÏ¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£
|
|
.El
|
|
.Sh ´ØÏ¢¹àÌÜ
|
|
.Xr chmod 1 ,
|
|
.Xr chown 2 ,
|
|
.Xr open 2 ,
|
|
.Xr stat 2 ,
|
|
.Xr sticky 8
|
|
.Sh µ¬³Ê
|
|
.Fn chmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï
|
|
.Er EFTYPE
|
|
¤¬ÊÖ¤µ¤ì¤ë¤³¤È¤È
|
|
.Dv S_ISTXT
|
|
¤Î»ÈÍÑË¡¤ò½ü¤±¤Ð
|
|
.St -p1003.1-90
|
|
¤ËŬ¹ç¤·¤Æ¤¤¤Þ¤¹¡£
|
|
.Sh Îò»Ë
|
|
.Fn chmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï
|
|
.At v7
|
|
¤ÇÅо줷¤Þ¤·¤¿¡£
|
|
.Fn fchmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï
|
|
.Bx 4.2
|
|
¤ÇÅо줷¤Þ¤·¤¿¡£
|
|
.Fn lchmod
|
|
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï
|
|
.Fx 3.0
|
|
¤ÇÅо줷¤Þ¤·¤¿¡£
|