임베디드/리눅스(Linux)

리눅스 파일시스템

마달랭 2024. 9. 9. 10:53

개요

파일 시스템이란 파일을 관리하는 방법을 뜻한다.

  • 윈도우 파일시스템은 C:\와 같은 드라이브에서 파일 관리가 시작된다
  • 리눅스 파일시스템은 “/” 에서 파일관리가 시작된다. 이를 Root 라고 한다.

 

CLI 창으로 확인하기

터미널을 열어 / 로 이동한 뒤 디렉토리 목록을 확인한다.

 

 

리눅스파일시스템구조

리눅스는 “/”(Root) 를 기준으로 Tree 형태의 파일 시스템을 갖고 있다.

윈도우와의 차이점이다. 윈도우는 드라이브 별로 관리, 리눅스는 ”/”로 전체 관리

모든 디렉토리는 루트로 통한다, 각각의 디렉토리마다 역할이 존재한다.

 

파일 명과 경로

리눅스에서 파일 이름은 해당 파일이 위치한 경로까지 포함한다.

snap 파일의 경로에 대해서 접근하는 다양한 방법이 있다

  • 절대 경로 : /home/ssafy/snap
  • 상대 경로 : ./snap

명령어를 통한 접근 시에는 절대 경로인 /home/ssafy/abc 로 접근하는 것이 일반적이다.

사용자 홈 디렉토리에 대한 별칭을 이용해서 접근할 수도 있다. ( ~/snap )

 

 

상대 경로의 경우 현재 cd가 home에 위치 했을때 ./snap이 작동한다.

 

파일 생성, 삭제

1. touch [파일명]

• 새로운 빈 파일을 생성한다.
• 이미 있는 파일이라면, 변경된 시간을 현재 시간으로 업데이트 한다.
• ex) touch ./bts

2. rm [파일명]

파일을 삭제한다, ex) rm ./bts

주의) 리눅스에서 삭제는 돌이킬 수 없는 결과를 초래할 수 없다. 스냅샷을 활용해 기존 데이터를 보존 하자!

 

디렉토리 생성, 제거,  이동

1. 디렉토리 생성 : mkdir [디렉토리명]

예시 : mkdir a b c : a, b, c 디렉토리가 생성된다.

 

-p 옵션 : 디렉토리 하위메뉴 까지 모두 한꺼번에 생성

예시 : mkdir –p ./aaa/bbb/ccc/ddd

 

mkdir 명령어를 통해 home에 a, b, c에 해당하는 디렉토리를 각각 만들어 주었다.

mkdir -p 명령어를 통해 aaa폴더를 home에 만들어 주었고, aaa 디렉토리 하위에 bbb -> ccc -> ddd 디렉토리를 생성해 주었다.

2. 디렉토리 삭제 : rmdir [디렉토리명]

디렉토리를 삭제한다. 디렉토리 안에 파일이 있으면 삭제가 되지 않는다.

rm –r [디렉토리명] 를 사용하면 디렉토리 내부 파일까지 모두 삭제 가능 << 해당 기능을 잘 이용하자

 

aaa 디렉토리내에는 bbb -> ccc -> ddd 디렉토리가 존재하여 rmdir로는 제거할 수 없다.

rm - r 명령어를 통해 aaa 디렉토리를 성공적으로 제거해 주었다.

3. 파일 이동 : mv [파일명]

이동 : mv [파일] [옮길 곳], 이름변경 : mv [파일] [파일이름]

 

home에 bts 파일을 생성하고 home디렉토리에 존재하는 bts 파일을 a 디렉토리에 이동해 주었다.

4. 파일 복사하기 : cp [파일명] [경로]

파일을 특정 경로로 복사하기, –r 옵션 : 디렉토리 복사하기

 

a폴더에 있던 bts 파일이 home에 복사되었다.

 

728x90