3omh4n
3omh4
3omh4n
  • 분류 전체보기 (65)
    • wargame - system (0)
      • DreamHack (9)
      • FTZ (5)
      • LoB (4)
      • pwnable.kr (1)
    • wargame - reversing (0)
      • DreamHack (5)
    • wargame - web (6)
      • webhacking.kr (3)
      • DreamHack (3)
      • HackCTF (0)
    • CS (21)
      • system (19)
      • reversing (0)
      • Linux (2)
    • python (5)
      • Flask (5)
    • C++ (3)
    • 개인기록 (2)
    • 이거저거 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

최근 댓글

최근 글

태그

  • webhacking
  • C++
  • langage
  • systemhacking
  • LOB
  • python
  • hacking
  • flask
  • ftz
  • Dreamhack
  • Devtools
  • RELRO
  • ROP
  • System
  • Programming
  • error
  • hackerschool
  • pwntools
  • BOF
  • Reversing

티스토리

전체 방문자
오늘
어제
3omh4n

3omh4

[Linux] 심볼릭 링크 & 하드 링크 (symbolic & hard)
CS/Linux

[Linux] 심볼릭 링크 & 하드 링크 (symbolic & hard)

2022. 5. 9. 20:18

윈도우의 바로가기 같은 개념으로, 리눅스에 링크 개념이 있다. 링크에는 하드 링크(hard link)와 심볼릭 링크(symbolic link)가 있다.

심볼릭 링크 (symbolic link)

데이터가 있는 파일은 하나뿐이고, 그 원본 파일을 가리키는 링크만을 가지는 파일을 만드는 것이다.

원본 파일을 삭제하면 역할을 수행할수는 없지만, 여전히 같은 경로를 가리키면서 남아있다. 따라서 전혀 다른 파일이어도 원본 파일과 이름이 같으면 계속 사용할 수 있다. 이 점이 레이스컨디션 공격으로 이어질 수 있다.

심볼릭 링크 생성 방법

ln -s [원본 파일] [링크 파일 이름]

심볼릭 링크의 내부 작동 방식 - 새로운 inode 생성

원본파일과 링크 파일의 inode가 다른 것을 확인할 수 있다. 즉, 아래의 그림처럼 동작한다.

하드 링크(hard link)

똑같이 복사된 파일을 만드는 것으로 하드링크 파일을 수정하면 원래 파일도 수정된다. 그 이유는 i-node 번호만 복사했기 때문이다. 진짜로 복사했을 때와는 달리 파일 시스템 내의 원본 데이터 파일은 1개뿐이다. 즉, 원본 파일에 대한 포인터 느낌으로 보면 될 것 같다.

하드 링크 생성 방법

ln [원본 파일] [링크 파일]

하드 링크 내부 작동 방식 - 동일한 i node 가리킴

이는 아래의 그림과 같이 동작한다.

참고

https://koromoon.blogspot.com/2018/05/inode-symbolic-link-hard-link.html

https://6kkki.tistory.com/10

'CS > Linux' 카테고리의 다른 글

[Linux] 데몬(Daemon)이란?  (1) 2022.05.07
    'CS/Linux' 카테고리의 다른 글
    • [Linux] 데몬(Daemon)이란?
    3omh4n
    3omh4n

    티스토리툴바