목록리눅스 (58)
Self-Improvement
*실습1) LV용량 증가 LV의 용량증가는 mount되어 있어도 상관없다. pv를 만들어준다 확인은 #pvs vg1으로 vg을 만들어준다 확인은 #pvs, #vgs 2G인 lv1을 만들어준다 확인은 #pvs, #lvs #lvextend -L +1G /dev/vg1/lv1으로 1G을 추가한다. #resize2fs /dev/vg1/lv1 (resize2fs을 해야 마운트된 lv1의 용량이 적용된다) 확인결과 3G로 변경되어있음 *실습2) LV용량 감소시 및 주의사항 (1G로 줄이기) 1.파일시스템을 언마운트한다(마운트 되어있을시) #umount /lv1 2.파일시스템 점검 #fsck -f /dev/vg1/lv1 3.파일시스템 용량 줄이기 #resize2fs -p /dev/vg1/lv1 1G 4.LV용량 줄이..
*LVM (물리적인 디스크들을 논리적으로 구성) //LVM 용어 1.Physical Volume(PV, 물리적인 디스크(/dev/sda) or 물리적인 파티션(/dev/sda1)) -Physical Extent(PE, PV가 갖는 일정한 블록단위) 2.Volume Group(VG, PV가 합쳐진 가상디스크) 3.Logical Volume(LV, VG인 가상디스크를 나누며 파티션인 것) -Logical Extent(LE, LV가 갖는 일정한 블럭단위, PE와 용량 동일) PV1 + PV2 = VG -> LV1, LV2 //LVM 구성종류 1.Striping구성 (데이터를 펼처서 저장 및 읽음) -I/O가 빠름 = 성능 상승 -PE : LE = 1 : 1 ex) 두개의 PV가 연결되어있는 것처럼 데이터를 저..
*파일시스템 점검 및 복구 #fsck /dev/sdb1 (해당 파일시스템을 대화형으로 점검) =#e2fsck /dev/sdb1 =#fsck.ext3 /dev/sdb1 #fsck -p /dev/sdb1 (비대화형으로 점검) #fsck -y /dev/sdb1 (모든 대화에 yes로 점검) #fsck -b 슈퍼블럭번호 /dev/sdb1 (슈퍼블록 번호로 슈퍼블럭 복구) #fsck --help (옵션들을 볼 수 있음) //fsck 주의사항 마운트된 파일시스템에 대해서 fsck 명령어를 수행하지 말 것 (안전) 1.umount 한 뒤에 fsck 2.single user mode을 한 뒤에 fsck //슈퍼 블럭을 복구 하는 방법 1. #umount /home (/dev/sda3에 마운트된 /home을 언마운트 한..
*파일시스템 파일을 저장하고 관리하는 체계 #dumpe2fs /dev/sda1(구조를 보는 것) //종류 ext2/ext3/ext4/xfs ..등 *파일시스템 작업 #mkfs.ext3 /dev/sdb1 (ext3형태의 파일시스템 생성) #dumpe2fs /dev/sdb1 (정보를 볼 수가있음) *minfree(Minimum Free Space) 1.파일 시스템이 FUll 되었을 때 파일시스템에 접근 할 수있는 최소의 공간 2.root 사용자만 사용할 수 있는 예약된 공간 3.파일시스템 생성시 기본 값 5% #mkfs.ext3 /dev/sdb1 (minfree 지정없으면 기본값 5% 공간) #mkfs.ext3 -m 1 /dev/sdb1 (minfree 공간을 1%로 하며 파일시스템 생성) //조정 및 확인..
*디스크 인식 //디스크의 종류 1.IDE(SATA) 2.SCSI(SAS) 3.SSD(메모리) 안전 : | | 성능 : | | 확장 : | | 가격 : | | //디스크 구조 sector -> track -> cylinder -> partition -> disk //디스크이름 1.IDE DISK /dev/hda, /dev/hdb, /dev/hdc, /dev/hdd (4개) 2.SCSI DISK /dev/sda, /dev/sdb, /dev/sdc, /dev/sdd, ... //파티션 이름 1.Primary Partition(1 ~ 4) 2.Extended Partition(5 ~ 15, Primary 파티션을 선택하여 확장) -Logical Partition(세부적으로 나눈다는 의미) ex) hda1 ||..
*백업 종류 1.완전 백업 (Full Backup) = 모든 데이터를 통째로 한 번에 백업하는 방법 2.증분 백업 (Incremental Backup) = 완전 백업한 이후에 변경된 데이터만을 주기적으로 따로 따로 백업하는 방법 3.차등 백업 (Differential Backup) = 완전 백업후의 모든 데이터에 대해 백업하는 방법 *백업/복구 명령어 1.디렉터리 단위의 백업 : tar (마운트된 파일시스탬 내에서 백업, 주로 사용) : cpio (마운트된 파일시스템 내에서 백업) 2.파일시스템 단위의 백업 : dump/restore 3.디스크 단위의 백업 : dd (잘 사용하지 않음) *tar 명령어을 통한 풀/증분백업 //백업 #mkdir /backup /backup2 ; cd /backup2 파일을..
*lsof #lsof : 프로세스에 의해 열려진 파일들에 대한 정보를 볼 수 있다. #lsof 파일이름 : ex) lsof /dev #lsof -c 데몬명 : ex) lsof -c sshd #lsof -p PID : lsof -p 450 #lsof -i : 사용중인 소켓상태 *pmap #pmap PID : 해당 프로세스가 사용하고 있는 메모리의 주소를 확인 할 수가 있다. //예시 #ps -ef | grep sendmail -> PID를 알아내고 -> #pmap PID 로 확인한다 *pstree #pstree : 실행중인 모든 프로세스 상태를 트리 구조로 출력 #pstree PID : 해당 프로세스의 하위 트리구조를 출력 //예시 #sleep 400 -> , #sleep 500 -> 하고 난뒤에 -> #..
*프로세스 PID : 프로세스가 시작할 때 할방 받는 프로세스 식별번호 PPID : 부모 프로세스 식별번호 #ps (현재 터미널의 프로세스 정보 출력) #ps -f (현재 터미널의 프로세스의 PPID, CMD가 자세하게 나옴) #ps -e (모든 프로세스를 출력) #ps -l (가장 자세하게 출력) #ps -t pts/숫자 (특정 터미널의 관한 프로세스) #ps -U 유저이름 (해당 유저의 프로세스) -대체적으로 #ps -ef을 씀 //proc #ls -ld /proc/* (모든 프로세스들 디렉터리, 파일들이 들어있음) ex) #gedit(=vi) & -> #ps -> PID 확인 -> #ls -ld /proc/PID -> 임시적으로 생성되어짐 (종료되면 해당 PID디렉터리도 사라짐) *Backgroun..
*Variable(변수) 1.지역변수 : #VAR=5 2.환경변수(=전역) : #export VAR=5 -확인할때는 #echo $VAR(=변수명), 삭제할때는 #unset VAR(=변수) //지역변수 vs 환경변수(=전역) 지역변수 - #var=5 -> #echo $var -> #bash -> #echo $var (값이 안나오게됨) 환경변수 - #export var=4 -> #bash -> #echo $var (값이 나옴) -환경 변수는 자신이 선언한 쉘의 서브쉘에서 적용, 상위 쉘에는 적용되지 않음 //set(모든변수 출력) vs env(환경변수만 출력) #set | wc -l ; env | wc -l (각 몇개인지 알아낸다음) #var1=centos, #export var2=linux -> #set ..
*Redirection (방향 재지정) -fd(file descriptor) : 파일 기술자 표준입력(0, standard input) -------> Shell(bash) ------> 표준출력(1, standard output) ex) KeyBoard | ex) Screen | 표준에러(2, standard error) ex)Screen 1.입력재지정 형식 CMD 파일이름 (표준출력, 덮어쓰기) CMD 1> 파일이름 CMD >> 파일이름 (표준출력, 이어쓰기) CMD 1>> 파일이름 //예제 #echo 1111 > filename1 #echo 2222 > fi..