리눅스

이것이 리눅스다 하드링크,심볼링크

shypang 2019. 2. 19. 22:01

파일유형 

-는 일반파일

d는 디렉토리

l은 링크파일(바로가기)


3개기억

파일허가권 rwx-rwx-rwx


소유자 그룹 기타사용자


chmod 777

chmod 755

chmod 655


모드를 변경 


chown blackbox.blackbox sample.txt

chown blackbox:blackbox sample.txt


권한 변경


ls -l 리스트파일 자세히 보여줌

./test

현재디렉토리에 있는파일을 직접 실행해라


chmod는 아무나 사용가능

chown은 루트만사용한다고 보면됨



일반사용자가 루트사용자 바꿀수없음 



심볼릭링크 사용가능 

chmod o-x test


모드를 바꿔라 o일반사용자 -x실행권한을 test (파일)


test 


소유주와 그룹에서 쓰기권한을 뺀다

chmod ug-w test


 

소유주와사용자에게 읽기쓰기권한을 더한다

chmod ug+rw test



심볼릭링크는 기존꺼자세히 안봐도

확실하게 할수잇음


장단점있음


윈도우 바로가기개념은 심볼릭링크 개념


원본파일이 있다.

inode 파일의 위치 크기 나 정보가잇다


원본파일 이생기면 데이터블록과 inode블록이있다


ls il basefile


basefile의 아이노드를 볼수있음

맨앞에 나오는 숫자가 아이노드


하드링크를 생성하면 하드링크파일만 하나상생되며

같은 inode1을 사용

명령 : # ln 링크대상파일이름 링크파일이름 


심볼릭 링크를 생성하면 새로운 inode2를 만들고,데이터는 원본 파일을

연결하는 효과

명령:# ln -s 링크대상파일이름 링크파일이름




vi basefile


ls -il basefile


ln basefile hardlink

ln -s basefile softlink

ls -il 


cat hardlink


cata softlink


만약 원본파일을 없애면

하드링크파일과 소프트링크파일은 어떻게 될까



원본파일은 상위로 이동하면

mv basefile ../


하드링크는 원본파일의 아이노드를 가리키므로 바로 원본데이터 접근


소프트링크심볼릭링크는원본데이터파일포인터이므로

원본이사라지면그디렉토리안에서찾을수가없기때문



mv ../basefile .


상위디렉토리의 basefile을  현재디렉토리 .으로 옮겨라