승상의 코딩 블로그

리눅스 네비게이션 - 파일 시스템 구조 본문

Linux (리눅스)

리눅스 네비게이션 - 파일 시스템 구조

양승상 2022. 12. 19. 22:19
반응형

파일 복사, 삭제, 이동 등을 공부하기 위해서는, 폴더를 이동할 수 있어야 합니다.

폴더 간의 이동뿐 아니라 리눅스를 좀 더 쉽게 사용하기 위해서는 파일 시스템과 파일 계층을 이해하는 것도 좋을 것이라고 생각하여 포스팅하게 되었습니다.

 

리눅스 파일시스템 폴더 구조

OS 는 디스크에 제공된 데이터를 파일 시스템으로 관리하는 기능이 있다.

파일이란 저장하는 문서, 폴더 등을 의미한다고 생각하자.

왜 파일 시스템이 필요한걸까?

데이터는 디스크에 기록될 때, 0과 1을 나열하여 저장한다.

그래서 이를 구분하기 위한 방법이 필요했고, 파일 시스템을 통해 데이터를 '파일' 이라는 단위로 작성하거나 삭제할 수 있도록 했다.

 

리눅스 파일시스템 폴더 구조 일부

리눅스의 파일 시스템은 "/(루트 디렉토리)" 에 모두 담겨져 있다. 

하위폴더는 각각의 용도에 따라 나눠져 있으며, 위의 일부 폴더는 개인적으로 알아둬야한다고 생각한다.

디렉토리 설명
bin 이진 바이너리 파일이 들어있는 디렉토리이다.
우리가 ls, cd 같은 명령어를 사용할 수 있는 것은, bin 디렉토리에 정의되어 있기 때문이다.
home home 디렉토리는 사용자 정보가 들어있다.
각 사용자마다 고유의 디렉토리를 가지고 있다.
이를 통해, user1, user2, user3 의 사용자는 각자의 Desktop, Download 등의 디렉토리를 가지고 컴퓨터를 사용할 수 있다.
root 시스템을 총괄하는 "root"(슈퍼 계정)의 home 디렉토리이다. ("/"(루트) 와는 다른 의미이다)
dev 컴퓨터가 연결된 디바이스 장치에 대한 정보가 들어있는 디렉토리이다.
var 시스템 운영중에 발생한 데이터와 로그가 저장되는 디렉토리이다.

 

/(루트) 디렉토리

위에서 보듯, 리눅스는 /(루트) 디렉토리에 모든 파일이 담겨져 있다.

/(루트) 디렉토리에 시스템의 수많은 정보가 담겨 있기 때문에, /(루트) 에 접근하는 것은 중요하다.

하지만, CLI(Command Line Interface)(ex. Terminal, ...) 을 사용하지 않고(명령어를 통하지 않고), GUI (Graphic User Interface)를 통해 루트 디렉토리에 접근하여 다양한 폴더를 조사하는 데에는 어려움이 많다.

GUI 는 우리가 명령어를 사용하는 부분을 편리하게 제공해주는 것이기 때문에 모든 기능을 제공하지 않는다. 

단적인 예가 바로 /(루트) 디렉토리에 접근하는 것이다.

GUI 를 이용하면, 사이브 바에 존재하는 Home 디렉토리의 상위 폴더로는 갈 수 없다.

일반적으로 GUI 를 통해서는, 위 사진의 사이드바에 보이는 Home 디렉토리 상위폴더로 갈 수 없다.

(물론, "xdg-open /" 명령어를 통해, 상위 디렉토리를 GUI 로 접근할 수 있다.)

 

~(홈) 디렉토리 (현재 로그인한 사용자의 home 디렉토리)

GUI 를 통해, 들어갈 수 있었던 제일 상위가 Home 디렉토리이다.

헷갈릴 수가 있는데, GUI 로 접근했던 Home 디렉토리는 home 디렉토리(루트 디렉토리의 하위 디렉토리)가 아니다.

home 디렉토리에 존재하는 계정의 디렉토리를 의미한다.

즉, 내가 user1 의 계정으로 접근했다면, GUI 로 접근한 Home 디렉토리는 "/(루트) 디렉토리 -> home 디렉토리 -> user1 디렉토리"를 의미한다.

리눅스에서는 현재 계정의 home 디렉토리를 ~ 로 표시한다. ("/(루트) 디렉토리 -> home 디렉토리 -> user1 디렉토리")

반응형
Comments