[W12D5] 리눅스 서버 – 기본 사용법(2), 하드디스크 추가, RAID, LVM

https://blog.naver.com/kiw 970923 / 222875519983 리눅스 명령 디렉토리 내 파일 확인 #ls 트리 형태로 파일 보기 #tree 작업 디렉토리 이동 #cd [이동하기…] blog.naver.com 이므로

cron 실습

cron을 활용하여 매월 15일 오전 3시 1분에 /home 디렉토리와 그 서브 디렉토리를 /backup 디렉토리에 백업한다.

openrdate-1.2-14.fc30.x86_64.rpm다운로드 #wget http://download.hanbit.co.kr/centos/8/openrdate-1.2-14.fc30.x86_64.rpm 또는 cafe.naver.com/thisislinux 자료실에서 다운로드

.rpm파일 설치와 같은 디렉토리로 이동 #dnf-yinstallopenrdate*.rpm

cron 관련 서비스인 crond가 동작하는지 확인

systemctl status crond

vi / etc / crontab

myBackup.sh 파일 작성, 권한 설정 및 수정

systemctl restart crond

리눅스 네트워크 주요 명령어 네트워크 서비스 관리 #systemctl<start/stop/restart/status> Network Manager

#ifup[장치명] #ifdown[장치명] #ifconfig[장치명] #nslookup

네트워크 설정 관련 주요 파일

/etc/sysconfig/network: 네트워크의 기본 정보 설정/etc/sysconfig/network-scripts/ifcfg-xxxx:xxxx 장치에 설정된 네트워크 정보가 모두 들어 있어야 함/etc/resolv.conf: DNS 서버의 정보와 호스트명/etc/hosts: 현재 컴퓨터의 호스트 이름과 FQDN 들어 있어야 함

네트워크 보안을 위한 SELinux

SELinux(Security Enhanced Linux) — 시스템에서 보안에 영향을 미치는 서비스, 권한 등 제어 가능 – SELinux 환경에서는 해커가 어떤 경로로 시스템 침입에 성공하든 침입한 경로의 애플리케이션 사용 이상의 권한을 얻지 못했다

파이프, 필터, 리디렉션

파이프(|)-두 프로그램을 연결하는 연결통로의 의미, 사용예) #ls-l/etc|more

필터 – 필요한 것만 여과하는 명령어 – grep, tail, wc, sort, awk, sed 등 사용예) #ps-ef| grepbash #rpm-qa| grepdnf

리디렉션-표준 입출력 방향을 바꾸어 줌-표준 입력은 키보드, 표준 출력은 모니터가 이를 파일로 처리하고 싶을 때 주로 사용, 사용 예) #ls-l>list.txt:ls-l 결과를 list.txt에 저장.(윗글)#ls-l>list.txt:ls-l의 결과를 list.txt에 이어서 저장 #sort<list.txt:list.txt 파일을 정렬하고 화면에 출력 #sort<list.txt>out.txt:list.txt 파일을 정렬하고 out.txt 파일에 의해.

프로세스, 데몬, 서비스

프로세스 – 하드 디스크에 저장된 실행 코드가 메모리에 로드되어 활성화된 것 – Foreground Process – 실행하면 화면에 나타나 사용자와 상호작용을 하는 프로세스 – Background Process – 실행은 되었으나 화면에는 나타나지 않고 실행되는 프로세스 – 프로세스 번호 : 각각의 프로세스에 할당된 고유 번호 – 작업 번호 : 현재 실행되고 있는 백그라운드 프로세스의 시퀀스 번호 – 부모 프로세스와 자녀 프로세스 – 모든 프로세스는 부모 프로세스를 가지고 있음 – 부모 프로세스를 kill하여 자녀 프로세스도 종료하고 프로세스 관련 명령 – ps-kill : 프로세스 종료 #kill-9 [kill]

p. 256 무한 루프 도는 프로세스 정지할 것

#yes> /dev/null : 무한 루프 프로세스 생성.yes: yes라는 글자를 무한출력/dev/null: 아무것도 아닌 장치

yes 프로세스의 PID는 19054

프로세스 종료 명령어 입력 #kill-919054

백그라운드 프로세스 실행 #명령 &

백그라운드 프로세스 확인 #jobs

백그라운드 프로세스를 포그라운드로 되돌리기 #fg[되돌리기 프로세스 번호]

터미널 창이 종료되어도 백그라운드 프로세스가 종료되지 않도록 하는 #nohup

