RAID
하드웨어 RAID
소프트웨어 RAID
RAID 1은
VMware 서버에 디스크 9개 추가
fdisk를 통한 파티션 설정
command : t > hex code는 디스크 타입 변경, fd는 레이어드 구성에 사용하는 파일 시스템
linear 레이드 구성도 (level=linear, 0, 1, 5 )
mdadm 명령어를 사용하여 sdb1과 sdc1을 linear raid로 묶는다
파일시스템으로 포맷 후 새로 생성한 디렉토리에 마운트!!
fstab을 활용하여 저장, 부팅후에도 유지될 수 있게!!
기능
용어
흐름도
디스크 2개 추가 (2GB, 3GB)
파티션 할당, 타입은 LVM 타입 ( Hex code : 8e )
물리 볼륨, 볼륨 그룹 생성
이후 논리 볼륨으로 용량 할당, 이후 포맷
디렉토리 생성 후 마운트하면 끝
기본 셸은 bash ( Bourne Again SHell : '배시 셸' )
특징
Alias 기능 (명령어 단축 기능)
History 기능 (위/아래 화살표키)
연산 기능
Job Control 기능
자동 이름 완성 기능 (tab)
프롬프트 제어 기능
명령 편집 기능
셸의 명령문 처리 방법
(프롬프트) 명령어 [옵션..][인자..]
예) rm -rf /mydir
환경변수
and는 '-a' 또는 '&&' 사용
or는 '-o- 또는 '||' 사용
#!/bin/sh
echo "보고 싶은 파일명을 입력하세요"
read fname
if [ -f $fname ] && [ -s $fname ];then
head -5 $fname
else
echo "파일이 없거나, 크기가 0입니다"
fi
exit 0
break는 주로 반복문 종료할 때 사용
continue는 반복문의 조건식으로 돌아가게 함
exit는 해당 프로그램을 완전히 종료
return은 함수 안에서 사용할 수 있으며 함수를 호출한 곳으로 돌아가게 함
#!/bin/sh
echo "무한반복 입력을 시작(b : break, c : continue, e : exit)"
while [ 1 ];do
read input
case $input in
b | B )
break;;
c | C )
echo "continue를 누르면 while의 조건으로 돌아감"
continue;;
e | E )
echo "exit를 누르면 프로그램(함수)를 완전히 종료함"
exit 1;;
esac;
done
echo "break를 누르면 while을 빠져나와 지금 이 문장이 출력됨"
exit 0
형식
함수이름 ( ) { → 함수를 정의
내용들 ...
}
함수이름 → 함수를 호출
문자열을 명령문으로 인식하고 실행
#!/bin/sh
str="ls -l test.sh"
echo $str
eval $str
exit 0
외부 변수로 선언해 준다. 즉, 선언한 변수를 다른 프로그램에서도 사용할 수 있도록 해줌
extest.sh
#!/bin/sh
echo $var1
echo $var2
exit 0
test.sh
#!/bin/sh
var1="지역변수"
export var2="외부 변수"
sh extest.sh
exit 0
shift
파라미터 변수를 오른쪽으로 한 단계식 쉬프트 시킴
#!/bin/sh
myfunc() {
str=""
while [ "$1" != "" ];do
str="$str $1"
shift
done
echo $str
}
myfunc AAA BBB CCC DDD EEE FFF GGG HHH III JJJ KKK
exit 0