Manpages

이 름

unlink − 이 름 그 리 고 가 능 하 면 참 조 하 는 파 일 도 지 운 다 .

사 용 법

#include <unistd.h>

int unlink(const char *pathname);

설 명

unlink 는 파 일 시 스 템 에 서 이 름 을 지 운 다 . 만 일 그 이 름 이 파 일 에 대 한 최 근 연 결 이 고 어 떤 프 로 세 스 도 열 려 진 파 일 을 가 지 고 있 지 않 다 면 파 일 은 지 워 지 며 파 일 이 사 용 한 공 간 은 다 시 사 용 가 능 하 게 된 다 .

만 일 이 름 이 파 일 에 대 한 최 근 연 결 이 지 만 어 떤 프 로 세 스 가 여 전 이 열 려 진 파 일 을 가 지 고 있 다 면 파 일 을 참 조 하 는 최 근 파 일 기 술 자 가 닫 혀 질 때 까 지 파 일 은 존 재 한 체 로 남 아 있 게 된 다 .

만 일 이 름 이 상 징 연 결 을 가 리 킨 다 면 연 결 은 제 거 된 다 .

만 일 이 름 이 소 켓 , fifo 또 는 장 치 를 가 리 킨 다 면 이 것 에 대 한 이 름 은 제 거 되 지 만 열 려 진 객 체 를 가 지 고 있 는 프 로 세 스 들 은 그 것 을 계 속 사 용 한 다 .

반 환 값

성 공 시 , 0이 리 턴 된 다 . 에 러 시 , −1이 리 턴 되 며 errno 는 적 당 한 값 으 로 설 정 된 다 .

에 러

EACCES

pathname 을 포 함 하 는 디 렉 토 리 에 대 한 쓰 기 접 근 이 프 로 세 스 의 유 효 uid에 게 허 가 되 지 않 았 거 나 , pathname에 있 는 디 렉 토 리 중 하 나 가 검 색 (실 행 ) 허 가 권 을 허 가 하 지 않 는 다 .

EPERM or EACCES

pathname 을 포 함 하 는 디 렉 토 리 가 sticky-bit (S_ISVTX) 설 정 되 어 있 고 프 로 세 스 의 유 효 uid가 삭 제 할 수 가 있 는 파 일 의 uid나 파 일 을 포 함 하 는 디 렉 토 리 의 uid가 아 니 다 .

EPERM

파 일 pathname 가 디 렉 토 리 이 다 .

EFAULT

pathname 가 접 근 할 수 있 는 주 소 공 간 외 를 가 리 키 고 있 다 .

ENAMETOOLONG

pathname너 무 길 다 .

ENOENT

pathname 에 있 는 디 렉 토 리 요 소 가 존 재 하 지 않 거 나 붙 어 다 니 는 상 징 연 결 이 다 .

ENOTDIR

pathname 에 서 디 렉 토 리 로 써 사 용 된 요 소 가 사 실 은 디 렉 토 리 가 아 니 다 .

EISDIR

pathname 가 디 렉 토 리 를 가 리 킨 다 .

ENOMEM

이 용 할 수 있 는 커 널 메 모 리 가 충 분 하 지 않 다 .

EROFS

pathname 가 읽 기 -전 용 파 일 시 스 템 에 있 는 파 일 을 가 리 킨 다 .

ELOOP

너 무 많 은 상 징 연 결 을 pathname 번 역 시 만 났 다 .

EIO

I/O 에 러 가 발 생 했 다 .

호 환

SVr4, SVID, POSIX, X/OPEN, 4.3BSD. SVr4 는 추 가 적 으 로 EBUSY, EINTR, EMULTIHOP, ETXTBUSY, ENOLINK 에 러 조 건 들 을 문 서 화 했 다 .

버 그

NFS 기 반 에 서 돌 아 가 는 프 로 토 콜 에 서 불 운 한 사 태 는 여 전 히 사 용 되 고 있 는 파 일 들 이 값 자 기 지 워 질 수 있 다 는 점 이 다 .

관 련 항 목

link(2), rename(2), open(2), rmdir(2), mknod(2), mkfifo(3), remove(3), rm(1)

역 자

정 강 훈 <skyeyes [AT] soback.net>, 2000년 8월 5일