서비스 – 시스템과 자체 구동되어 제공하는 프로세스 – 웹 서버(httpd), DB 서버(mysqld), FTP 서버(vsftpd) 등이 있다 – 서비스의 실행 스크립트 파일은 /usr/lib/systemd/system/ 디렉토리에 서비스명.service라는 이름으로 확인 가능

소켓 – 외부에서 특정 서비스를 요청할 경우 시스템이 구동시킨다 – 요청이 끝나면 소켓도 종료된다 – 최초 접속 시간이 서비스에 비해 약간 걸릴 수 있음 – 소켓과 관련된 스크립트 파일은 /usr/lib/systemd/system/ 디렉토리에 소켓 이름.socket이라는 이름으로 존재

하드 디스크 관리

파티션 확인 명령어

df-k

하드디스크 추가 p.336

하드디스크를 추가하면 /dev/sdb가 생성되는 하드디스크를 사용하려면 적어도 하나 이상의 파티션으로 분할해야 한다.하나의 파티션으로만 나누어 /dev/sdb1 파티션 생성

하드 디스크 추가 프로세스 – 물리적 하드 디스크 장착 – 파티션 추가 – 파일 시스템 생성 – 마운트 – / etc / fstab 등록 – 재부팅

실습-하드디스크 추가

리눅스 ᅵ스테 終了 시스템 종료

하드디스크를 1GB 추가한 후 시스템을 켜다

#ls-l/dev/sd*

새 물리 디스크가 추가되었는지 확인

파티션 작성

#fdisk/dev/sdb

아래 명령어 순서대로 입력 : n 새 파티션 만들기 : pprimary 파티션 만들기 : 엔터 파티션 번호 (기본값 1): 엔터의 첫 번째 섹터 (기본값 2048): 엔터의 마지막 섹터 (기본값)

파티션 생성 완료

:p 파티션 정보

:t 파티션 유형 수정 : 83 파티션 유형 Linux로 변경

:w 파티션 테이블 업데이트 및 종료

파티션 생성 확인

#mkfs.ext4/dev/sdb1 파일 시스템 작성

파티션을 마운트하기 위해 새 디렉토리 작성 #mkdir/mydata

생성한 파티션을 / my data에 마운트 #mount / dev / sdb1 / my data

#df-k 마운트된 것을 확인

이제 새 하드디스크를 사용할 수 있지만 컴퓨터를 재부팅하면 마운트가 해제된다.

재부팅하더라도 마운트가 유지되도록 하기 위해 /etc/fstab 파일에 내용을 추가해야 한다.

디바이스 이름, 마운트되는 디렉토리, 파일 시스템, 속성, dump 사용 여부, 파일 시스템 체크 여부

#vi / etc / fstab 다음 내용 추가 / dev / sdb1 / my dataext4 defaults00

재부팅 후 df-k 명령어를 사용하면 마운트되어 있음을 확인할 수 있다.

이전에 저장하고 있던 파일도 남아 있다

RAID(Redundant Array of Inexpensive/Independent Disks) – 여러 디스크를 하나의 디스크처럼 사용 – 하드웨어 RAID – 하드웨어 제조사가 여러 개의 하드 디스크를 가지고 장비를 만들어 그 자체를 공급 – 안정적이지만 고가 – 소프트웨어 RAID – 고가의 하드웨어 RAID 대안 – 운영 체제에서 지원하는 방식 – 저렴한 비용으로 보다 안전한 데이터 저장 가능

RAID 레벨

단순 볼륨 – 하드 디스크 하나를 볼륨 하나로 사용 – RAID 방식에 포함되지 않음

LinearRAID, RAID 0 – 최소 2개의 하드디스크 필요 – 2개 이상의 하드디스크를 하나의 볼륨으로 사용 – LinearRAID – 프론트 하드디스크에 데이터가 가득 찬 후 다음 하드디스크에 데이터 저장 – 100% 공간효율 – RAID 0 – 모든 하드디스크를 동시에 사용 – 연속적인 데이터가 여러 디스크로 분할되어 저장 – 100% 공간효율

RAID 1 – 미러링 – 두 번째 하드 디스크에 첫 번째와 동일한 데이터 쓰기 – 원래 데이터의 두 배 용량 필요

RAID 5 – 최소 3개 이상의 하드 디스크 필요 – 하드 디스크에 오류가 발생할 경우 패리티를 이용하여 복구 가능 RAID 6 – RAID 5는 1개의 패리티를 사용하지만, RAID 6는 2개의 패리티를 사용 – 2개의 하드 디스크 동시에 고장나도 데이터 이상 없음

