1 / 45

강 명 수 flag12@cherub.sungkyul

파일시스템 관리. 강 명 수 flag12@cherub.sungkyul.edu. 리눅스 시스템 디렉토리 구조. /bin. /sbin. /etc. /dev. /usr. /boot. root (/). 리눅스 디렉토리 구조 (1). 루트 디렉토리 ( / ) 리눅스 파일시스템으로 마운트된 최상위 디렉토리 . /root 와 /( 최상위 디렉토리 ) 는 다르다 . /root 디렉토리는 시스템 관리자의 홈디렉토리 , 루트 (/) 디렉토리는 최상위 디렉토리 . 디렉토리 구조의 시작 .

ethan
Download Presentation

강 명 수 flag12@cherub.sungkyul

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 파일시스템 관리 강 명 수flag12@cherub.sungkyul.edu

  2. 리눅스 시스템 디렉토리 구조 /bin /sbin /etc /dev /usr /boot root (/) 성결대학교 LINUX 수업 강명수

  3. 리눅스 디렉토리 구조(1) • 루트 디렉토리( / ) • 리눅스 파일시스템으로 마운트된 최상위 디렉토리. • /root 와 /(최상위 디렉토리)는 다르다. • /root 디렉토리는 시스템 관리자의 홈디렉토리, 루트(/) 디렉토리는 최상위 디렉토리. • 디렉토리 구조의 시작. • 하부 디렉토리로 /bin, /boot, /dev, /etc, /home, /lib, lost+found, /mnt, /opt, /proc, /root, /usr, /var, /tmp 등. 성결대학교 LINUX 수업 강명수

  4. 리눅스 디렉토리 구조(2) • 부트 디렉토리( /boot ) • 리눅스의 커널이 저장되어 있는 디렉토리. • 각종 리눅스 Boot에 필요한 부팅 지원 파일들이 저장되어 있는 디렉토리. • 커널 및 initrd 이미지, GRUB 부트로더 관련 파일들이 존재하는 디렉토리. • 시스템 부팅에 밀접한 관계. • System.map-2.6.9-1.667, initrd-2.6.9-1.667.img, vmlinuz-2.6.9-1.667 등 그외 파일들.. 성결대학교 LINUX 수업 강명수

  5. 리눅스 디렉토리 구조(3) • 시스템 설정 파일 디렉토리( /etc ) • 리눅스 시스템에서 각종 중요한 설정 파일과 시스템 초기화 파일을 담고 있는 디렉토리. • 시스템 관리자에 의해 관리되는 파일들. • TCP/IP 네트워크 설정 파일, 메일 서버, 웹 서버, FTP 서버, 삼바 서버, DHCP 서버, 시스템 계정 사용자 정보, 패스워드 관리, 시스템의 파일시스템 관리 파일, 여러 가지 시스템 보안에 관련된 파일들. 성결대학교 LINUX 수업 강명수

  6. 리눅스 디렉토리 구조(4) 성결대학교 LINUX 수업 강명수

  7. 리눅스 디렉토리 구조(5) - 그외 shadow, group, inittab, issue, issue.net, motd, profile, shells 등등.. 성결대학교 LINUX 수업 강명수

  8. 리눅스 디렉토리 구조(6) • 기본 실행 파일이 있는 바이너리 디렉토리 ( /bin ) • 리눅스 시스템을 조작할 수 있는 기본적인 명령어 디렉토리. • binaries의 약어이며, 일반 사용자들도 사용할 수 있는 일반적인 명령어. 성결대학교 LINUX 수업 강명수

  9. 리눅스 디렉토리 구조(7) • 디바이스 디렉토리 ( /dev ) • 시스템의 각종 디바이스들에 접근하기 위한 디바이스 드라이버들이 저장되어 있는 디렉토리. • 물리적인 용량은 갖지 않는 가상 디렉토리. • 하드 드라이브, 플로피, CD-ROM 그리고 루프백 장치 등이 존재(리눅스 시스템은 윈도와 달리 각종 디바이스 장치들을 하나의 파일로 취급). 성결대학교 LINUX 수업 강명수

  10. 리눅스 디렉토리 구조(8) • 시스템 정보 디렉토리( /proc ) • 시스템의 각종 프로세서, 프로그램 정보, 하드웨어적인 정보들이 저장. • /dev 디렉토리와 같이 하드디스크에 물리적인 용량을 갖지 않는다. • 실제 하드 디스크에 저장되지 않고 커널에 의해서 메모리에 저장. • 일부 파일 중에 쓰기 가능한 파일이 있는데, 이것은 특정 값을 지정하여 커널 기능을 변경할 수 있는 것이다. 성결대학교 LINUX 수업 강명수

  11. 리눅스 디렉토리 구조(9) 성결대학교 LINUX 수업 강명수

  12. 리눅스 디렉토리 구조(10) • 가변 자료 저장 디렉토리 ( /var ) • 시스템에서 사용되는 동적인 파일들이 저장(로그). • 각종 시스템 로그파일, 사용자 로그인에 대한 보안 기록, 만약 메일 서버를 운영한다면 사용자들에게 전송된 메일들을 임시로 저장. 성결대학교 LINUX 수업 강명수

  13. 리눅스 디렉토리 구조(11) • 사용자 디렉토리( /usr ) • 가장 중요한 디렉토리 중 하나로 사용되며, 공유할 수 있는 디렉토리와 파일들을 저장. • 시스템에 사용되는 각종 응용 프로그램들이 설치되는 디렉토리. • 거의 모든 프로그램과 그에 관련된 명령어 및 라이브러리들이 위치. • X 시스템 관련 파일들과 리눅스 커널 소스, 각종 C 언어 관련 헤더파일 등이 저장. 성결대학교 LINUX 수업 강명수

  14. 리눅스 디렉토리 구조(12) 성결대학교 LINUX 수업 강명수

  15. 리눅스 디렉토리 구조(13) 사용자 계정 디렉토리( /home ) 사용자 계정이 생성되면서 제공되는 홈 디렉토리가 위치하는 디렉토리. 리모트 상에서(telnet, ssh등) 시스템으로 접속을 하는 사용자들을 위한 공간. 시스템 관리에 관련된 바이너리 파일이 있는 디렉토리( /sbin ) 시스템 관리를 위한 다양한 프로그램이 들어 있는 디렉토리. /bin은 가장 기본적인 명령어, /sbin은 시스템 점검 및 복구 명령, 네트워크 인터페이스 설정 명령, 시스템 초기 및 종료 명령, 커널 모듈 등 시스템 관리에 관련된 바이너리 실행 파일들이 저장되어 있는 디렉토리. 성결대학교 LINUX 수업 강명수

  16. 리눅스 디렉토리 구조(14) 파일시스템 복구시 문제 파일이 생성된 곳( /lost+found ) 어떤 파일도 갖지 않고 항상 비어 있는 디렉토리. 파일시스템 점검 유틸리티에 의해서 파일시스템 이상 유무를 체크하여 잘못된 디렉토리나 파일을 복구하지 못하였을 때 이 디렉토리에 저장. 마운트 디렉토리( /media ) 하드디스크 또는 CD-ROM 드라이브나 플로피 디스크를 마운트할 때 이용되는 디렉토리. 일반적으로 /mnt 디렉토리를 사용하지만, 페도라 코어 리눅스에서는 /mnt 대신에 /media 디렉토리를 사용. 임시 디렉토리( /tmp ) 시스템에서 일어나는 작업들에 대해서 임시로 저장되는 디렉토리. 성결대학교 LINUX 수업 강명수

  17. 파일시스템 관리 기본 파일 시스템 개념(1) 가상 파일시스템(VFS:Virtual File system) 파일 구조 파일 종류 구분 파일 링크 혀가권과 소유권 시스템 마운트 파일시스템 자동 마운트(/etc/fstab) 성결대학교 LINUX 수업 강명수

  18. 기본 파일 시스템 개념(1) 성결대학교 LINUX 수업 강명수

  19. 기본 파일 시스템 개념(2) 슈퍼블록(Superblock) 파일시스템의 기본적인 크기나 모양에 대한 정보. 여기의 정보를 기반으로 파일시스템을 활용하고 유지. 블록 그룹에 복사본 유지. 그룹 기술자(Group Descriptor) 해당 그룹 기술자의 대한 정보. 해당 블록 그룹의 블록 비트맵, 아이노드 비트맵, 아이노드 테이블에 개략적인 정보를 유지. 블록 비트맵(Block Bitmap)과 아이노드 비트맵(Inode Bitmap) 각 비트맵은 블록과 아이노드에 일대일 대응된다. 사용 여부를 확인할 수 있는 표시를 한다. 성결대학교 LINUX 수업 강명수

  20. 기본 파일 시스템 개념(3) 아이노드 테이블(Inode Table) 해당 아이노드에 대한 정보 각 아이노드에 대한 아이노드 레코드를 할당, 관리한다. 데이터 블록들(Data Blocks) 아이노드로 구분되어 데이터를 담는 블록들. 성결대학교 LINUX 수업 강명수

  21. 기본 파일 시스템 개념(4) • 아이노드(inode) • 파일은 아이노드라고 불리는 구조에 의해서 표현. • 파일시스템의 가장 기본이 되는 구조. • 각 아이노드는 파일에 대한 정보를 담는다. • 파일형태, 접근권한, 소유자, 타임스탬프, 크기, 데이터블록 포인터 등.. • 사용자가 파일에 대해 입출력(I/O)를 요청하면 커널 코드는 블록 넘버에서 오프셋을 찾아내서 이 숫자를 블록 주소 테이블에서의 인덱스로 사용하고 물리적인 블록을 읽거나 쓴다. 성결대학교 LINUX 수업 강명수

  22. 기본 파일 시스템 개념(5) • 디렉토리 • 디렉토리는 계층구조로 구성. • 디렉토리는 파일과 서브 디렉토리를 포함. • 디렉토리는 특별한 형태의 파일로 표현. • 여러 개의 엔트리를 갖는 파일. • 각 엔트리는 한 개의 아이노드 넘버와 한 개의 파일이름을 갖는다. 성결대학교 LINUX 수업 강명수

  23. 가상 파일시스템(VFS:Virtual File System) • 가상 파일시스템(Virtual File System, VFS) • 다양한 유형의 파일시스템을 지원하기 위한 정보를 커널에 포함. • 유닉스 파일시스템이 제공하는 모든 시스템 콜을 처리하는 커널 소프트웨어 계층.(여러 종류의 파일시스템에 대해 공통 인터페이스를 제공) • VFS는 모든 파일시스템이 필요로 하는 일련의 function을 정의(EXT2의 inode와 superblock은 VFS inode와 VFS superblock으로 대응). • 디스크, 네트워크, 특수 파일시스템 등의 지원. 성결대학교 LINUX 수업 강명수

  24. 파일 구조 • 리눅스의 파일 구조는 파일 유형, 파일 사용 허가 정보와 링크 수, 파일 소유자, 사용자의 소속 그룹명, 파일 크기(바이트 단위), 갱신된 날짜와 시간, 파일명 등으로 구성. • 리눅스에서는 일반 파일 뿐만 아니라 디렉토리 그리고 장치 드라이버인 디바이스도 파일로 간주. 성결대학교 LINUX 수업 강명수

  25. 파일 종류 구분(1) • “ls –l”명령을 실행하였을 때 보여주는 파일 유형 필드에서 보여주는 문자 상태를 통해서 어떤 속성을 갖는 파일인지를 구별할 수 있다. #ls -l • 종류는 일반 파일, 디렉토리, 링크 파일, 디바이스 파일등. 성결대학교 LINUX 수업 강명수

  26. 파일 종류 구분(2) • 일반 파일 • 일반 파일은 파일 유형에 마이너스(-) 기호로 표시. • 리눅스의 일반 파일은 실행 파일, 스크립트, 이미지 파일, 텍스트 파일, 설정 파일, 아카이브 파일, 압축 파일들이 포함. 성결대학교 LINUX 수업 강명수

  27. 파일 종류 구분(3) • 디렉토리 • 디렉토리는 파일 유형에 “d”기호로 표시. 성결대학교 LINUX 수업 강명수

  28. 파일 종류 구분(4) • 링크 파일 • 아래 그림은 /etc/rc.d/rc5.d 에 있는 링크 파일들이다. • 이 링크 파일들은 /etc/init.d 디렉토리에 이쓴 파일로 연결되어 있다. • 링크에는 하드 링크(Hard link)와 심볼릭 링크(Symbolic link)로 나누어진다. 성결대학교 LINUX 수업 강명수

  29. 파일 종류 구분(5) • 디바이스 • 블록 디바이스(Block device)와 문자 디바이스(Character device)로 나누어진다. • 블록 디바이스는 문자 “b”로 시작하고, 문자 디바이스는 문자 “c”로 시작 • 블록 디바이스 : 하드디스크 디바이스나 플로피 디스크 디바이스 • 문자 디바이스 : 터미널 디바이스, 사운드 카드, 마우스, 프린터 • 생성되어 있지 않은 특정 디바이스는 mknod 명령어를 통해서 생성. 성결대학교 LINUX 수업 강명수

  30. 파일 링크(1) • 링크는 하나의 파일 또는 디렉토리를 다른 이름으로 연결하는 것. • 링크하는 목적은 파일명이나 디렉토리명이 길어서 단축시킬 경우. • 파일의 위치가 바이너리 디렉토리가 아닌 비실행 경로에 있을 경우. • 파일의 위치가 깊은 하위 디렉토리에 있을 경우. • 링크는 하드 링크와 심볼릭 링크로 나누어진다. 성결대학교 LINUX 수업 강명수

  31. 파일 링크(2) • 하드 링크(Hard Link) ln [옵션] 링크대상파일명 링크파일명 성결대학교 LINUX 수업 강명수

  32. 파일 링크(3) • 심볼릭 링크(Symbolic Link) ln -s <대상 파일명> <링크 파일명> 성결대학교 LINUX 수업 강명수

  33. 허가권와 소유권(1) • 리눅스 시스템에 있는 모든 파일과 디렉토리에는 소유권과 허가권이 있다. • 허가권 • 파일의 소유권을 가진 자신만이 파일에 액세스할 수 있게 하고, 지정된 그룹 내의 사용자에게도 액세스를 허용할 수 있으며, 리눅스 시스템 사용자 어느 누구에게도 액세스가 가능하도록 할 수 있다. • 소유권 • 파일과 디렉토리를 생성한 사용자의 소유권. • 보통은 계정 이름으로 표기되나 어떤 경우에는 UID 값으로 표기. 성결대학교 LINUX 수업 강명수

  34. 허가권와 소유권(2) • 허가권(퍼미션, Permission) • 허가권에는 파일과 디렉토리에 액세스할 수 있는 사용자(user), 그룹(group), 다른 사용자(other) 등의 세 범주가 있다. • 각 범주에는 읽기(Read), 쓰기(Write), 실행 허가(eXecute)의 세 가지 권한이 부여될 수 있다. • 읽기 허가권( r ) : 파일 내용을 읽을 수 있는지 여부를 결정. • 쓰기 허가권( w ) : 파일을 쓰거나 지울 수 있는지, 덮어쓸 것인가를 결정. • 실행 허가권( x ) : 바이너리 파일들에 대해서 실행 권한을 부여할 것인가를 결정. 성결대학교 LINUX 수업 강명수

  35. 허가권와 소유권(3) • 소유권 변경(chown) chown [옵션] [user][:.][group] file… 성결대학교 LINUX 수업 강명수

  36. 허가권와 소유권(4) • 허가권 변경(chmod) chmod [옵션] mode file… • chmod 명령어는 상대 모드(symbolic method)이나 절대 모드(absolute method)로 사용. • 상징 모드(Symbolic Method) • 각 사용자 범주들은 u, g, o 문자로 권한(허가) 기호를 사용. • 허가권을 부여 또는 추가할 때는 플러스 기호(+), 허가권을 제거하고자 할 때는 마이너스(-), 그대로 둘 때는 “=“기호 사용. 성결대학교 LINUX 수업 강명수

  37. 허가권와 소유권(5) • 절대 모드(Absolute Method) • 3자리의 8진수 숫자 표기법을 사용. • 4, 2, 1 숫자를 다한 값을 100단위는 사용자, 10단위는 그룹, 1단위는 타인 • Ex) 400+200+100 = 700 성결대학교 LINUX 수업 강명수

  38. 허가권와 소유권(6) • 4자리의 퍼미션 구조 • 절대 모드 퍼미션 표기 방식에서 일반적으로 3자리 표기법을 사용하지만 4자리 표기법에 사용되는 값. • sticky bit • 모든 사용자가 쓰고 삭제할 수 있는 디렉토리에 적용. • 파일 삭제는 오직 소유자 자신만이 삭제할 수 있음. • 리눅스의 /tmp 디렉토리가 이 비트로 설정되어 있음. 성결대학교 LINUX 수업 강명수

  39. 허가권와 소유권(7) 성결대학교 LINUX 수업 강명수

  40. 허가권와 소유권(8) • SetGID 와 SetUID • SetGID와 SetUID는 파일을 실행할 때 그 파일의 소유자 또는 그룹의 권한으로 실행되도록 하는 것이다. 성결대학교 LINUX 수업 강명수

  41. 허가권와 소유권(9) 성결대학교 LINUX 수업 강명수

  42. 시스템 마운트 • 플로피 디스크 마운트 • CD-ROM 마운트 성결대학교 LINUX 수업 강명수

  43. 파일시스템 자동 마운트(/etc/fstab) [파일시스템 장치명] [마운트포인트][파일시스템 종류][파일시스템속성][dump설정][체크옵션] 예: /dev/hda2 /home ext3 defaults 1 2 예: LABEL=/boot /boot ext3 defaults 1 2 • [파일시스템 장치명]은 디바이스를 파일로 표현한 것. • [마운트포인트]는 리눅스의 마운트포인트인 레이블명. • [파일시스템 종류] • Ext2, ext3, reiserfs, iso9660, nfs, swap, ufs, vfat, ntfs등 • [파일시스템속성] • Defaults 속성 : rw, nouser, auto, exec, suid • Auto, noauto, exec, noexec, suid, nosuid, user, nouser, ro, rw, usrquota, grpquota • [dump 설정] • 0 : dump로 데이터백업이 되지 않는 파일시스템을 의미함. • 1 : dump로 데이터백업이 가능한 파일시스템을 의미함. • [체크옵션] : fsck, e2fsck • 0 : 부팅시에 파일시스템체크(점검)을 수행하지 않음. • 1 : 루트파일시스템으로서 부팅시에 파일시스템 체크를 수행함. • 2 : 루트파일시스템 이외의 파일시스템으로서 부팅시에 파일시스템 체크를 수행함.(점검순서는 행의 순서대로 점검함) 성결대학교 LINUX 수업 강명수

  44. 디바이스 필드 • 디바이스 필드에 레이블을 사용하기 위한 명령. e2label 디바이스명 새라벨명 Ex) #e2label /dev/hda1 /123 #cat /etc/fstab | grep /123 LABEL=/123 / ext defaults 1 1 성결대학교 LINUX 수업 강명수

  45. Q & A 감 사 합 니 다. 성결대학교 LINUX 수업 강명수

More Related