UNIXにおいてファイルの所有者や所属グループを変更するには chown 関数を呼び出します.
使い方: chown(ファイルのパス, ユーザID, グループID)
例えば,対象ファイルのパス名を格納する記憶へのポインタを char *p, ユーザIDが uid_t u に,グループIDが gid_t g に格納されているとき chown( p, u, g ) として実行します.
処理が正常に終了した場合,戻り値は0となります.
サンプルプログラム ファイル a の所有者・グループを設定する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #include <stdio.h> #include <sys/types.h> #include <unistd.h> int main() { char p[] = "a"; // uid_t uid = 501; uid_t uid = 503; gid_t gid = 20; if ( chown(p,uid,gid) != 0 ) { fprintf(stderr,"chown failed.\n"); } } |