실습 RAID 1, RAID 5를 구현하다

RAID 1-> 1GB HDD x 2RAID 5-> 1GB HDD x 3

부팅 후 하드 디스크 확인 RAID1 : sdc, sdRAID5 : sde, sdf, sdg

fdisk 명령어로 파티셔닝 type: Linuxraidauto

#fdisk/dev/sdc:n:p:1:t:fd:wsd, sde, sdf, sdg도 동일하게 진행

입력값을 txt 파일로 저장한 후 다음과 같이 빠르게 진행 가능

mdadm 명령을 사용하여 RAID1 구성

/dev/sdc1/dev/sdd1 이용

#mdadm–create/dev/md1–level=1–raid-device=2/dev/sdc1/dev/sd1y #mdadm–detail–scan

하나의 논리적 볼륨이 생성되었음을 확인

생성된 볼륨을 파일 시스템에 포맷

#mkfs.ext4/dev/md1

마운트할 디렉토리 작성 후 마운트

#mkdir/raid1 #mount/dev/md1/raid1

마운트 확인

컴퓨터 재부팅 시 마운트가 유지되도록 설정

#vi/etc/fstab 다음 내용 추가/dev/md1/raid1 ext4 defaults00

RAID 5 구성 #mdadm–create/dev/md5–level=5–raid-devices=3/dev/sde1/dev/sdf1/dev/sdg1 #mdadm–detail-scan

파티션포맷 #mkfs.ext4/dev/md5

마운트할 디렉토리 생성 #mkdir/raid5

마운트 #mount/dev/md5/raid5

확인

df-k

재부팅 시 마운트 해제되지 않도록 설정 #vi/etc/fstab 다음 내용 추가/dev/md5/raid5ext4 defaults00

Logical Volume Manager) – 논리 하드 디스크 관리자 – 복수의 하드 디스크를 합쳐서 하나의 파티션으로 구성한 후 다시 필요에 따라 나누기 – Physical Volume(물리 볼륨): /dev/sda1, /dev/sdb1 등의 파티션 – Volume Group(볼륨 그룹): 물리 볼륨을 합쳐서 하나의 물리 그룹으로 만든 것 – Logical Volume(논리 볼륨): 볼륨 그룹을 하나 이상으로 나눈 것으로 논리 그룹이라고도 한다.

LVM 구성

2GB HDD, 3GB HDD를 하나씩 추가하다

/dev/sdh, /dev/sdi이용

fdisk.txt파일내용수정

파티션 생성 #fdisk/dev/sdh<fdisk.txt #fdisk/dev/sdi<fdisk.txt

물리적 볼륨생성 #pvcreate/dev/sdh1 #pvcreate/dev/sdi1

두 물리적 볼륨을 하나로 묶는 #vgcreatemy VG/dev/sdh1/dev/sdi1

확인 #vgdisplay

볼륨 그룹의 파티션을 생성할 때는 fdisk 대신 lvcreate 명령을 사용한다.하나로 부풀려진 볼륨 그룹을 이용하여 3개의 논리 그룹에 파티션을 나누어 생성한다.논리 그룹을 1GB, 3GB, 1GB로 나누기 위해 다음과 같이 입력 #lvcreate–size 1G–namemyLG1myVG:myVG아래 myLG1을 1GB 사이즈로 생성 #lvcreate–size 3G–namemyVG #lvcreate–extents 100% FREE–namemyLG3myVG: 나머지 용량 모두 할당 #ls/dev/myVG

실수로 다른 값을 넣어 논리 그룹이 잘못 생성된 경우 다음과 같이 입력하여 논리 그룹을 모두 삭제한 후 다시 lvcreate를 이용하여 생성한다.#lvremove myVG

myLG1, myLG2, myLG3에 대하여 파일 시스템 생성 #mkfs.ext4/dev/myVG/myLG1 #mkfs.ext4/dev/myVG/myLG2 #mkfs.ext4/dev/myVG/myLG3

디렉토리 생성 후 마운트/lvm1,/lvm2,/lvm3 생성 #mkdir/lvm1 #mkdir/lvm3 #mount/dev/myVG/myLG1/lvm1 #mount/dev/myVG/myLG2/lvm2 #mount/dev/myVG/myLG3/lvm3

#df-k 마운트 확인

재부팅 시 마운트가 유지되도록 /etc/fstab 파일 수정

error: Content is protected !!