Solaris Admin I 과정 정리
1. 네트워크 관리
(선수 지식)
NIC 종류
- 물리적인 NIC(EX : e1000g0)
- 논리적인 NIC(EX : e1000g0:1)
NIC 이름 체계
(네트워크 설정)
IP 설정
현재) ifconfig -a, ifconfig (plumb -> up -> IP)
부팅) /etc/hostname.e1000g0 , /etc/hosts, /etc/netmasks
Defaultrouter 설정
현재) netstat -nr, route add default 172.16.0.1
부팅) /etc/defaultrouter
DNS Client 설정
/etc/nsswitch.conf, /etc/resol.conf
(선수지식)
네트워크 관련 파일들
/etc/hosts
/etc/hostname.xxn
/etc/nodename
/etc/defaultrouter
/etc/nsswitch.conf
/etc/resolv.conf
(네트워크 시나리오 작업)
호스트 이름 변경 작업(solrais2XX -> knit2XX)
/etc/nodename, /etc/hosts, /etc/hostname.e1000g0
IP 변경 작업(EX: 172.16.9.2XX -> 172.16.9.1XX)
/etc/hostname.e1000g0, /etc/hosts
NIC 추가 작업(EX: e1000g1(192.168.10.2XX / 255.255.255.0)
/etc/hostname.e1000g1, /etc/hosts, /etc/netmasks
서버 이전 작업
2. 디렉토리 구조
# man -s 5 filesystem
# ls /
3. 장치 관리(EX: 디스크 장치 관리)
디스크 장착
(ㄱ) 장치 인식(EX : devfsadm CMD) - 장치이름을 만드는 과정(장치관리자 아이콘)
(ㄴ) 파티션 작업(EX : format CMD)
(ㄷ) 파일시스템 작업(EX : newfs CMD)
(ㄹ) 마운트 작업( EX: mount CMD, /etc/vfstab)
(1) 장치 인식
(선수지식)
물리적인 디스크 구조
sector -> track -> cylinder -> partition(slice) -> disk
디스크/파티션 이름
/dev/dsk/c#t#d#s#
장치 이름 종류
Physical Device Name
Logical Device Name
Instance Name
장치 이름 확인
# cat /etc/path_to_inst | egrep '(sd|dad|cmdk|ata)'
# prtconf | grep -v not
# format
[참고] block/character dvice file
[참고] major /minor device file
(장치 인식)
# touch /reconfigure : init 5
ok boot -r
# reboot -- -r
# devfsadm -v
# drvconfig -c disk ; disks
[참고] DISK/NIC/Tape Device 추가
(2) 파티션 작업
(선수지식)
[ DISK ] <- disk/label -> [ MEM ] <- name/save -> [ /etc/format.dat ]
verify print select
(파티션 작업)
- 직접 설정하는 방법
- "All Free Hog" 사용하는 경우
- "Current Partition Table" 사용하는 경우
[참고] prtvtpc/fmthard -s CMD
# prtvtoc /dev/rdsk/c1t1d0s2 > /vtoc/c1t1d0s2.txt
# fmthard -s /vtoc/c1t1d0s2.txt /dev/rdsk/c1t1d0s2
(3)파일 시스템 관리
(선수지식)
파일시스템? 데이터를 잘 관리할수 있게 구조적으로 만든 체계
솔라리스에서 지원하는 파일시스템 종류
- 디스크 파일시스템(UFS, ZFS, PCFS, HSFS, UDFS)
- 가상 파일시스템(swapfs, cachefs)
- 분산 파일시스템(NFS)
UNIX 파일시스템 구조
- VTOC
- bootblk
- superblock
- cylinder group
backup superblock
cylinder group block
inode table
data block
(파일시스템 작업)
newfs CMD
# newfs /dev/rdsk/c1t1d0s0
# newfs -m 3 /dev/rdsk/c1t1d0s0
# newfs -N /dev/rdsk/c1t1d0s0
# newfs -T /dev/rdsk/c1t1d0s0
[참고] minfree
(파일시스템 점검)
fsck CMD
# fsck /dev/rdsk/c1t1d0s0
# fsck -o -f,p /dev/rdsk/c1t1d0s0
[참고] fsck -y /export/home
# s!crip -a fsck.log
# ff /dev/rdsk/c1t0d0s7
# fsck -y /export/home
# cat file.log
(파일시스템 모니터링)
df CMD/du CMD/quot CMD/find CMD
# df -h -F ufs
# du -sk /var
# cd /var ; du -sk * | sort -nr | more
# quot -f /var
# find /var -size +102400c -type f
(4) 마운트 관리(mount CMD, /etc/vfstab)
마운트 확인
# df -k
# mount
마운트 관련 파일들
/etc/mnttab
/etc/vfstab
마운트 관련 명령어들
mount CMD (마운트만 dsk 나머진 rdsk)
# mount [-F ufs] [-o OPTIONS] /dev/dsk/c1t1d0s0 /oracle(빈디렉토리)
[-F ufs] : /etc/default/fs, /etc/dfs/fstypes
[-o OPTIONS] : ro, nolargefiles,
noatime(atime(cat), ctime(chmod)), nosuid
umount CMD
[참고] 사용중인 파일시스템 umount 하는 방법
# umount /export/home
# fuser -cu /export/home
# wall -a /etc/MESS/work.txt
..... 30분 정도 .....
# fuser -cu /export/home
# fuser -ck /export/home
# umount /export/home
mountall CMD (/etc/vfstab)
umountall CMD (/etc/mnttab)
4. 기타 마운트 관리
# svcadm (disable|enable) volfs
(CD-ROM 사용)
(vold 데몬이 떠 있는 경우)
Automount
# cd /cdrom/cdrom0
# cd ; eject cdrom
(vold 데몬이 떠 있지 않은 경우)
# mkdir -p /mnt/cdrom ; mount -F hsfs -o ro /dev/dsk/c0t0d0s0 /mnt/cdrom
# cd /mnt/cdrom
# cd ; umount /mnt/cdrom
# cd ; umount /mnt/cdrom
(ISO 이미지 사용)
# lofiadm -a /test/a.iso
# mkdir /mnt/cdrom ; mount -F hsfs -o ro /dev/lofi/1 /mnt.cdrom
# cd /mnt/cdrom ; ls
# cd ; umount /mnt/cdrom
(USB 사용)
Automount
# cd /mnt/rmdisk0
# eject -n ; eject rmdisk0
(RAMDISK 사용)
# ramdiskadm -a ramdisk1 1024m
# mkdir /ramdisk1 ; mount /dev/ramdisk/ramdisk1 /ramdisk1
# cd /ramdisk ; ls
# cd ; umount /ramdisk1
5. 패키지 관리
패키지 형식
File System Format) SUNWman/ (EX) # pkgadd -d . SUNWman
Date Stream Format) SUNWman.pkg pkgadd -d SUNW.pkg
F -> D) # pkgtrans /test /test/SUNW.pkg SUNW1
pkgtrans -s /test/ /test/all.pkg SUNW1 SUNW2 SUNW3
D -> F) # pkgtrans /test/SUNW.pkg /test
패키지 관련 파일들
/var/sadm/install/contents
/var/sadm/pkg (# ls -altr /var/sadm/pkg)
패키지 관련 명령어
pkginfo CMD
# pkginfo ( # pkginfo | grep bash)
# pkginfo -l SUNWman
# pkginfo -d . -l SUNWman
pkgchk CMD
# pkgchk -lp /usr/bin/find
# pkgchk -v SUNWman
pkgadd CMD
# pkgadd -d . SUNWman
# pkgadd -d . -s spool SUNWman
pkgrm CMD
# pkgrm SUNWman
# pkgrm -s spool SUNWman
패키지 실습
CD-ROM 안에 들어 있는 패키지 설치
패키지 스풀 실습(그냥 옮기고 지우는거)
패키지 설치 방법의 종류
- 웹에서 패키지를 받아서 서버에 전송하고 설치하는 경우
- rcp/scp/ftp 서버를 통해 설치하는 경우
- NFS 서버를 통해 설치하는 경우
- 웹서버를 통해 설치하는 경우
- Anonymous FTP 서버를 통해 설치하는 경우
[참고] Anonymous FTP 서버 궁서하는 방법
# ftpconfig /export/ftp
유용한 패키지 설치
- vim 패키지
- gcc 패키지
- gftp 패키지
- nmap 패키지
- VNC 패키지
6. 패치 관리
패치란?
패치 관련 명령어
(확인) # patchadd -p (# showrev -p)
(설치) # patchadd 142252-02
(삭제) # patchrm 142252-02
7. 사용자 & 그룹 관리
사용자/그룹 정보 파일
/etc/passwd
/etc/shadow
/etc/group
사용자 관리
useradd CMD
# useradd -m -d /export/home/user01 -s /bin/ksh user01
# passwd user01
usermod CMD
# usermod -s /bin/bash user01
# usermod -l user02 -m -d /export/home/user02 user01
userdel CMD
# userdel -r user02
# usedle user02
그룹 관리
groupadd CMD
groupmod CMD
groupdel CMD
[참고] 사용자 접근 제어
8. 보안 관련 파일들
/etc/default/login
CONSOLE=/dev/console
PASSREQ=YES
/etc/default/passwd
PASSLENGTH=6(6~8사이)
/etc/default/su
SULOG=/var/adm/sulog
/var/adm/loginlog
touch var/adm/loginlog
[참고] 솔라리스 10버전의 업데이트 기능
패스워드 히스토리 기능
/etc/default/passwd(HISTORY=3_
/etc/security/passhistory
패스워드 최대 길이 변경(8 -> 255)
/etc/security/policy.conf(CRYPT_DEFAULT=1)
/etc/securiy/crypt.conf
사용자 잠금 기능
/etc/security/policy.conf(LOCK_AFTER_RETRIES=YES)
/etc/default/login
9. 정기적인 작업 수행
svcadm (disable|enable) cron
at CMD
# at 1300
# at -l (# atq)
# at -r (# atrm )
crontab CMD
(전제조건) EDITOR=/usr/bin/vi ; export EDITOR
# crontab -e
# crontab -l
# crontab -r
10. 백업과 복구
target : /export/home ----------------> backup media : /dev/rmt/0
ufsdump/ufsrestore
백업의 목적?
백업 명령어의 종류
tar/cpio CMD
ufsdump/ufsrestore CMD
dd CMD
백업 매체 종류
백업 매체 관리 명령어
mt CMD
백업 명령어 사용법
ufsdump CMD
ufsrestore CMD
백업/복구 예제
백업 절차
(ㄱ) 용량 점검
(ㄴ) 서비스 중지
(ㄷ) 점검 & 백업
복구 절차
( / 파일시스템)
CD 부팅
복구 작업
installboot 명령어
점검 & 재부팅
( /usr 파일시스템)
CD 부팅
복구 작업
점검 & 재부팅
( /export/home 파일시스템)
유마운트 후 복구 잡업
점검 & 마운트 |