• 카테고리

    질문 & 답변
  • 세부 분야

    시스템

  • 해결 여부

    미해결

하드링크와 소프트링크 설명하시는 그림 예제에서

19.09.15 21:05 작성 조회수 87

2

그림상으로 봤을때, 소프트링크의 inode 가 빨간색 디스크 파일을 가리켜야 하는게 맞지 않을까요?

파란색 파일을 가리키도록 도안이 그려져 있어서 문의드려봅니다.

답변 1

답변을 작성해보세요.

1

제가 그린 대로, 소프트링크의 inode는 별도의 파일로 저장되는 것(파란색)이 맞습니다. 소프트링크는 자신이 가리켜야 할 대상 파일의 경로를 파일 내부에 저장하고 있습니다.

progcoach4u@ubuntu-vm:tmp$ touch origin
progcoach4u@ubuntu-vm:tmp$ ln origin hard
progcoach4u@ubuntu-vm:tmp$ ln -s hard soft
progcoach4u@ubuntu-vm:tmp$ ln -s origin soft2
progcoach4u@ubuntu-vm:tmp$ ls -ali
total 8
395873 drwxr-xr-x  2 progcoach4u progcoach4u 4096  9월 16 16:11 .
394288 drwxr-xr-x 34 progcoach4u progcoach4u 4096  9월 16 16:11 ..
403619 -rw-r--r--  2 progcoach4u progcoach4u    0  9월 16 16:05 hard
403619 -rw-r--r--  2 progcoach4u progcoach4u    0  9월 16 16:05 origin
411449 lrwxrwxrwx  1 progcoach4u progcoach4u    4  9월 16 16:05 soft -> hard
395869 lrwxrwxrwx  1 progcoach4u progcoach4u    6  9월 16 16:11 soft2 -> origin
progcoach4u@ubuntu-vm:tmp$ 

첫번째 컬럼의 inode 값 유심히 보시면 원본과 hardlink 파일은 inode 값이 같고, softlink 파일들의 inode는 각기 다릅니다. 소프트링크의 파일 크기를 보시면 4와 6 입니다. 각각 대상 파일인 "hard"와 "origin"을 파일 내용으로 저장하고 있기 때문입니다.

기술적 의심을 갖는 것이 좀 더 확실한 이해를 돕는 방법인 것 같아요. 좋은 질문 주셨습니다~ :)