20160421 리눅스 관리자
==================================메모==================================
반장 - hotdog8686@naver.com
정보보안기사 시험은 안에 나오는 단어를 이해해야한다 내용은 별거없다
#
# Specific Configuration
#
export PS1='[\u@\h \w]\$ '
alias ls='ls --color=tty -h'
alias pps='ps -ef | head -1 ; ps -ef | grep $1'
alias vi='/usr/bin/vim'
alias grep='grep -i --color'
alias a='cd /test && rm -rf /test/*'
alias b='cp /etc/passwd file1 ; cp file1 file2 ; cp file1 file3'
alias c='clear'
alias df='df -h -T' //오늘 추가했어
==================================복습==================================
1. 디렉토리 구조
/, /home, /tmp, /bin, /sbin, /dev, /lib, /usr, /boot, /etc, /proc, /var
2. 장치 관리(EX: 디스크 장치 관리)
(ㄱ) 장치 추가 & 장치 인식
(ㄴ) 파티션 작업
(ㄷ) 파일시스템 작업
(ㄹ) 마운트
==================================강의==================================
2.1 장치 인식(Device Reconfiguration)
(선수지식) sector -> track -> cylinder -> partition -> disk
디스크 이름 체계(EX: /dev/sda)
- IDE : hda, hdb, hdc, hdd
- SCSI : sda, sdb, sdc, sdd, ....
(장치인식)
# chkconfig kudzu on
# init 0 //Power OFF
물리적인 디스크 추가
Power ON
# ls -l /dev/sd? (# fdisk -l)(# fdisk -l | grep Disk)
2.2 파티션 작업(Partition)
(선수지식)
파티션 이름 체계(EX: /dev/sda1)
- Primary Partition(1~4)
- Extended Partition
ㄴLogical Partition(5~#)
(파티션 작업)
# fdisk /dev/sdb
# fdisk -l /dev/sdb
2.3 파일 시스템 작업(Filesystem)
(선수지식)
파일시스템?
파일시스템의 종류
- ext2, ext3, ext4, xfs
(파일시스템 작업)
# mkfs -t ext3 /dev/sdb1 (# mkfs.ext3 /dev/sdb1)
#dumpe2fs /dev/sdb1 (# tune2fs -l /dev/sdb1) //확인할때
[참고] minfree 설명
# mkfs.ext3 -m 5 /dev/sdb1
# tune2fs -m 5 /dev/sdb1
2.4 마운트 작업(mount CMD, /etc/fstab)
마운트 확인
# df -k
# mount
마운트 관련 파일들
/etc/mtab //현재 상태에서 마운트
/etc/fstab //부팅시 마운트해야하는 정보를 담고있다 관리해야한다
마운트 관련 명령어들
2.5 파일 시스템 점검 및 모니터링
fsck CMD
(주의) /home, /data1 -> umount CMD + fsck CMD
/, /usr, /var, /tmp -> single user mode + fsck CMD
# fsck /dev/sdb1
# fsck -y /dev/sdb1
[참고] fsck -y /dev/sdb1
# script -a fsck.log
# fsck -y /dev/sdb1
# exit
# cat fsck.log
df/du CMD
# df -k
# du -sk /var
# cd /var ; du -sk * | sort -nr | more
# find / -size +300M -mtime -2 -type f
==================================실습==================================
(1) 물리적인 디스크 구조
▪ 스핀들(Spindle) : 플래터를 돌러주는 축
▪ 플래터(Platters) : 원판(플랫터), 데이터가 저장되는 공간
▪ 헤드(Heads) : 데이터를 읽어들이는 부분
▪ 헤드 암(Head actuator arm) : 데이터를 읽어 들이는 팔
그림1
sector : 512bytes
track
cylinder
partition
disk
참고 http://atsequence.tistory.com/7
디스크 이름
IDE=ATA(옛날, 10년전, 15년전, 20년전에 쓰던 방식들)
보드에 있는 cpu가 디스크를 직접제어, 안정성이나 속도가 떨어짐
cpu i/o 속도가 disk i/o 속도보다 최소 1000배 빠르다 -> cpu가 대기상태에 빠진다 비효율적
7200rpm
SCSI(Small Computer System Interface)
스카시컨트롤러가 cpu의 명령을 받아 디스크를 제어
다중프로세스 실행에 유리, 안정성이 뛰어남, 성능이 좋아, 확장성도 좋아
많은 디스크를 연결
10000rpm
단점은 동일용량이면 가격이 10정도 차이가 난다 비싸..
참고 http://goodpc.tistory.com/23
S-ATA
성능이 다른 장치를 연결할때 느린 속도에 맞춰야만 하는 기존 방식을 개선, 디스크만 연결하게끔 만든 방식
컨트롤러가 디스크 속도에만 맞추면 된다
SA-SCSI, SAS
디스크만을 위한 컨트롤러가 있다 비싸다
15000rpm
참고 http://blog.naver.com/skyluvtoya/100120822628
IDE DISK
/dev/hda, /dev/hdb, /dev/hdc, /dev/hdd
SCSI DISK
/dev/sda, /dev/sdb, /dev/sdc, /dev/sdd, ...
파티션 이름
Primary Partition(1~4)
Extended Partition(5~15) : 프라이머리파티션 중 하나를 골라 익스텐디드파티션으로 바꿈
ㄴLogical Partition
리눅스 최대 파티션 개수
IDE DISK : /dev/hda1 ~ 15
SCSI DISK : /dev/sda1 ~ 15
그림2
[EX1] 현재 운영체제 파티션 구성 정보 확인
■ 디스크의 종류: IDE(SATA), SCSI(SAS), SSD
SSD : 저전력, 고성능, 발열없음(팬이필요없음), 고온에서 작동안됨, 요즘은 SSD서버도 있음
---------------------+-----------------------
IDE(SATA) | SCSI(SAS)
---------------------+-----------------------
안정성
성 능
확장성
가 격
---------------------+-----------------------
■ IDE ---> /dev/hd ----> /dev/hda, /dev/hdb, /dev/hdc, /dev/hdd
■ SCSI ---> /dev/sd ----> /dev/sda, /dev/sdb, /dev/sdc, ....
[root@linux220 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 36G 3.1G 31G 10% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
/dev/sda3 487M 11M 451M 3% /home
tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
프라이머리 : sda1,sda3
로지컬 : sda5, sda6, sda7, sda8
[root@linux220 ~]# cat /proc/swaps
Filename Type Size Used Priority
/dev/sda2 partition 1052248 0 -1
프라이머리 : sda2
[root@linux220 ~]# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 4770 38314993+ 83 Linux
/dev/sda2 4771 4901 1052257+ 82 Linux swap / Solaris
/dev/sda3 4902 4965 514080 83 Linux
/dev/sda4 4966 5221 2056320 5 Extended
/dev/sda5 4966 5029 514048+ 83 Linux
/dev/sda6 5030 5093 514048+ 83 Linux
/dev/sda7 5094 5157 514048+ 83 Linux
/dev/sda8 5158 5221 514048+ 83 Linux
익스텐디드 : sda4=sda5+sda6+sda7+sda8
참고 http://originweb.tistory.com/entry/PARTITION-LVM-RAID 그림이 재밌어서
장치 인식
(ㄱ) kudzu 서비스 on
# chkconfig kudzu on
# chkconfig --list kudzu
(ㄴ) 서버 전원 off
# init 0
# shutdown -h now
# poweroff
# halt
(ㄷ) 디스크 추가
(ㄹ) 서버 전원 on
(ㅁ) 부팅후 추가된 디스크 확인
# ls -l /dev/sd? (# ls -l /dev/hd?)
# fdisk -l
서버에서 핫스왑이 가능한 경우에는 외관만 봐도 알수있다
핫스왑이 지원되면 ㄴ, ㄷ, ㄹ 과정이 필요없다
1 장치 추가 후 인식 방법
리눅스 시스템에서 새로운 장치를 붙였다면 장치을 재인식(Device Reconfiguration) 시켜야 한다.
■ 새로운 디스크 추가 작업 절차
(ㄱ) kudzu 서비스 ON
# chkconfig kudzu on
# chkconfig —list kudzu
[참고] 서버스 설정 툴 # ntsysv (# setup)
# system-config-services (# serviceconf)
# chkconfig --list
(ㄴ) 서버 전원 OFF
# poweroff (# init 0, # shutdown -h now, # halt)
(ㄷ) 새로운 디스크 장착 VMWare > VM > Setting > Add > "Hard Disk" > "Create a new virtual disk"
> SCSI > 1G (1GB 용량의 DISK 2장을 추가한다.)
(ㄹ) 서버 전원 ON
(ㅁ) 부팅 후 추가된 디스크 확인 # ls –l /dev/sd?
# fdisk -l (#fdisk -l | grep Disk)
[root@linux220 ~]# ls -l /dev/sd?
brw-r----- 1 root disk 8, 0 4월 21 17:40 /dev/sda
brw-r----- 1 root disk 8, 16 4월 21 17:40 /dev/sdb
brw-r----- 1 root disk 8, 32 4월 21 17:40 /dev/sdc
[root@linux220 ~]# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 4770 38314993+ 83 Linux
/dev/sda2 4771 4901 1052257+ 82 Linux swap / Solaris
/dev/sda3 4902 4965 514080 83 Linux
/dev/sda4 4966 5221 2056320 5 Extended
/dev/sda5 4966 5029 514048+ 83 Linux
/dev/sda6 5030 5093 514048+ 83 Linux
/dev/sda7 5094 5157 514048+ 83 Linux
/dev/sda8 5158 5221 514048+ 83 Linux
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdc doesn't contain a valid partition table
[root@linux220 ~]# fdisk -l | grep Disk
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc doesn't contain a valid partition table
Disk /dev/sda: 42.9 GB, 42949672960 bytes
Disk /dev/sdb: 1073 MB, 1073741824 bytes
Disk /dev/sdc: 1073 MB, 1073741824 bytes
sdb와 sdc가 추가된것을 확인할 수 있다 아직 파티션이 없음
■ 인식된 하드웨어 목록 확인
하드웨어 정보 확인
(선수 작업)
# yum list | grep hal
# yum install hal-gnome.x86_64
(GUI) # hal-device-manager &
(TUI) # lshal
[root@linux220 ~]# yum list | grep hal
hal.i386 0.5.8.1-59.el5 installed
hal-cups-utils.i386 0.6.2-5.2.el5 installed
hal-gnome.i386 0.5.8.1-59.el5 installed
fonts-sinhala.noarch 0.2.2-1 base
hal.i386 0.5.8.1-64.el5 base
hal-devel.i386 0.5.8.1-64.el5 base
hal-gnome.i386 0.5.8.1-64.el5 base
m17n-db-sinhala.noarch 1.3.3-48.el5 base
scim-sinhala.i386 0.2.0-2.fc6 base
[root@linux220 ~]# yum -y install hal-gnome
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: centos.tt.co.kr
* base: centos.tt.co.kr
* extras: centos.tt.co.kr
* updates: centos.mirror.cdnetworks.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package hal-gnome.i386 0:0.5.8.1-64.el5 set to be updated
--> Processing Dependency: hal = 0.5.8.1-64.el5 for package: hal-gnome
--> Running transaction check
---> Package hal.i386 0:0.5.8.1-64.el5 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
===============================================================================================================
Package Arch Version Repository Size
===============================================================================================================
Updating:
hal-gnome i386 0.5.8.1-64.el5 base 103 k
Updating for dependencies:
hal i386 0.5.8.1-64.el5 base 396 k
Transaction Summary
===============================================================================================================
Install 0 Package(s)
Upgrade 2 Package(s)
Total download size: 499 k
Downloading Packages:
(1/2): hal-gnome-0.5.8.1-64.el5.i386.rpm | 103 kB 00:00
(2/2): hal-0.5.8.1-64.el5.i386.rpm | 396 kB 00:00
---------------------------------------------------------------------------------------------------------------
Total 3.5 MB/s | 499 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : hal 1/4
Updating : hal-gnome 2/4
Cleanup : hal 3/4
Cleanup : hal-gnome 4/4
Updated:
hal-gnome.i386 0:0.5.8.1-64.el5
Dependency Updated:
hal.i386 0:0.5.8.1-64.el5
Complete!
[root@linux220 /etc/rc.d]# ls
init.d rc rc.local rc.sysinit rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d
[root@linux220 /etc/rc.d]# who -r
run-level 5 2016-04-21 17:41 last=S
[root@linux220 /etc/rc.d]# cd rc5.d
[root@linux220 /etc/rc.d/rc5.d]# ls
K01dnsmasq K30spamassassin K89dund S13irqbalance S56cups
K02NetworkManager K35dovecot K89netplugd S13portmap S56rawdevices
K02avahi-dnsconfd K35smb K89pand S14nfslock S56xinetd
K02oddjobd K35vncserver K89rdisc S15mdmonitor S57vmware-tools-thinprint
K03yum-updatesd K35winbind K91capi S18rpcidmapd S80sendmail
K05conman K50ibmasm S02lvm2-monitor S19rpcgssd S85gpm
K05innd K50netconsole S03vmware-tools S22messagebus S90crond
K05saslauthd K50tux S04readahead_early S23setroubleshoot S90xfs
K05wdaemon K50vsftpd S05kudzu S25bluetooth S95anacron
K10dc_server K69rpcsvcgssd S08ip6tables S25netfs S95atd
K10psacct K73ypbind S08iptables S25pcscd S96readahead_later
K10tcsd K74nscd S08mcstrans S26acpid S98avahi-daemon
K12dc_client K74ntpd S09isdn S26apmd S99firstboot
K15httpd K80kdump S10network S26haldaemon S99local
K20nfs K85mdmpd S11auditd S26hidd S99smartd
K20rwhod K87multipathd S12restorecond S28autofs
K24irda K87named S12syslog S50hplip
K25squid K88wpa_supplicant S13cpuspeed S55sshd
[root@linux220 /etc/rc.d/rc5.d]# ls *kudzu*
S05kudzu
[root@linux220 /etc/rc.d/rc5.d]# ntsysv //kudzu 체크 해제
[root@linux220 /etc/rc.d/rc5.d]# ls *kudzu*
K95kudzu
[root@linux220 /etc/rc.d/rc5.d]# chkconfig kudzu on
[root@linux220 /etc/rc.d/rc5.d]# ls *kudzu*
S05kudzu
파티션 작업
(주의) fdisk 명령어는 2TB 이상의 디스크에서 파티션 설정을 할 수 없다.
따라서 이런 경우에는 parted 명령어를 사용하여 파티션 설정을 해야 한다.
현재 2TB 파티션 용량을 해결 하기 위해서 PC-BIOS 파티션 테이블을 GTP(GUID 파티션 테이블)로 대체 되었다.
fdisk 명령어는 GTP 파티션을 지원하지 않는다. 따라서 이런 경우 반드시 parted 명령어를 사용해야 한다.
fdisk 명령어를 통한 디스크 파티션 구성
(명령어 형식)
# fdisk -l (# fdisk -l | grep Disk)
# fdisk –l /dev/sda
# fdisk /dev/sda
[EX] 파티션 정보 확인
# fdisk –l /dev/sda
[root@linux220 ~]# fdisk -l /dev/sda
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 4770 38314993+ 83 Linux
/dev/sda2 4771 4901 1052257+ 82 Linux swap / Solaris
/dev/sda3 4902 4965 514080 83 Linux
/dev/sda4 4966 5221 2056320 5 Extended
/dev/sda5 4966 5029 514048+ 83 Linux
/dev/sda6 5030 5093 514048+ 83 Linux
/dev/sda7 5094 5157 514048+ 83 Linux
/dev/sda8 5158 5221 514048+ 83 Linux
[root@linux220 ~]# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 4770 38314993+ 83 Linux
/dev/sda2 4771 4901 1052257+ 82 Linux swap / Solaris
/dev/sda3 4902 4965 514080 83 Linux
/dev/sda4 4966 5221 2056320 5 Extended
/dev/sda5 4966 5029 514048+ 83 Linux
/dev/sda6 5030 5093 514048+ 83 Linux
/dev/sda7 5094 5157 514048+ 83 Linux
/dev/sda8 5158 5221 514048+ 83 Linux
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdc doesn't contain a valid partition table
[root@linux220 ~]# fdisk -s /dev/sda1 (# fdisk -l /dev/sda | grep sda1)
38314993
[root@linux220 ~]# fdisk -s /dev/sda3 (# fdisk -l /dev/sda | grep sda3)
514080
[EX2] 파티션 작업
# fdisk /dev/sdb
[root@linux220 ~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130): +200M
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@linux220 ~]# ls -l /dev/sdb*
brw-r----- 1 root disk 8, 16 4월 21 18:01 /dev/sdb
brw-r----- 1 root disk 8, 17 4월 21 18:01 /dev/sdb1
[root@linux220 ~]# fdisk -l /dev/sdb
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
[EX3] 파티션 생성 2
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 2
First cylinder (26-130, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-130, default 130): +100M
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 38 104422+ 5 Extended
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (26-38, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-38, default 38):
Using default value 38
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 38 104422+ 5 Extended
/dev/sdb5 26 38 104391 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[EX4] 파티션 삭제
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 38 104422+ 5 Extended
/dev/sdb5 26 38 104391 83 Linux
Command (m for help): d
Partition number (1-5): 5
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 38 104422+ 5 Extended
Command (m for help): d
Partition number (1-5): 2
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
(추가적인 실습) fdisk 명령어를 통한 파티션 작업
그림4
[실습1]
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
Command (m for help): d
Selected partition 1
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130): +200M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (26-130, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-130, default 130): +200M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (51-130, default 51):
Using default value 51
Last cylinder or +size or +sizeM or +sizeK (51-130, default 130): +200M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Selected partition 4
First cylinder (76-130, default 76):
Using default value 76
Last cylinder or +size or +sizeM or +sizeK (76-130, default 130):
Using default value 130
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 50 200812+ 83 Linux
/dev/sdb3 51 75 200812+ 83 Linux
/dev/sdb4 76 130 441787+ 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@linux220 ~]# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 4770 38314993+ 83 Linux
/dev/sda2 4771 4901 1052257+ 82 Linux swap / Solaris
/dev/sda3 4902 4965 514080 83 Linux
/dev/sda4 4966 5221 2056320 5 Extended
/dev/sda5 4966 5029 514048+ 83 Linux
/dev/sda6 5030 5093 514048+ 83 Linux
/dev/sda7 5094 5157 514048+ 83 Linux
/dev/sda8 5158 5221 514048+ 83 Linux
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 50 200812+ 83 Linux
/dev/sdb3 51 75 200812+ 83 Linux
/dev/sdb4 76 130 441787+ 83 Linux
Disk /dev/sdc: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdc doesn't contain a valid partition table
[실습2]
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): d
Partition number (1-4): 1
Command (m for help): d
Partition number (1-4): 2
Command (m for help): d
Partition number (1-4): 3
Command (m for help): d
Selected partition 4
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130): +200M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (26-130, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-130, default 130): +200M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 3
First cylinder (51-130, default 51):
Using default value 51
Last cylinder or +size or +sizeM or +sizeK (51-130, default 130):
Using default value 130
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (51-130, default 51):
Using default value 51
Last cylinder or +size or +sizeM or +sizeK (51-130, default 130): +200M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (76-130, default 76):
Using default value 76
Last cylinder or +size or +sizeM or +sizeK (76-130, default 130): +200M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (101-130, default 101):
Using default value 101
Last cylinder or +size or +sizeM or +sizeK (101-130, default 130):
Using default value 130
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 50 200812+ 83 Linux
/dev/sdb3 51 130 642600 5 Extended
/dev/sdb5 51 75 200781 83 Linux
/dev/sdb6 76 100 200781 83 Linux
/dev/sdb7 101 130 240943+ 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[실습3]
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): d
Partition number (1-7): 7
Command (m for help): d
Partition number (1-6): 6
Command (m for help): d
Partition number (1-5): 5
Command (m for help): d
Partition number (1-5): 4
Warning: partition 4 has empty type
Command (m for help): d
Partition number (1-5): 3
Command (m for help): d
Partition number (1-4): 2
Command (m for help): d
Selected partition 1
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 1
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130):
Using default value 130
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130): +200M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (26-130, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-130, default 130): +200M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (51-130, default 51):
Using default value 51
Last cylinder or +size or +sizeM or +sizeK (51-130, default 130): +200M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (76-130, default 76):
Using default value 76
Last cylinder or +size or +sizeM or +sizeK (76-130, default 130):
Using default value 130
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 130 1044193+ 5 Extended
/dev/sdb5 1 25 200749+ 83 Linux
/dev/sdb6 26 50 200781 83 Linux
/dev/sdb7 51 75 200781 83 Linux
/dev/sdb8 76 130 441756 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[실습4]
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): d
Partition number (1-8): 1
Command (m for help): d
No partition is defined yet!
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130): +200M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 1
First cylinder (26-130, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-130, default 130):
Using default value 130
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (26-130, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-130, default 130):
Using default value 130
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 26 130 843412+ 5 Extended
/dev/sdb2 1 25 200781 83 Linux
/dev/sdb5 26 130 843381 83 Linux
Partition table entries are not in disk order
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
(질문) 확장파티션, 논리파티션은 왜 존재하는 것인가??
한장의 디스크로 4개 이상의 파티션을 만들어내기 위해서 번호는 구분자에 불과하다
디스크 작업 목표 : 1G 디스크를 4개의 파티션(각 용량 250MB)으로 구성하려고 한다
디스크 작업 방법 : ?
프라이머리 파티션 4개로 구성해도 되고
익스텐드 파티션 1개 만들어서 로지컬 4개로 구성해도 되고
아무튼 방법은 많다
but 번호는 순서대로 되어있어야 보기좋고 작업하기 편하다
and 운영체제가 들어가는 root 라는 파티션은 프라이머리 파티션으로 구성해야한다
(복원) 추가적인 실습이 끝나면 원래 파티션으로 복원한다.
/dev/sdb1 (1G)
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): d
Partition number (1-5): 1
Command (m for help): d
Selected partition 2
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@linux220 ~]# fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130):
Using default value 130
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 130 1044193+ 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
파일 시스템이란? 파일을 저장하고 관리하는 체계이다.
파일과 그 안에 든 자료를 저장하고 찾기 쉽도록 유지 관리 하는 방법을 말한다.
데이터를 저장하기 위해 우리는 물리적 장치인 디스크를 장착하고 장착한 디스크를 사용 할 수 있도록 우리는 파티션 영역을 지정해준다.
사용하고자 하는 영역을 지정해 주었으면 그 안에 데이터(파일과 자료)를 저장하고 관리 할 수 있도록 파일 시스템을 만들어 준다.
파일 시스템 종류
■ 파일시스템의 종류
---------------------------------------------------------------------------
ext2 (mkfs.ext2) 리눅스 이전 버전에서 사용하는 파일시스템
ext3 (mkfs.ext3) 현재 CentOS 5.X 사용하는 파일시스템
ext4 (mkfs.ext4) CentOS 6.X 사용하는 파일시스템
xfs (mkfs.xfs) 고성능 저널링 파일 시스템(eXtended File System)
msdos (mfs.msdos) MS-DOS filesystem
---------------------------------------------------------------------------
윈도우 리눅스(O) 유닉스(X)
리눅스 윈도우(O) 유닉스(O)
유닉스 윈도우(X) 리눅스(O)
[EX] 파일시스템에 대한 정보 확인
# export LANG=ko_KR.utf8
# man 5 filesystem
[root@linux220 ~]# export LANG=ko_KR.UTF-8
[root@linux220 ~]# man 5 filesystem
■ ext2 파일시스템
■ ext3 파일시스템
저널링 파일 시스템 (Journaling FileSystem) - ext3 파일 시스템 등장 배경
<주요 특징>
① ext3 파일 시스템의 가용성과 데이터 무결성 (Data Integrity)
② ext2 파일 시스템에서 ext3 파일 시스템으로 변환 용이
③ 속도
■ ext4 파일시스템
<주요 특징>
① 큰 파일 시스템 1 EBS까지의 볼륨과 16 TB 까지의 파일을 지
② Extents
③ 호환성
④ 저널 체크섬
⑤ 32000개 서브 디렉토리 제한이 깨짐
⑥ 온라인 조각모음
⑦ 빠른 파일 시스템 검사
⑧ 파일스탬프 향상
⑨ 영속적 선행 할당
⑩ 지연 할당
⑪ 그 외
■ xfs 파일시스템
<주요 특징>
① 저널링(신속한 복구 기능)
② 신속한 트랜잭션
③ 높은 확장성
④ 뛰어난 처리량
파일시스템의 구조 (포렌식할때 자세하게 설명해준다고 함)
(1) 파일시스템 구조 분석하기
[root@linux220 ~]# dumpe2fs
dumpe2fs 1.39 (29-May-2006)
Usage: dumpe2fs [-bfhixV] [-ob superblock] [-oB blocksize] device
mkfs 명령어를 통한 파일 시스템 생성
(명령어 형식)
# mkfs -t ext3 /dev/sdb1 (-t : File System Type)
# mkfs.ext3 /dev/sdb1
# mkfs -t ext2 /dev/sdb1
# mkfs.ext2 /dev/sdb1
# mkfs.ext3 -m 10 /dev/sdb1 (-m : minfree)
# mkfs.ext3 -L mkfs /dev/sdb1 (-L : Label)
# mkfs.ext3 -b [1024|2048|4096] /dev/sdb1 (-b : block size)
[참고] # dumpe2fs /dev/sda1
[EX1] 파일 시스템 종류별 생성
(선수작업)
- 새로운 디스크 장착 (EX: /dev/sdb(1 GB))
- 파티션 작업(EX: /dev/sdb1(primary(1 GB))
# fdisk -l /dev/sdb
[root@linux220 ~]# fdisk -l /dev/sdb
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 130 1044193+ 83 Linux
[root@linux220 ~]# mkfs
mkfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.msdos mkfs.vfat
[root@linux220 ~]# mkfs.ext2 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
130560 inodes, 261048 blocks
13052 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@linux220 ~]# mkfs.ext3 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
130560 inodes, 261048 blocks
13052 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[EX2] 파일 시스템 minfree 공간 생성
minfree(Minimum Free Space) : 파일시스템(EX: ext3)이 풀(Full) 났을 때 관리자만 쓸수 있는 공간으로
예약된 공간(0% ~ 50%, Default : 5%)
[root@linux220 ~]# mkfs.ext3 -m 10 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
130560 inodes, 261048 blocks
26104 blocks (10.00%) reserved for the super user //10%가 됨
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 33 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@linux220 ~]# mkfs.ext3 -L mkfs /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=mkfs //생성이 됨
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
130560 inodes, 261048 blocks
13052 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[EX4] 파일 시스템 블럭 사이즈 지정
[root@linux220 ~]# mkfs.ext3 -b 4096 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
130560 inodes, 261048 blocks
13052 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@linux220 ~]# mkfs.ext3 -b 3072 /dev/sdb1 /* 리눅스의 블럭 사이즈는 1,2,4 K이므로 3K 지정시 2K로 선택 */
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=2048 (log=1)
Fragment size=2048 (log=1)
130560 inodes, 522096 blocks
26104 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=534773760
32 block groups
16384 blocks per group, 16384 fragments per group
4080 inodes per group
Superblock backups stored on blocks:
16384, 49152, 81920, 114688, 147456, 409600, 442368
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 20 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@linux220 ~]# mkdir -p /disk1
[root@linux220 ~]# mount /dev/sdb1 /disk1
[root@linux220 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 36G 3.1G 31G 10% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
/dev/sda3 487M 11M 451M 3% /home
tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
/dev/sdb1 1004M 25M 929M 3% /disk1
[root@linux220 ~]# umount /disk1
[root@linux220 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 36G 3.1G 31G 10% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
/dev/sda3 487M 11M 451M 3% /home
tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
(정리) 디스크를 추가해서 작업하는 방법
(ㄱ) 디스크 인식
kudzu -> # ntsysv (# chkconfig kudzu on)
(ㄴ) 서버 Power OFF / 디스크 장착 / 부팅
(ㄷ) 파티션 작업
# ls -l /dev/sd?
# fdisk -l
# fdisk /dev/sdb
(ㄹ) 파일시스템 생성
# mkfs.ext3 /dev/sdb1
(ㅁ) 마운트 작업
# mkdir /disk1
# mount /dev/sdb1 /disk1
# vi /etc/fstab
minfree(Minimum Free Space)
DISK
--+-------------+--
| |
| |
| ext3 | <---- # df -h
| |
| |
+-------------+
| minfree | <---- # tune2fs -l /dev/sda1 | grep -i Reserved
--+-------------+--
DISK
+-------------+
| / |
+-------------+
| /home |
+-------------+
| /tmp | <----- File System Full
+-------------+
| /oracle |
+-------------+
full 나면 불필요한걸 지운다 + 용량을 증설한다
full 나면 관리자가 사용할수 있는 공간 = minfree
파일시스템에서 Minfree 공 간은 0(zero)일수 없다. 최소 minfree는 0%이다.
① 파일 시스템 생성시 minfree 공간 할당
(minfree 5%) # mkfs.ext3 /dev/sdb1
(minfree 1%) # mkfs.ext3 -m 1 /dev/sdb1
(minfree 5%) # tune2fs -m 5 /dev/sdb1
# mkfs.ext3 -m 1 /dev/sdb1 /* -m : minfree */
[root@linux220 ~]# mkfs.ext3 -m 1 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
130560 inodes, 261048 blocks
2610 blocks (1.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 20 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[참고] 선수작업
파티션 설정 : /dev/sdc1(1G)
# fdisk /dev/sdc
# fdisk -l /dev/sdc
[root@linux220 ~]# fdisk /dev/sdc
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-130, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-130, default 130):
Using default value 130
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@linux220 ~]# mkfs.ext3 -m 10 /dev/sdc1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
130560 inodes, 261048 blocks
26104 blocks (10.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@linux220 ~]# mkdir /raid0 /raid1
[root@linux220 ~]# mount /dev/sdb1 /raid0
[root@linux220 ~]# mount /dev/sdc1 /raid1
[root@linux220 ~]# df -h /raid0 /raid1
Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 1004M 18M 977M 2% /raid0 //민프리 1%
/dev/sdc1 1004M 18M 885M 2% /raid1 //민프리 10%
+-------------+
| |
| 사용중 |
| |
+-------------+
| |
| 남은공간 |
| |
+-------------+
| minfree |
+-------------+
[확인] minfree 공간 확인
# tune2fs –l /dev/sdb1 | grep –i Reserved
-> Reserved block count: 2610
# tune2fs -l /dev/sdc1 | grep -i Reserved
-> Reserved block count: 26104
[root@linux220 ~]# tune2fs -l /dev/sdb1 | grep -i Reserved
Reserved block count: 2610
Reserved GDT blocks: 63
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
[root@linux220 ~]# tune2fs -l /dev/sdc1 | grep -i Reserved
Reserved block count: 26104
Reserved GDT blocks: 63
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
2610(sdb1) 26104(sdc1) 10배 차이가 난다
[root@linux220 ~]# tune2fs -l /dev/sdb1
tune2fs 1.39 (29-May-2006)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: b6ba1b71-63b4-4469-8bea-9b130957f0c5
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 130560
Block count: 261048
Reserved block count: 2610
Free blocks: 252519
Free inodes: 130549
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 63
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 16320
Inode blocks per group: 510
Filesystem created: Thu Apr 21 19:11:18 2016
Last mount time: Thu Apr 21 19:13:33 2016
Last write time: Thu Apr 21 19:13:33 2016
Mount count: 1
Maximum mount count: 20
Last checked: Thu Apr 21 19:11:18 2016
Check interval: 15552000 (6 months)
Next check after: Tue Oct 18 19:11:18 2016
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Journal inode: 8
Default directory hash: tea
Directory Hash Seed: 1a8db548-12ed-4f23-8e90-a272e3f70949
Journal backup: inode blocks
[root@linux220 ~]# tune2fs -l /dev/sdc1
tune2fs 1.39 (29-May-2006)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: 320af8d8-e9b5-48f5-b28a-6cfe7775d7ea
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 130560
Block count: 261048
Reserved block count: 26104
Free blocks: 252519
Free inodes: 130549
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 63
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 16320
Inode blocks per group: 510
Filesystem created: Thu Apr 21 19:12:54 2016
Last mount time: Thu Apr 21 19:13:36 2016
Last write time: Thu Apr 21 19:13:36 2016
Mount count: 1
Maximum mount count: 38
Last checked: Thu Apr 21 19:12:54 2016
Check interval: 15552000 (6 months)
Next check after: Tue Oct 18 19:12:54 2016
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Journal inode: 8
Default directory hash: tea
Directory Hash Seed: 80796baf-97de-46af-98b5-c63e1000a0d6
Journal backup: inode blocks
② 파일시스템 생성 이후 minfree 공간 변경
[root@linux220 ~]# tune2fs -m 1 /dev/sdc1
tune2fs 1.39 (29-May-2006)
Setting reserved blocks percentage to 1% (2610 blocks)
[root@linux220 ~]# df -h /raid0 /raid1
Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 1004M 18M 977M 2% /raid0
/dev/sdc1 1004M 18M 977M 2% /raid1
(실무예) df -h 출력 결과 해석
# df –h
-------------------------------------------------------
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 17G 3.9G 12G 26% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
/dev/sda3 487M 11M 451M 3% /home
-------------------------------------------------------
[root@linux220 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 36G 3.1G 31G 10% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
/dev/sda3 487M 11M 451M 3% /home
tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
/dev/sdb1 1004M 18M 977M 2% /raid0
/dev/sdc1 1004M 18M 977M 2% /raid1
(실무예) 실무에서 minfree 공간을 조정하는 경우
■ 실무에서 사용되는 파티션의 크기? minfree 5%
# mkfs.ext3 /dev/sdb1
파티션 풀(Full) ---> 요청 삭제
-> 불 필요한 파일 삭제(시간 필요)
-> 원인 분석(시간 필요)
(작업절차) /was/logs 파티션(Full, /dev/sdb1)
(ㄱ) minfree 5% -> 1% (남는 공간이 4% 남게 된다 -> 서비스가 기동된다, 약간 시간을 번다)
# tune2fs -m 1 /dev/sdb1
(ㄴ) 불 필요한 파일 삭제 (추가 시간을 번다)
(ㄷ) 원인 분석 (주어진 시간이 끝나기전에/full나기 전에 원인을 분석해야만 한다)
(ㄹ) minfree 1% -> 5% (나중을 위해서)
# tune2fs -m 5 /dev/sdb1
지우기전에 필요한 파일 물어봐야한다 회의해서 알려주는데 시간이 걸린다
그 시간동안에 원인을 분석해야한다
실제로는 또 잘 안쓰인다고 그러고... 뭐지
배웠으면 어디에 써먹는지는 기억하고 있어야 한다 그래 맞는 말이야
많이 치는 커맨드는 나중에 실무에서도 많이 쓰는 커맨드다
파일 시스템 점검 fsck (File system check)
옛날 윈도우에서 강제로 전원을 끊고 재기동 할 때 뜨는 스캔디스크 와 같은것
파일시스템이 전원이상이나 커널에서 동작하는 프로그램의 이상, 하드웨어적인 이상, 비정상적인 시스템 shutdown이 발생하여 데미지(Damaged)를 입게 되면,
파일시스템을 fsck 명령어를 통해 파일시스템의 무결성을 점검하게 된다.
fsck 명령어와 비슷한 명령어로는 fsck.ext3, e2fsck가 있다.
이들 모두는 파일시스템을 점검하고, 손상된 파 일시스템을 복구하는 명령어이다.
(명령어 형식)
# fsck /dev/sda1
# fsck -y /dev/sd1 //-y 옵션 : 자동으로 대답해준다 yes 라고
# fsck /dev/sda1
# fsck.ext3 /dev/sda1
# e2fsck /dev/sda1
(주의!!!) fsck 명령어 사용시 주의점
마운트된 파일시스템에 대해서 fsck 명령어를 수행하지 말아야 한다.
/home, /data1, /data2, .... -> umount CMD + fsck CMD
/, /usr, /var, /tmp -> single user mode + fsck CMD
-------+---------------+------- ---- # fsck /dev/sda1
| f=2 | |
+---------------+ |
| file1 | V
| | ----
| file2 |
| |
| |
| file3(생성) |
| |
-------+---------------+-------
fsck 돌릴때 용량이 크면 실행시간도 늘어난다 오래걸린다고
마운트한 상태에서 fsck 하게 되면 나중에 추가된 파일을 삭제하게 된다
싱글유저모드(일종의 윈도우 안전모드)
[EX] fsck 실습
# e2[TAB][TAB]
[root@linux220 ~]# e2
e2fsck e2image e2label
[root@linux220 ~]# e2
[root@linux220 ~]# fsck.
fsck.cramfs fsck.ext2 fsck.ext3 fsck.msdos fsck.vfat
[root@linux220 ~]# fsck.
[root@linux220 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 36G 3.1G 31G 10% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
/dev/sda3 487M 11M 451M 3% /home
tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
/dev/sdb1 1004M 18M 977M 2% /raid0
/dev/sdc1 1004M 18M 977M 2% /raid1
[root@linux220 ~]# fsck /dev/sda3 (# fsck /home)
fsck 1.39 (29-May-2006)
e2fsck 1.39 (29-May-2006)
/dev/sda3 is mounted.
WARNING!!! Running e2fsck on a mounted filesystem may cause
SEVERE filesystem damage.
Do you really want to continue (y/n)? yes //이러면 안된다 서버는 여럿이 쓰니까 절대 안된다
/home: recovering journal
/home: clean, 20/128520 files, 26775/514080 blocks
[root@linux220 ~]# umount /home
[root@linux220 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 36G 3.1G 31G 10% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
/dev/sdb1 1004M 18M 977M 2% /raid0
/dev/sdc1 1004M 18M 977M 2% /raid1
[root@linux220 ~]# fsck /dev/sda3 (# fsck /home)
fsck 1.39 (29-May-2006)
e2fsck 1.39 (29-May-2006)
/home: clean, 20/128520 files, 26775/514080 blocks
[root@linux220 ~]# fsck -y /dev/sda3
fsck 1.39 (29-May-2006)
e2fsck 1.39 (29-May-2006)
/home: clean, 20/128520 files, 26775/514080 blocks
[root@linux220 ~]# e2fsck /dev/sda3
e2fsck 1.39 (29-May-2006)
/home: clean, 20/128520 files, 26775/514080 blocks
[root@linux220 ~]# mount /home //다시 마운트 해야해
[root@linux220 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 36G 3.1G 31G 10% /
/dev/sda8 487M 11M 451M 3% /data1
/dev/sda7 487M 11M 451M 3% /data2
/dev/sda6 487M 11M 451M 3% /data3
/dev/sda5 487M 11M 451M 3% /data4
tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
/dev/sdb1 1004M 18M 977M 2% /raid0
/dev/sdc1 1004M 18M 977M 2% /raid1
/dev/sda3 487M 11M 451M 3% /home
(실무 예) "# fsck -y /dev/sda1" 사용시
# script -a fsck.log
# fsck –y /dev/sda3
# exit
# cat fsck.log
내용이 너무 길잖아 그래서 다 못봄 그러니까 파일로 만들어서 확인해야해 나중에 분명 에러가 길어져
script CMD가 뭐였더라..
싱글유저모드 들어가려면 GRUB 메뉴, 런레벨1번이 싱글유저모드
파일 시스템 사용량 측정 (df, du)
(1) df (disk free space) - 파티션 단위의 사용량 점검
df 명령어는 남은 디스크 블럭과 남은 파일의 수를 출력하는 명령어이다.
(명령어 형식)
# df
# df –k (-k : KB) //실무에 나가서 제일 많이 쓰게 될 것이니라
# df –m (-m : MB)
# df –h (-h : human)
# df –k /data1
# df -k /data1 /home
# df -T (# alias df='df -T -h') //-T : 파일 시스템의 종류와 함께 디스크의 정보를 보여줌
[root@linux220 ~]# df -k /data1
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda8 497829 10544 461583 3% /data1
[root@linux220 ~]# df -k /data1 /home
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda8 497829 10544 461583 3% /data1
/dev/sda3 497861 10556 461601 3% /home
[root@linux220 ~]# df -T //파일시스템 타입을 보여준다!!
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext3 37114672 3236984 31961940 10% /
/dev/sda8 ext3 497829 10544 461583 3% /data1
/dev/sda7 ext3 497829 10544 461583 3% /data2
/dev/sda6 ext3 497829 10544 461583 3% /data3
/dev/sda5 ext3 497829 10544 461583 3% /data4
tmpfs tmpfs 517504 0 517504 0% /dev/shm
/dev/hdc iso9660 4087030 4087030 0 100% /media/CentOS_5.5_Final
/dev/sdb1 ext3 1027768 17692 999636 2% /raid0
/dev/sdc1 ext3 1027768 17692 999636 2% /raid1
/dev/sda3 ext3 497861 10556 461601 3% /home
[root@linux220 ~]# df -T -h
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext3 36G 3.1G 31G 10% /
/dev/sda8 ext3 487M 11M 451M 3% /data1
/dev/sda7 ext3 487M 11M 451M 3% /data2
/dev/sda6 ext3 487M 11M 451M 3% /data3
/dev/sda5 ext3 487M 11M 451M 3% /data4
tmpfs tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc iso9660 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
/dev/sdb1 ext3 1004M 18M 977M 2% /raid0
/dev/sdc1 ext3 1004M 18M 977M 2% /raid1
/dev/sda3 ext3 487M 11M 451M 3% /home
# df
-> 출력 내용 생략($HOME/.bashrc)
-> # vi ~/.bashrc
alias df='df –h -T’
# . ~/.bashrc
# alias df
(2) du (disk usage) - 디렉토리 단위의 사용량 점검
du 명령어는 디스크와 파일의 사용량을 보여준다.
du 명령어에 -s, -a, -k, -h 옵션 등을 사용하면 출력 결과는 디 렉토리와 파일의 크기, 사용된 공간, 남은 공간, 전체에서 사용중인 사용량을 출력한다.
(명령어 형식)
# du /etc
# du –k /etc /* -k : KBytes */
# du –m /etc /* -m : MBytes */
# du –h /etc /* -h : human */
# du –ak /etc
# du –am /etc
# du -ah /etc
# du –sk /etc /* -s : sum */
# du –sm /etc
# du -sh /etc
[EX] du 명령어에 대한 기본 실습
# cd /test && rm -rf /test/*
# mkdir -p dir1/dir2/dir3
# mkdir dir1/dir4
# cp /etc/passwd file1
# cp file1 dir1
# cp file1 dir1/dir2
# cp file1 dir1/dir2/dir3
# cp file1 dir1/dir4
[root@linux220 /test]# du dir1
8 dir1/dir4
8 dir1/dir2/dir3
16 dir1/dir2
32 dir1
[root@linux220 /test]# du -k dir1
8 dir1/dir4
8 dir1/dir2/dir3
16 dir1/dir2
32 dir1
[root@linux220 /test]# du -m dir1
1 dir1/dir4
1 dir1/dir2/dir3
1 dir1/dir2
1 dir1
[root@linux220 /test]# du -h dir1
8.0K dir1/dir4
8.0K dir1/dir2/dir3
16K dir1/dir2
32K dir1
[root@linux220 /test]# du -a dir1
4 dir1/dir4/file1
8 dir1/dir4
4 dir1/file1
4 dir1/dir2/dir3/file1
8 dir1/dir2/dir3
4 dir1/dir2/file1
16 dir1/dir2
32 dir1
[root@linux220 /test]# du -s dir1 /-s : sum
32 dir1
[참고] (윈도우즈 <-----> 리눅스) 비교
# df –k (# df –h)
# du -sk /var
# cd /var
# du -sk * | sort -nr | more
# find /var -size +300M -type f
[root@linux220 /test]# df -k
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext3 37114672 3237024 31961900 10% /
/dev/sda8 ext3 497829 10544 461583 3% /data1
/dev/sda7 ext3 497829 10544 461583 3% /data2
/dev/sda6 ext3 497829 10544 461583 3% /data3
/dev/sda5 ext3 497829 10544 461583 3% /data4
tmpfs tmpfs 517504 0 517504 0% /dev/shm
/dev/hdc iso9660 4087030 4087030 0 100% /media/CentOS_5.5_Final
/dev/sdb1 ext3 1027768 17692 999636 2% /raid0
/dev/sdc1 ext3 1027768 17692 999636 2% /raid1
/dev/sda3 ext3 497861 10556 461601 3% /home
[root@linux220 /test]# du -sk /var
72840 /var
[root@linux220 /test]# cd /var
[root@linux220 /var]# du -sk *
12 account
14012 cache
8 crash
28 db
32 empty
16 ftp
8 games
20 gdm
46832 lib
8 local
32 lock
2220 log
4 mail
140 named
8 nis
8 opt
8 preserve
8 racoon
388 run
248 spool
8 tmp
8 tux
8752 www
24 yp
[root@linux220 /var]# du -sk * | sort -nr | more
[root@linux220 /var]# du -sk * | sort -nr
46832 lib
14012 cache
8752 www
2220 log
388 run
248 spool
140 named
32 lock
32 empty
28 db
24 yp
20 gdm
16 ftp
12 account
8 tux
8 tmp
8 racoon
8 preserve
8 opt
8 nis
8 local
8 games
8 crash
4 mail
리눅스에서는 드라이브 라고 하지 않고 파일시스템 이라고 한다 data1 파일시스템 home 파일시스템 뭐 이런식
커널패닉 커널패닉 커널패닉
차근차근 배워 반복해서 보다보면
마운트 확인
■ 현재 마운트 할 때 사용하는 명령어 : mount CMD
■ 부팅시 마운트 할 때 사용하는 파일 : /etc/fstab (부팅시에 자동 마운트)
[명령어 형식]
# df -k /* 마운트 상황 정보, 디스크 사용량 점검 확인 */
# mount /* 마운트 옵션 정보 확인, 마운트 시간 확인 */
[EX] df 명령어 출력 결과 해석
# df -k (# df -h)
[root@linux220 /var]# df -k
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext3 37114672 3237024 31961900 10% /
/dev/sda8 ext3 497829 10544 461583 3% /data1
/dev/sda7 ext3 497829 10544 461583 3% /data2
/dev/sda6 ext3 497829 10544 461583 3% /data3
/dev/sda5 ext3 497829 10544 461583 3% /data4
tmpfs tmpfs 517504 0 517504 0% /dev/shm
/dev/hdc iso9660 4087030 4087030 0 100% /media/CentOS_5.5_Final
/dev/sdb1 ext3 1027768 17692 999636 2% /raid0
/dev/sdc1 ext3 1027768 17692 999636 2% /raid1
/dev/sda3 ext3 497861 10556 461601 3% /home
[root@linux220 /var]# df -h
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext3 36G 3.1G 31G 10% /
/dev/sda8 ext3 487M 11M 451M 3% /data1
/dev/sda7 ext3 487M 11M 451M 3% /data2
/dev/sda6 ext3 487M 11M 451M 3% /data3
/dev/sda5 ext3 487M 11M 451M 3% /data4
tmpfs tmpfs 506M 0 506M 0% /dev/shm
/dev/hdc iso9660 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
/dev/sdb1 ext3 1004M 18M 977M 2% /raid0
/dev/sdc1 ext3 1004M 18M 977M 2% /raid1
/dev/sda3 ext3 487M 11M 451M 3% /home
(df -h 출력 화면 해석)
-------------------------------------------------------------------
/dev/sda1 장치 이름(Filesystem)
18G 전체 공간(Size)
5.3G 사용중인 공간(Used)
12G 남은 공간(Avail)
32% 전체공간에서 사용중인 공간의 백분율(Use%)
/ 마운트 포인트(Mounted on)
-------------------------------------------------------------------
[root@linux220 /var]# mount
/dev/sda1 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda8 on /data1 type ext3 (rw)
/dev/sda7 on /data2 type ext3 (rw)
/dev/sda6 on /data3 type ext3 (rw)
/dev/sda5 on /data4 type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
none on /proc/fs/vmblock/mountPoint type vmblock (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/hdc on /media/CentOS_5.5_Final type iso9660 (ro,noexec,nosuid,nodev,uid=0)
/dev/sdb1 on /raid0 type ext3 (rw)
/dev/sdc1 on /raid1 type ext3 (rw)
/dev/sda3 on /home type ext3 (rw)
(mount 명령어 출력결과 해석)
----------------------------------------------
/dev/sda1 장치 이름
/ 마운트 포인터
ext3 마운트 파일시스템
(rw) 마운트 옵션
----------------------------------------------
[참고] mount 명령어 출력 형식 보기 좋게 출력하기
# mount | column -t (# CMD | column -t)
[root@linux220 /var]# mount | column -t
/dev/sda1 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda8 on /data1 type ext3 (rw)
/dev/sda7 on /data2 type ext3 (rw)
/dev/sda6 on /data3 type ext3 (rw)
/dev/sda5 on /data4 type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
none on /proc/fs/vmblock/mountPoint type vmblock (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/hdc on /media/CentOS_5.5_Final type iso9660 (ro,noexec,nosuid,nodev,uid=0)
/dev/sdb1 on /raid0 type ext3 (rw)
/dev/sdc1 on /raid1 type ext3 (rw)
/dev/sda3 on /home type ext3 (rw)
마운트에 관련한 파일들
■ /proc/mounts : proc 가상 파일 시스템의 일부 (리눅스 커널이 시스템 상태를 파일 형식으로 보여주는 것)
■ /etc/mtab : 현재 마운트된 정보를 담는다.
■ /etc/fstab : 부팅시에 마운트 할 만한 정보를 담는다.
[root@linux220 /var]# cat /etc/mtab
/dev/sda1 / ext3 rw 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
/dev/sda8 /data1 ext3 rw 0 0
/dev/sda7 /data2 ext3 rw 0 0
/dev/sda6 /data3 ext3 rw 0 0
/dev/sda5 /data4 ext3 rw 0 0
tmpfs /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
none /proc/fs/vmblock/mountPoint vmblock rw 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
/dev/hdc /media/CentOS_5.5_Final iso9660 ro,noexec,nosuid,nodev,uid=0 0 0
/dev/sdb1 /raid0 ext3 rw 0 0
/dev/sdc1 /raid1 ext3 rw 0 0
/dev/sda3 /home ext3 rw 0 0
[root@linux220 /var]# cat /etc/mtab | grep /dev/sda1
/dev/sda1 / ext3 rw 0 0
[EX] /etc/mtab 파일 실습
[root@linux220 /var]# cat /etc/mtab | grep sdb1
/dev/sdb1 /raid0 ext3 rw 0 0
[root@linux220 /var]# umount /raid0
[root@linux220 /var]# umount /raid1
[root@linux220 /var]# df -k
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext3 37114672 3237024 31961900 10% /
/dev/sda8 ext3 497829 10544 461583 3% /data1
/dev/sda7 ext3 497829 10544 461583 3% /data2
/dev/sda6 ext3 497829 10544 461583 3% /data3
/dev/sda5 ext3 497829 10544 461583 3% /data4
tmpfs tmpfs 517504 0 517504 0% /dev/shm
/dev/hdc iso9660 4087030 4087030 0 100% /media/CentOS_5.5_Final
/dev/sda3 ext3 497861 10556 461601 3% /home
[root@linux220 /var]# cat /etc/mtab | grep sdb1
[root@linux220 /var]# cd
[root@linux220 ~]# mkdir -p /testmount
[root@linux220 ~]# mount /dev/sdb1 /testmount
[root@linux220 ~]# cat /etc/mtab | grep /dev/sdb1
/dev/sdb1 /testmount ext3 rw 0 0
[root@linux220 ~]# df -k
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext3 37114672 3237028 31961896 10% /
/dev/sda8 ext3 497829 10544 461583 3% /data1
/dev/sda7 ext3 497829 10544 461583 3% /data2
/dev/sda6 ext3 497829 10544 461583 3% /data3
/dev/sda5 ext3 497829 10544 461583 3% /data4
tmpfs tmpfs 517504 0 517504 0% /dev/shm
/dev/hdc iso9660 4087030 4087030 0 100% /media/CentOS_5.5_Final
/dev/sda3 ext3 497861 10556 461601 3% /home
/dev/sdb1 ext3 1027768 17692 999636 2% /testmount
[root@linux220 ~]# umount /testmount
[root@linux220 ~]# cat /etc/mtab | grep /dev/sdb1
(2) /etc/fstab 파일 (매우중요!!!!!!!)
/etc/fstab 파일은 부팅시에 마운트 할 만한 정보를 담고 있다.
부팅시 커널은 /etc/fstab 파일을 읽어서 마운트 할 디바이스를 찾고
이 디바이스들을 /etc/fstab파일에 명시된 디렉토리에 마운트 시킨다.
[root@linux220 ~]# cat /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/data1 /data1 ext3 defaults 1 2
LABEL=/data2 /data2 ext3 defaults 1 2
LABEL=/data3 /data3 ext3 defaults 1 2
LABEL=/data4 /data4 ext3 defaults 1 2
LABEL=/home /home ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-sda2 swap swap defaults 0 0
그림5
☀ 옵션 : 파일 시스템 속성을 설정하는 옵션
·defaults: rw, nouser, auto, exec, suid 속성을 모두 가지는 옵션
·auto : 부팅시 자동 마운트
·noauto : 부팅시 자동 마운트 안함
·exec : 실행 파일이 실행되는 것을 허용 함
·noexec : 실행 파일이 실행되는 것을 허용 안함
·suid : SetUID, SetGID의 사용을 허용하는 옵션
·ro[read-only] : 읽기 전용
·rw[read-write] : 읽고 쓰기 가능
·user : 일반 계정 사용자들도 마운트 할 수 있는 옵션
·nouser : root만 mount 가능
·usrquota : 일반 사용자 quota 적용
·grpquota : 그룹 quota 적용
-dump 관련 설정 : 0 or 1
· 0: 덤프되지 않은 파일 시스템
· 1: 데이터 백업을 위해 dump 가능
- 파일 점검 옵션 : 0, 1, 2 값을 지정
· 0: 부팅시 fsck를 사용하지 않음 ·
· 1: 루트 파일 시스템을 의미
· 2: 루트 파일 시스템 이외의 파일
시스템을 의미
(/etc/fstab 파일 출력결과 해석)
----------------------------------------------------------------------------------------------------------
필드 설 명
----------------------------------------------------------------------------------------------------------
LABEL=/ 마운트할 장치이름
/ 마운트포인터, 파일 시스템을 마운트해서 사용할 경로를 지정
ext3 마운트할 파일 시스템의 형식 지정 (리눅스 : ext3, 윈도우 : FAT, NTFS, CD-ROM : iso9660)
defaults 마운트 할 때 사용할 옵션 지정
1 dump라는 프로그램에 의해 덤프 파일시스템 지정. (ext3 리눅스 파티션 - 1, 이외 파티션 - 0으로 할당)
1 부팅과정에서 파일 시스템의 이상 여부를 확인하고 문제가 있다면 자동으로 점검
0 : 파일 시스템 점검하지 않는다.
1 : 파일 시스템 점검 시 가장 먼저 check
2 이상 : 파일 시스템 점검 시 순서
----------------------------------------------------------------------------------------------------------
[참고] /etc/fstab 파일의 해석중 LABEL=/data4 의미는?
'LABEL=/data4' 형식은 RedHat Linux 계열에서만 존재한다.
[EX] /etc/fstab 파일 실습
(선수작업) 현재 /testmount 마운트가 되어 있지 않다.
# df -h
# umount /testmount
# vi /etc/fstab
/dev/sdb1 /testmount ext3 defaults 1 2
-> (부팅) # mount -t ext3 -o defaults /dev/sdb1 /testmount
[root@linux220 ~]# df -h
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext3 36G 3.1G 31G 10% /
/dev/sda8 ext3 487M 11M 451M 3% /data1
/dev/sda7 ext3 487M 11M 451M 3% /data2
/dev/sda6 ext3 487M 11M 451M 3% /data3
/dev/sda5 ext3 487M 11M 451M 3% /data4
/dev/sda3 ext3 487M 11M 451M 3% /home
tmpfs tmpfs 506M 0 506M 0% /dev/shm
/dev/sdb1 ext3 1004M 18M 977M 2% /testmount
/dev/hdc iso9660 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
[참고] 로컬 & 원격 파일시스템 마운트시 (Local & NFS Mount)
■ 로컬 영역 파일 시스템 마운트시
# mount -t ext3 [-o options] /dev/hda1 /testmount
# mount /dev/hda1 /testmount
■ 원격 영역 파일 시스템 마운트시
# mount -t nfs [-o options] [서버ip주소]:/root/shell /testmount
# mount 172.16.9.252:/root/shell /testmount
[EX] NFS 간단한 테스트
# showmount -e 172.16.9.252
/nfstest 172.16.0.0/16
# mkdir –p /mnt/server
# mount 172.16.9.252:/nfstest /mnt/server
# df –h
172.16.9.252:/nfstest
nfs 18G 5.3G 12G 31% /mnt/server
# cd
# umount /mnt/server
[root@linux220 ~]# showmount -e 172.16.9.252
Export list for 172.16.9.252:
/nfstest 172.16.0.0/16
/export/centos 172.16.0.0/16
/backup/linux249 172.16.1.249
/backup/linux240 172.16.1.240
/backup/linux239 172.16.1.239
/backup/linux238 172.16.1.238
/backup/linux237 172.16.1.237
/backup/linux236 172.16.1.236
/backup/linux235 172.16.1.235
/backup/linux234 172.16.1.234
/backup/linux233 172.16.1.233
/backup/linux232 172.16.1.232
/backup/linux231 172.16.1.231
/backup/linux230 172.16.1.230
/backup/linux229 172.16.1.229
/backup/linux228 172.16.1.228
/backup/linux227 172.16.1.227
/backup/linux226 172.16.1.226
/backup/linux225 172.16.1.225
/backup/linux224 172.16.1.224
/backup/linux223 172.16.1.223
/backup/linux222 172.16.1.222
/backup/linux221 172.16.1.221
/backup/linux220 172.16.1.220
/backup/linux219 172.16.1.219
/backup/linux218 172.16.1.218
/backup/linux217 172.16.1.217
/backup/linux216 172.16.1.216
/backup/linux215 172.16.1.215
/backup/linux214 172.16.1.214
/backup/linux213 172.16.1.213
/backup/linux212 172.16.1.212
/backup/linux211 172.16.1.211
/backup/linux210 172.16.1.210
/backup/linux209 172.16.1.209
/backup/linux208 172.16.1.208
/backup/linux207 172.16.1.207
/backup/linux206 172.16.1.206
/backup/linux205 172.16.1.205
/backup/linux204 172.16.1.204
/backup/linux203 172.16.1.203
/backup/linux202 172.16.1.202
/backup/linux201 172.16.1.201
/backup/linux200 172.16.1.200
/root/packages/vmwaretools 172.16.0.0/16
[root@linux220 ~]# mkdir /mnt/server
[root@linux220 ~]# mount 172.16.9.252:/nfstest /mnt/server
[root@linux220 ~]# df -h
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext3 36G 3.1G 31G 10% /
/dev/sda8 ext3 487M 11M 451M 3% /data1
/dev/sda7 ext3 487M 11M 451M 3% /data2
/dev/sda6 ext3 487M 11M 451M 3% /data3
/dev/sda5 ext3 487M 11M 451M 3% /data4
/dev/sda3 ext3 487M 11M 451M 3% /home
tmpfs tmpfs 506M 0 506M 0% /dev/shm
/dev/sdb1 ext3 1004M 18M 977M 2% /testmount
/dev/hdc iso9660 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
172.16.9.252:/nfstest
nfs 18G 12G 5.4G 69% /mnt/server
[root@linux220 ~]# cd /mnt/server
[root@linux220 /mnt/server]# ls
bashrc.txt file1
[root@linux220 /mnt/server]# cat bashrc.txt
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
#
# Sfecific Configuration
#
# (1) Bash Shell Function
set -o vi
# (2) Variable Definition
# export PS1='[\w]\$ '
# export PS1='[\h:\w]\$ '
export PS1='\e[34;42m[\h@\w]\$ \e[0m '
export HISTTIMEFORMAT='%C %T '
# (3) Alias
alias c='clear'
alias ls='ls --color=tty -hF'
alias vi='/usr/bin/vim'
alias grep='grep --color -i'
alias df='df -T -h'
alias dff='df -t ext3 ; echo ; df -i'
#alias mount='mount | column -t' # mount CMD error
alias gzip='gzip -v'
alias gunzip='gunzip -v'
alias bzip2='bzip2 -v'
alias bunzip2='bunzip2 -v'
#
# Compatible
#
alias ipconfig='/sbin/ifconfig'
alias topas='/bin/top'
alias lspv='/bin/ls -l /dev/sd?'
#
# Log Monitoring
#
alias mlog='tail -f /var/log/messages'
#
# DNS Alias
#
alias named.caching-nameserver.conf='vi /var/named/chroot/etc/named.caching-nameserver.conf'
alias named.rfc1912.zones='vi /var/named/chroot/etc/named.rfc1912.zones'
alias DNS='cd /var/named/chroot/var/named'
alias named-checkconf='named-checkconf /var/named/chroot/etc/named.caching-nameserver.conf'
#
# FTP Alias
#
alias FTP='cd /etc/vsftpd'
alias vsftpd.conf='vi /etc/vsftpd/vsftpd.conf'
alias ftpusers='vi /etc/vsftpd/ftpusers'
alias user_list='vi /etc/vsftpd/user_list'
alias flog='tail -f /var/log/xferlog'
#
# Mail Alias
#
alias MAIL='cd /etc/mail'
alias sendmail.cf='vi /etc/mail/sendmail.cf'
alias mlog='tail -f /var/log/maillog'
#
# Samba Alias
#
alias smb.conf='vi /etc/samba/smb.conf'
alias SMB='cd /etc/samba'
alias smblog='tail –f /var/log/samba/smbd.log'
alias nmblog='tail -f /var/log/samba/nmbd.log'
[root@linux220 /mnt/server]# ls
bashrc.txt file1 file2
[root@linux220 /mnt/server]# ls
bashrc.txt file1 file2 file3
[root@linux220 /mnt/server]# cp file3 /test
[root@linux220 /mnt/server]# cd /test
[root@linux220 /test]# cat file3
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
tty:x:5:
disk:x:6:root
lp:x:7:daemon,lp
mem:x:8:
kmem:x:9:
wheel:x:10:root
mail:x:12:mail
news:x:13:news
uucp:x:14:uucp
man:x:15:
games:x:20:
gopher:x:30:
dip:x:40:
ftp:x:50:
lock:x:54:
nobody:x:99:
users:x:100:
utmp:x:22:
utempter:x:35:
audio:x:63:gdm
distcache:x:94:
nscd:x:28:
floppy:x:19:
vcsa:x:69:
apache:x:48:
rpc:x:32:
mailnull:x:47:
smmsp:x:51:
webalizer:x:67:
dovecot:x:97:
squid:x:23:
pcap:x:77:
slocate:x:21:
ntp:x:38:
ecryptfs:x:101:
dbus:x:81:
avahi:x:70:
rpcuser:x:29:
nfsnobody:x:65534:
named:x:25:
hsqldb:x:96:
sshd:x:74:
haldaemon:x:68:
avahi-autoipd:x:102:
xfs:x:43:
gdm:x:42:
sabayon:x:86:
fedora:x:500:
user02:x:502:
oprofile:x:16:
user01:x:503:
mail01:x:504:
mail02:x:505:
team01:x:506:
team02:x:507:
teamsub1:x:508:
teamsub2:x:509:
teamsub3:x:510:
teamsub4:x:511:
oracle:x:512:
[root@linux220 /test]# cd
[root@linux220 ~]# umount /mnt/server
[root@linux220 ~]# df -h
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext3 36G 3.1G 31G 10% /
/dev/sda8 ext3 487M 11M 451M 3% /data1
/dev/sda7 ext3 487M 11M 451M 3% /data2
/dev/sda6 ext3 487M 11M 451M 3% /data3
/dev/sda5 ext3 487M 11M 451M 3% /data4
/dev/sda3 ext3 487M 11M 451M 3% /home
tmpfs tmpfs 506M 0 506M 0% /dev/shm
/dev/sdb1 ext3 1004M 18M 977M 2% /testmount
/dev/hdc iso9660 3.9G 3.9G 0 100% /media/CentOS_5.5_Final
'모의해킹 침해대응 전문가 과정' 카테고리의 다른 글
20160425 리눅스 관리자 (0) | 2016.04.27 |
---|---|
20160422 리눅스 관리자 (0) | 2016.04.23 |
20160420 리눅스 관리자 (0) | 2016.04.21 |
20160420 리눅스 기초 (0) | 2016.04.21 |
20160419 리눅스 기초 (0) | 2016.04.20 |