들어가기 앞서, NAS에 대해 간략히 소개하고 진행하는 구조입니다.
바로, 명령어를 보시려면 3번 메뉴로 가시면 됩니다.
1. NAS란? |
NAS는 "네트워크 연결 스토리지(
Network Attached Storage
)"의 단어들을 조합하여 하나의 약어로 명명됩니다.
NAS는 파일을 저장하고 편리하게 이동하기 위해 만들어진 장치입니다.
한 장소에 NAS 하드웨어 장치를 두고 네트워크 연결을 통해 언제 어디서나 원하는 파일에 접근하거나 공유할 수 있도록 만들어졌습니다. ( 네트워크 서비스와 하드웨어 장치 전체 범주를 두고 NAS라고한다.)
여담으로,
NAS를 언급하면 Synology(시놀로지)라고 많이 언급하는데, 이는 한국에서 NAS를 제작하는 회사 이름입니다. 그래서 통상 시놀로지라고도 부릅니다.
2. NAS를 이용한 개인 클라우드 사용 가능 |
흔히 우리가 아는 구글드라이브, 네이버 클라우드, 원드라이브 등등 여러가지 들어 봤을 것이다.
NAS를 이용한 다면 개인 소장 관리가 가능한 클라우드를 구성할 수 있다. (NAS + HDD = 개인 클라우드 저장 공간)
NAS는 미니컴퓨터이며,
- 마더보드
- CPU
- 램
- 디스크 베이
- OS
- 다양한 I/O 장치
로 구성되어있다.
개인 클라우드를 사용함에 있어 일반적으로 단점이 클 것이다.
왜냐하면, 환경 구축 비용적 측면과 보안에 있어 제작자는 핸들링 할 수 있는 기술을 가지고 있어야 하기때문이다.
그래서 일반적으로 사람들은 여러 플랫폼에서 제공되는 클라우드 서비스를 이용하는 것이다.
3. NAS를 연결하기 위한 명령어 |
- 일시적인 연결 - mount
로그인할 때마다 마운트 명령어을 통해 연결해야한다. - 영구적인 연결 - fstab 편집
내부 옵션을 통해 부팅시 자동 마운트를 가능하게 할 수 있다. - 접근순서 - (순서대로 따라 해보시고 관련된 명령어 옵션은 다음 메뉴에서 설명)
- 마운트 패키지 설치(기본적으로 설치 되어있지만 없으면 설치 하시기 바랍니다.)
- $ sudo apt install cifs-utils
- NAS와 연결(마운트)할 디렉토리 생성
- $ sudo mkdir '마운트할 디렉토리명'
- (주의)디렉토리를 구성할 때 원하는 곳에다가 만들되, root 권한이 있는 곳이면 나중에 소유자를 변경해야 접근할 수 있다.
- 일시적인 연결방법 - mount
- $ sudo mount -t cifs //IP/디렉토리명 /마운트할 디렉토리명 -o rw,user,auto,file_mode=0600,dir_mode=0700,uid='USERID',gid=root,username='ID', password='비번', rw,vers=1.0 또는 vers=2.0
- //IP/디렉토리명: 원격지 디렉토리명
- /마운트할 디렉토리명: 로컬에 연결할 디렉토리명
- 영구적인 연결방법 - fstab 편집
- $ sudo vim(편집 명령어 아무거나) /etc/fstab
- NAS 연결 정보 입력 - "-"는 TAB
- 아래는 보통 접속하는 방법을 제시함
- //IP/디렉토리명-/마운트할 디렉토리명-cifs-rw,auto,file_mode=0600,dir_mode=0700,uid='USERID',gid='USERID',username='ID',password='비번',vers1=1.0 또는 vers=2.0-0-0
- 저장 후 재부팅하면 /etc/fstab을 마운트한다.
저정하지 않고 확인하는 방법은 "mount -a"를 통해 /etc/fstab을 마운트하고 "df"를 통해 마운트 되었는지 확인.
3. fstab 편집 참고 |
fstab 내부에 아래와 같이 6개의 명칭들이 있고 차례대로 입력을 해야한다.
<file system> <mount point> <type> <options> <dump> <pass>
- file system (파일시스템장치명)
- 사용할 disk uuid
- 원격 IP/디렉토리명
- mount point
- 물리적인 디스크를 디렉토리에 연결하기 위한 설정
- 원격은 외부 물리 디스크를 말한다
- type (파일시스템 종류)
- 파티션 생성시 정한 파일시스템 종류 입력
- options
- 파일 시스템에 맞게 옵션 설정
- (중요)아이디와 비번은 별도의 증명파일로 대체 가능
- 사용자 홈, 관리자 홈 등 어디엔가 파일생성
- $ vim credentails(파일명은 아무거나 해도 됨)
- username=ID
- passoword=비빌번호
- 저장
- fstab에서 username,password 대신에 credentials=/만든경로/credentials 입력하면 됩니다.
- 사용하는 이유: 커맨드라인에 직접적으로 표시되는게 아니라 변수형태로 입력되기에 유출 가능성이 줄어듭니다.
- dump
- 백업 설정 (0: 지원안함, 1: 지원)
- pass (file seqeunce check option)
- fsck에 의한 무결성 검사 우선순위
- 0,1,2 3가지 옵션
- 0: 무결성 검사 하지 않음, 1: 우선순위 1위(대부분 root가 설정됨), 2: 우선순위 2위
- //IP/디렉토리명-/마운트할 디렉토리명-cifs-rw,user,auto,file_mode=0600,dir_mode=0700,uid='USERID',gid=root,username='ID',password='비번'-0-0
5. mount 옵션 |
빨간글씨: 자주 사용하는 명령어
- 주요옵션
mount [OPTIONS] | |
-a | fstab에 설정된 파일 시스템을 마운트 |
-f | 마운트 가능여부 |
-n | /etc/mtab 쓰기권한 없음 |
-o | 마운트 옵션 |
-r | 읽기 가능하게 마운트 |
-w | 읽기/쓰기 가능하게마운트(default) |
-t | 파일시스템 타입 선택 |
-v | 작업메시시 출력 |
-h | 도움말 출력 |
- 세부옵션 -t
-t (파일시스템 타입) | |
iso9660 | CD-ROM의 파일 시스템 |
vfat | window 파일시스템 |
ext2 | 리눅스에서 사용되는 파일 시스템 |
ext3 | 기본 파일 시스템, ext2+저널링 파일시스템(보안기능 향상), 16TB |
ext4 | ex3보다 큰 용량 지원, 복구시스템 지원, 점검속도 빠름 |
nfs | Network File System |
cifs | window 공유파일에서 사용되는 파일 시스템 |
- 세부옵션 -o
-o | |
default | rw,suid,dev,auto,nouser,async로 설정됨 |
ro | 읽기 전용으로 마운트 |
rw | 읽기/쓰기로 마운트 |
auto | -a 옵션으로 마운트 |
noauto | -a 옵션으로 마운트 하지 않는다 |
exec | 실행 파일이 실행 가능하도록 마운트 |
noexec | 실행 파일이 실행되지 않게 마운트 |
user | 일반 계정의 마운트 허용 |
nouser | 루트 계정만 마운트 허용 |
async | 파일시스템에 대한 입출력이 비동기적으로 이루어짐 |
sync | 파일시스템에 대한 입출력이 동기적으로 이루어짐 |
remount | 다시 마운트 |
suid | set-user-identifier, set-group-identifier를 적용되도록 허용 |
nosuid | suid가 적용되지 않도록 한다. |
umask | 마운트된 디렉토리의 permission을 default로 지정 |
fmask | 파일 permission만 지정 |
dmask | 디렉토리 permission만 지정 |
cifs 사용자 전용 | |
username | cifs 사용자 |
password | cifs 사용자 비밀번호 |
iocharset | 문자셋(uft8)을 지정해야 한글이 안 깨짐 |
file_mode | 파일 생성할 때, permission (ex: 0600) |
dir_mode | 디렉토리 생성할 때, permission (ex: 0700) |
uid | 리눅스 uid |
gid | 리룩스 gid |
'리눅스' 카테고리의 다른 글
[리눅스] 계정 관련 파일 "/etc/passwd, /etc/shadow" 필드에 관하여... (0) | 2021.10.11 |
---|---|
[리눅스] 파일서버-SMB/CIFS/NFS (1) | 2020.10.27 |
[리눅스] 에어팟 낮은 볼륨 높이기 (1) | 2020.06.28 |
[리눅스] 로그인 쉘, 비로그인 쉘 / login shell, non-login shell (1) | 2020.06.27 |
[리눅스] sudo, su의 차이점 (1) | 2020.06.27 |