tip/tip. Ubuntu2013. 4. 29. 13:46

http://www.tldp.org/HOWTO/Unicode-HOWTO.html#toc4


--> http://www.tldp.org/HOWTO/Unicode-HOWTO-3.html


locale setup


1. file & kernel


vfat / msdos / iso9660 / ntfs 는 utf8 mount 옵션 가짐.


2. Upgrading the C library


glibc-2.1.x  : multibyte locales 지원 불가!

glibc-2.2 : multibyte locales을 지원함.


항상 glibc-2.2부터 설치할것.


3. General data conversion


iconv : glibc-2.2에 딸려오는 프로그램임.


$ iconv --from-code=ISO-8859-1 --to-code=UTF-8 < old_file > new_file

4. Locale environment variables

LANGUAGE

override for LC_MESSAGES, used by GNU gettext only

LC_ALL

override for all other LC_* variables

LC_CTYPE, LC_MESSAGES, LC_COLLATE, LC_NUMERIC, LC_MONETARY, LC_TIME

individual variables for: character types and encoding, natural language messages, sorting rules, number formatting, money amount formatting, date and time display

LANG

default value for all LC_* variables


5. Creating the locale support files

UTF-8 locale 을 지원하려면 아래와 같이

$ localedef -v -c -i de_DE -f UTF-8 de_DE.UTF-8
옵션을 보자면
-v : verbose (상세설명)
-c : Create permanent output
-i locale_definition : locale_definition (/usr/share/locale 참조) 파일을 input으로 가져옴
-f charmap_file : charmap 파일 설정

마지막은 locale_name으로 -i -f의 특성을 가진 locale을 만든다.


요약~)

원하는 locale (예 ko_KR.eucKR)이 있다면

먼저
1. /usr/share/i18n/locales에서 ko_KR 존재 확인
2. /usr/share/i18n/charmaps에서 eucKR 존재 확인


방법1)
$ localedef -vci ko_KR -f eucKR ko_KR.eucKR
로 로케일 생성

방법2)
/etc/locale.gen 에 ko_KR.eucKR eucKR 추가후
locale-get 실행

방법3)
/etc/locale.gen에 ko_KR.eucKR에 주석되어 있다면
주석 삭제후
locale-gen


locale 관련 명령)

locale -a
locale-gen : template에서 현지화 정보 file을 생성 ( template locale.gen )
locale-get
localedef :
compile locale definition files ( template거치지 않고 direct 생성 )
dpkg-reconfigure locales : 충돌나는 locale 을 삭제
apt-get install localepurge


  추가예정

terminal 관련)

xterm은 xterm -u8로 실행해야 utf8을 지원한다.

http://www.ubuntu.or.kr/viewtopic.php?p=107726

'tip > tip. Ubuntu' 카테고리의 다른 글

linux memory cache 정리하기  (0) 2014.03.05
cygwin 1.7.x 한글 설정 & sshd  (0) 2013.07.12
[Ubuntu] Unix $ variables  (0) 2013.04.26
[Ubuntu] unix signal codes  (0) 2013.04.26
[linux] apt-get dpkg  (0) 2013.04.21
Posted by wooix
tip/tip. Ubuntu2013. 4. 26. 16:42
VariableDescription
$0The filename of the current script.
$nThese variables correspond to the arguments with which a script was invoked. Here n is a positive decimal number corresponding to the position of an argument (the first argument is $1, the second argument is $2, and so on).
$#The number of arguments supplied to a script.
$*All the arguments are double quoted. If a script receives two arguments, $* is equivalent to $1 $2.
$@All the arguments are individually double quoted. If a script receives two arguments, $@ is equivalent to $1 $2.
$?The exit status of the last command executed.
$$The process number of the current shell. For shell scripts, this is the process ID under which they are executing.
$!The process number of the last background command.


'tip > tip. Ubuntu' 카테고리의 다른 글

cygwin 1.7.x 한글 설정 & sshd  (0) 2013.07.12
[Linux] locale  (0) 2013.04.29
[Ubuntu] unix signal codes  (0) 2013.04.26
[linux] apt-get dpkg  (0) 2013.04.21
[Ubuntu] Linux APM  (0) 2013.04.16
Posted by wooix
tip/tip. Ubuntu2013. 4. 26. 16:08

Unix Signals

SIGHUP 1 Exit Hangup
SIGINT 2 Exit Interrupt
SIGQUIT 3 Core Quit
SIGILL 4 Core Illegal Instruction
SIGTRAP 5 Core Trace/Breakpoint Trap
SIGABRT 6 Core Abort
SIGEMT 7 Core Emulation Trap
SIGFPE 8 Core Arithmetic Exception
SIGKILL 9 Exit Killed
SIGBUS 10 Core Bus Error
SIGSEGV 11 Core Segmentation Fault
SIGSYS 12 Core Bad System Call
SIGPIPE 13 Exit Broken Pipe
SIGALRM 14 Exit Alarm Clock
SIGTERM 15 Exit Terminated
SIGUSR1 16 Exit User Signal 1
SIGUSR2 17 Exit User Signal 2
SIGCHLD 18 Ignore Child Status
SIGPWR 19 Ignore Power Fail/Restart
SIGWINCH 20 Ignore Window Size Change
SIGURG 21 Ignore Urgent Socket Condition
SIGPOLL 22 Ignore Socket I/O Possible
SIGSTOP 23 Stop Stopped (signal)
SIGTSTP 24 Stop Stopped (user)
SIGCONT 25 Ignore Continued
SIGTTIN 26 Stop Stopped (tty input)
SIGTTOU 27 Stop Stopped (tty output)
SIGVTALRM 28 Exit Virtual Timer Expired
SIGPROF 29 Exit Profiling Timer Expired
SIGXCPU 30 Core CPU time limit exceeded
SIGXFSZ 31 Core File size limit exceeded
SIGWAITING 32 Ignore All LWPs blocked
SIGLWP 33 Ignore Virtual Interprocessor Interrupt for Threads Library
SIGAIO 34 Ignore Asynchronous I/O


http://people.cs.pitt.edu/~alanjawi/cs449/code/shell/UnixSignals.htm

'tip > tip. Ubuntu' 카테고리의 다른 글

[Linux] locale  (0) 2013.04.29
[Ubuntu] Unix $ variables  (0) 2013.04.26
[linux] apt-get dpkg  (0) 2013.04.21
[Ubuntu] Linux APM  (0) 2013.04.16
[Ubuntu] Grub basic 복구  (0) 2013.04.16
Posted by wooix
tip/tip. Ubuntu2013. 4. 21. 10:11

원문 : http://jinz-textcube.blogspot.kr/2007/07/%EC%9A%B0%EB%B6%84%ED%88%AC-%EC%84%9C%EB%B2%84-apt-get-%EC%82%AC%EC%9A%A9%EB%B2%95.html

우분투 서버 apt-get 사용법

우분투 서버는 데비안을 모체로 하고 있으므로 apt-get 사용.
폰트가 깨지는 경우는 export LANG=en_US.UTF-8 로 설정 후 사용.

http://www.debian.org/doc/manuals/apt-howto/index.ko.html

nabi 설치 : apt-get install nabi
제거하기 : apt-get --purge remove nabi
검색하기 : apt-cache search nabi
패키지 정보보기 : apt-cache show nabi
소스리스트 업데이트 : apt-get update
설치된 패키지들 업데이트 : apt-get upgrade

deb파일 설치 : dpkg -i nabi_0.15-2_i386.deb
제거하기 : dpkg -P nabi
설치 deb파일들의 리스트 : dpkg -l
설치된 패키지에 포함된 파일들 보기 : dpkg -L nabi
deb파일 패키지에 포함된 파일들 보기 : dpkg -c nabi_0.15-2_i386.deb
deb파일의 정보보기 : dpkg -I nabi_0.15-2_i386.deb
파일의 패키지명 알아내기 : dpkg -S /usr/bin/nabi


apt는 최신 패키지를 다운로드 하여 설치하게 되는데 upgrade 하기전에 update 해서 source.list 를 갱신

1. 패키지 캐쉬 갱신 및 자동 업그레이드
# apt-get update
# apt-get upgrade

2. 개별 패키지 설치
# apt-get install <패키지명>

3. 원하는 패키지 찾기 
# apt-cache  serach <패키지명>

4. 원하는 패키지 찾은 다음 정보 출력
# apt-cache show <패키지명>

5. 의존성 검사 수행하면서 업그레이드
# apt-get -s dist-upgrade

6. 설치한 패키지에 이상이 있어 다시 설치시
# apt-get --reinstall install <패키지명>

7. CD-ROM 목록 추가
# apt-cdrom add

8. 패키지 삭제
# apt-get remove <패키지명>
또는 # dpkg -P <패키지명>

9. 삭제하는 패키지의 설정화일들가지 모두 삭제시
# apt-get --purge remove <패키지명>

10. dselect에서 선택한 패키지의 설치 및 삭제
# apt-get dselect-upgrade

11. 설치된 패키지를 볼때
# dpkg -l

참고)   apt-get install 명령어로 받은 deb 파일의 저장 위치
          /var/cache/apt/archive/
        위 폴더에 .deb 패키지파일로 저장됨

참고 : 

http://blog.naver.com/koreaotn/10018120191
http://cafe.naver.com/newchany/383

'tip > tip. Ubuntu' 카테고리의 다른 글

[Ubuntu] Unix $ variables  (0) 2013.04.26
[Ubuntu] unix signal codes  (0) 2013.04.26
[Ubuntu] Linux APM  (0) 2013.04.16
[Ubuntu] Grub basic 복구  (0) 2013.04.16
[Ubuntu] Grub 박살난 경우  (0) 2013.04.16
Posted by wooix
tip/tip. HP-UX2013. 4. 16. 14:38

Logical Volume Manager


1. 기본 용어

PV, PE : Physical Volume, Physical Extend

VG : Volume Group

LV, LE: Logical Volume, Logical Extend


2. 용어 설명

PV : pv는 물리적인 window계열의 물리적 Partition에 mapping되는 개념이다.

Disk하나를 PV로 선택할 수도 있고 나뉘어진 여러 partition을 개별 PV로 선택할 수 도 있다.

PE : PV를 만들때 -s 옵션을 주게 되면 effective size of physical volume (즉 효율적 블럭 단위)를 생성하는데 이때 개별 block이 PE가 된다.

ex) 1G disk를 1M단위의 블럭을 만들경우 pe00000 ~ pe00999까지의 PE가 생성됨

확인     #> lvdisplay -v /dev/~

     #> pvdisplay -v /dev/~

VG : 물리적인 PV들을 묶어 하나의 거대한 logical volume Group을 만든다.

ex) PV1 :1G PV2 :2G PV3:3G 일때 VG가 PV1~3까지를 포함하면 6G의 VG가 생성됨.

VL : VG 안에서 사용자가 원하는 크기대로 나누어 놓은 Logical Volume

ex) 위의 6G를 사용자가 5G / 0.5G/ 0.5G LV1~3까지와 같이 편의 대로 만들 수 있다.

LE : VL을 생성 될때 만들어지는 effective size of Logical volume 을 말한다.


3. 실습을 통한 정리

전제 )

oracle의 기본 dir : /oracle

파티션 3개를 만드시오

vg이름 : vgora1

table : 4G : 4096MB /oracle/table

index : 2G : 2048MB /oracle/index

log : 2G : 2048MB /oracle/log

/dev/disk/disk01

/dev/disk/disk02

/dev/disk/disk03


=============== 1. 생성 시작 ==============


작업 순서 : 공간확보 -> PV -> DSF -> VG -> LV -> fs -> 마무리

1. 공간확보

위의 /dev/disk/disk01~03 까지를 이용

#>lvlnboot -v (부팅 disk확인 -> 피할것)

#> ioscan -m dsf (사용중인  disk확인)

or

#> strings /etc/lvmtab*

2. PV생성

pvcreate -f(force이므로 필요하면 쓸것) /dev/disk/disk01

pvcreate -f /dev/disk/disk02

pvcreate -f /dev/disk/disk03

3. DSF생성

#> mkdir /dev/vgora01

#> mknod /dev/vgora01/group c 128 0x001000     <- c는 device type임 128은 lvm driver임(lsdev 로 확인)

      뒤의 0x001000은 vgora01의 h/w주소 값으로 앞의 3자리까지 중복없이 사용하도록

4. VG생성

#>vgcreate -s 64 -p 20000 vgora01 /dev/disk/disk01 /dev/disk/disk02 /dev/disk/disk03

<- s는 pe size p는 max pe count (max는 max일뿐이니 직접적으로 size연산과 관련없음)

#>vgdisplay vgora01

#>strings /etc/lvmtab*

#>lvmadm -l

5.LV생성

#> lvcreate -L 4096 -n table vgora01      <- L은 lv_size 뒤는 MB단위 n은 name

#> lvcreate -L 2048 -n index vgora01

#> lvcreate -L 2048 -n log vgora01

6.fs생성

#> newfs -F vxfs -o largefiles /dev/vgora01/rtable      <- block말고 character device를 format / 

-o largefiles는 2G이상 크기에 필요한 옵션

#> newfs -F vxfs -o largefiles /dev/vgora01/rindex

#> newfs -F vxfs -o largefiles /dev/vgora01/rlog

7. 마무리

#> mkdir -fR /oracle /oracle/table /oracle/index /oracle/log

#>vi /etc/fstab

/dev/vgora01/table    /oracle/table     vxfs    default 0 2

/dev/vgora01/index    /oracle/index     vxfs    default 0 2

/dev/vgora01/log    /oracle/log     vxfs    default 0 2

#> mount -a

------------끝!---------

#> bdf (확인!!)


================= 생성 끝!~ =-==================


================= 2. 수정시작 ===================

/oracle/table 4096 -> 6000으로 확장!!!!!!!!


#> lvextend -L 6000 /dev/vgora01/table

#> fsadm -F vxfs -b 6000M /oracle/table

================= 수정 끝!~ =-==================


================= 3. 삭제시작 ===================

#> bdf | grep vgora01

#> umount  /oracle/table

#> umount  /oracle/index

#> umount  /oracle/log


#> vgchange -a n vgora01

#> lvmadm -l or strings /etc/lvmtab* 으로 vgora01에 소속된 disk 이름 확인!!!!!!

#>vgexport vgora01 (등록취소)

(disk내의 lvm흔적 삭제)

#>pvcreate -f /dev/rdisk/disk01

#>pvcreate -f /dev/rdisk/disk02

#>pvcreate -f /dev/rdisk/disk03


/etc/fstab에서 흔적 삭제

================= 삭제 끝!~ =-==================


'tip > tip. HP-UX' 카테고리의 다른 글

여러개의 depot 일괄 설치 방법  (0) 2013.11.19
Disk 구성 확인  (0) 2013.10.18
HP_UX Admin II  (0) 2013.08.13
[HP-UX] HP-UX 기동 순서  (0) 2013.04.16
[HP-UX] HP-UX admin tip#1 천천히 정리하자  (0) 2013.04.16
Posted by wooix
tip/tip. HP-UX2013. 4. 16. 13:54

init이전 생략

init 뜨고 나서

/sbin/rc[0-4].d 개별 디렉토리에 있는 link들이 실행됨
S는 boot에 사용
K는 shutdown에 사용

run level에 따라 [0-4]값이 적용되는데

일반적인 run level 3이기 때문에
rc0~rc3까지 순차적으로 진행

중요한 부분은 /sbin/rc?.d에 있는 S* softlink실행시
/sbin/init.d에 있는 실제 script 수행을 하면서
/etc/rc.config.d/ 있는 환경설정값을 읽어 들인다는 점임

ex) rc2.d/S620xfs -> /sbin/init.d/xfs 인데
xfs script안에서 /etc/rc.config.d/xfs 읽어 들임.
필요하다면 sbin/init.d에 있는 script 수정도 가능하겠지만
표준 방식이라 할수 있는
/etc/rc.config.d/ 안에 있는 변수값을 설정하는 것이 좋다.
특히 /etc/rc.config.d 안에는 해당 서비스 사용할지 안할지에 대한
flag값들이 존재 하므로 서비스의 실제 구동여부는
/etc/rc.config.d를 이용할 것.

'tip > tip. HP-UX' 카테고리의 다른 글

여러개의 depot 일괄 설치 방법  (0) 2013.11.19
Disk 구성 확인  (0) 2013.10.18
HP_UX Admin II  (0) 2013.08.13
[HP-UX] LVM  (0) 2013.04.16
[HP-UX] HP-UX admin tip#1 천천히 정리하자  (0) 2013.04.16
Posted by wooix
tip/tip. HP-UX2013. 4. 16. 13:53
1. login시 오타자 뒤에 @는 앞의 오타자 무시함
ex) login:fskj@root

2. OS가 사용할 수 있는 disk
  1. 내장 disk ( 첫 disk 2개가 SAS controller에서 H/W RAID 1 되서 공급 되기도 함.)
  2. Storage의 LUN (logical unit number)

3. run level
  0 => halt (모든작업이 정지된 상태 => power off도 문제 없음)
  s => single user mode (부팅초기, root한명만 접속 가능 root passwd 복구, 심각한 장애 처리 (mp=>console)
  1 => filesystem /etc/fstab참조해서 mount
  2 => IP 설정, network 활성화, 60%정도 service가 올라감.
  3 => CDE, nfs server 실행 : hp-ux 기본 run level (who -r로 확인 -R도 참조)

init 4 -> who -r
init 2 (내부적으로 4->3->2 순서로 진행됨)

4. hp-ux 에서 FC의 wwpn 조사하기 (Fiber Channel)
#> ioscan -fnC fc
=> /dev/fcd0 /dev/fcd1 ~~~~ (장치명)
fcmsutil /dev/fcd0 (장치명 관련 WWPN 확인 가능)

5. man section (keyword)
  1  => 일반 user command
  1m => hp-ux의 경우 system 관리용 명령
  2  => system call
  3  => 특정 개발 lang 관련 함수
  4  => system 구성 file의 내부 형식 (/etc/passwd 등등~)
ps) -o 에서 옵션 부실 see also참조하자

6. /etc/passwd
 x : shadow
 * : disable user
 * : trusted mode (user 정보가 로 표시)
--> so what 어케 쓰는 거지?
  1. to shadow mode
    => #>pwconv pwunconv
  2. passwd  정책 /etc/default/security
  3. useradd template /etc/default/useradd에 기본틀 설정
  4. useradd후 hp계열은 passwd작업까지 꼭 해줘야됨(기본이 login불가 상태)
  5. usermod 의 경우 home directory만들어야 되면 (-m -d /path option)일 경우 /etc/skel에서 기본 파일 복사하자
ex) oracle용 계정 만들기
groupadd -g 900 oinstall
groupadd -g 901 dba
useradd -m -u 900 -g oinstall -G dba oracle
passwd oracle

=============== H/W ============

LED경고등 들어온 경우
MP접속후 VFP(virtual front panel)에서 확인후 ctrl+b => SL(system log)에서 확인 가능

Bay : 장치를 장착할수 있는 공간
IO Bay => IO chassis (PCI slot들을 가진 IO board)

#> ioscan 
-f (full list) 
-k (view cached info)
-H dev-addr(5) 0/0/0/1/0 특정 주소 아래에 달린 녀석들 listing
-C class Class별 조회
-N Agile Addr로 보여준다.
-P health : health check
-m lun : lunpath에 대한 정보 via Agile view
-m hwpath : LUN관련 path 정보들
-m dsf : Agile & Legacy version addr보기


#> mpsched -S CPU의 상태를 정확히볼수 있다.(hyper thread작동 여부는 이걸로 확인)
     ps) locality Domain Count 값은 dual-core에서는 board의 수 / quad-core에서는 cpu socket의개수이다.

nPar의 활용방법
[[parstatus, vparstatus, hpvmstatus로 각 상태 확인]]

nPar(Node Partition) : cell board나 server blade를 묶어서 1개의 독립된 서버로 사용가능
1) nPar => O/S 설치 => app 설치
2) nPar => cpu core 단위로 vPar 생성
ex)             vpar0 (cpu core 4개) => O/S설치 => db server

                 vpar1 (cpu core 2개) => O/S설치 => web server 

3) nPar => hp-ux 설치 + Integrity VM s/w 설치 (VM Host)
ex)            vm1 (vCPU 몇개, vMem 몇G, vDisk 몇개) => app
                vm2 (vCPU 몇개, vMem 몇G, vDisk 몇개) => app

단 vm의 경우 자원을 공유하는 것이다 보니 특정 vm에서 overload발생시 전체 성능 내려감.

=============== H/W Addressing ============

legacy & agile(11i v3 부터 SAN환경에 특화) Address 

11i v3부터 LUN Max size 16TB지원
11i v2는 Max 2TB (os가 이상은 인식불가)
Multipath -> 11.23 까지는 O/S가 PV-Link (hot/standby)만 지원 secure Path 따로 구매 
                   11.31부터는 secure Path가 Kernel로 들어가서 자동으로 multipath지원


서버환경 2종류 Network

1. IP Network

2. SAN : storage 전용망 (FC SAN, IP SAN)
OS에서 disk에 작업 지시할때 SCSI protocol

SCSI Protocol
1) SCSI 2 => pSCSI
2) SCSI 3 => SAS, FC

SCSI명령에서는 주종관계가 설정
주 : initiator : HBA( pSCSI, SAS, FC )
종 : Target : disk, tape, storage LUN .....

SCSI 명령은 Block이 작업단위.
vs
NAS(Network Attached Storage) : tcp/ip 상에서 File 공유 서버
-> CIFS(SAMBA), NFS
NAS 작업단위 File


* Legacy H/W Address

1/0/0/1/0 
(Cell/SBA/LBA/device/function)

Legacy pSCSI Address
1/0/0/1/0.1.0 
(HBA H/W addr.target.LUN ID)

Legacy FC Address
1/0/0/1/0.6.1.0.0.0.1 
(HBA H/W addr.SAN domain.SAN area. SAN port. Array LUN ID(3))
 SAN domain = SAN SW의 id
 SAN area = array가 연결된 SW상의 rt번호
 SAN port = HUB사용시 array가 연결된 port번호(요즘은 port 잘 안씀)
 앞의 5자리는 initiator 
 뒤의 6자리가 target 임

 Array LUN ID는
 7bit.4bit.3bit 으로 구성됨
 ex)LUN ID 1, 8, 15
 0000000 0000 001 => x/x/x/x/x.x.x.x.0.0.1
 0000000 0001 000 => x/x/x/x/x.x.x.x.0.1.0
 0000000 0001 111 => x/x/x/x/x.x.x.x.0.1.7

*Agile Address

Agile View pSCSI H/W addr
1/0/0/0/1.0xa.0x0
(HBA addr.Target.LUN ID)

Agile View FC LUNpath H/W addr
1/0/0/0/1.0x64bits.0x64bits
(HBA addr.WW Port Name.LUN Addr)

Agile View FC LUN H/W path addr
64000/0xfa00/0x4
(virtual root node/vitual bus/virtual LUN ID)

install New Devices
1. do some physical works
2. run ioscan -> add the device to the kernel I/O tree
3. insf -> create device files
4. ioscan -kfn(N) to verify the configuration

============= device config ==================

/dev/*disk에 있는 것들 속성을 보면 
b/c로 구분되는데 
b = block mode DSF (block size만큼 대기 한후 writing -> 그래서 buffer(in memory)가 필요)
c = character mode DSF

char device(=raw device)는 응답속도에 focused
block device는 효율에 focused

insf
mksf
mknod <-- 이놈은 공부좀 해서 embedded system에서 써먹자
rmsf
lssf : view detail dsf attribute
lsdev : view dsf's major class ,driver, dev class

insf -e -v (기존꺼까지 모조리 재생성)

ex) dsf 삭제시 
#> insf -ev (재생성으로 복구)
#> ioscan -kfnN 으로 정상동작 확인

#> lvlnboot -v
boot disk확인

============= LVM 연습해보기 ============
vgdisplay

공간확보 -> PV -> LV -> VG -> fs -> mount

step 1.
여유 디스크 확인 하기 (현재 서버에서 사용중인 disk 조사하기)
#> lvlnboot -v (부팅 disk 확인 )
#> ioscan -m dsf (전체 disk 목록)
#> strings /etc/lvmtab* (system에 등록된 vg와 소속disk 이름)

추천 방법은 smh-> disk&file system -> disk 에서 "unused" 쉽게 확인

step 2. PV용 table 생성(???)
pvcreate -f /dev/rdsk/c0t2d0
pvcreate -f /dev/rdsk/c0t3d0
pvcreate -f /dev/rdsk/c0t4d0

step 3. DSF 생성하기
# mkdir /dev/vgora01
# mknod /dev/vgora01/group c 64 0x010000
# lsdev | grep 64
       64          64         lv              lvm

step 4. VG생성
# vgcreate -s 64 -p 64 vgora01 /dev/dsk/c0t2d0 /dev/dsk/c0t3d0 /dev/dsk/c0t4d0
Volume group "/dev/vgora01" has been successfully created.
Volume Group configuration for /dev/vgora01 has been saved in /etc/lvmconf/vgora01.conf

# vgdisplay vgora01
--- Volume groups ---
VG Name                     /dev/vgora01
VG Write Access             read/write
VG Status                   available
Max LV                      255
Cur LV                      0
Open LV                     0
Max PV                      64
Cur PV                      3
Act PV                      3
Max PE per PV               1016
VGDA                        6
PE Size (Mbytes)            64
Total PE                    297
Alloc PE                    0
Free PE                     297
Total PVG                   0
Total Spare PVs             0
Total Spare PVs in use      0
VG Version                  1.0
VG Max Size                 4064g
VG Max Extents              65024

# strings /etc/lvmtab*
/dev/vg00
/dev/disk/disk8_p2
/dev/vgora01
/dev/dsk/c0t2d0
/dev/dsk/c0t3d0
/dev/dsk/c0t4d0

# lvmadm -l
--- Version 1.0 volume groups ---
VG Name /dev/vg00
PV Name /dev/disk/disk8_p2

VG Name /dev/vgora01
PV Name /dev/dsk/c0t2d0
        /dev/dsk/c0t3d0
        /dev/dsk/c0t4d0
=----------------------------------------위를 보면 알겠지만 VG와 PV는 다 만들어 졌다. 이제는 lv로


step 5. LV생성
# lvcreate -L 4096 -n table vgora01
Logical volume "/dev/vgora01/table" has been successfully created with
character device "/dev/vgora01/rtable".
Logical volume "/dev/vgora01/table" has been successfully extended.
Volume Group configuration for /dev/vgora01 has been saved in /etc/lvmconf/vgora01.conf
root@vm194 [/dev/vgora01]
# lvcreate -L 2048 -n index vgora01
Logical volume "/dev/vgora01/index" has been successfully created with
character device "/dev/vgora01/rindex".
Logical volume "/dev/vgora01/index" has been successfully extended.
Volume Group configuration for /dev/vgora01 has been saved in /etc/lvmconf/vgora01.conf
root@vm194 [/dev/vgora01]
# lvcreate -L 2048 -n log vgora01
Logical volume "/dev/vgora01/log" has been successfully created with
character device "/dev/vgora01/rlog".
Logical volume "/dev/vgora01/log" has been successfully extended.
Volume Group configuration for /dev/vgora01 has been saved in /etc/lvmconf/vgora01.conf

# ls -la
total 32
drwxrwxrwx   2 root       sys           8192 Apr 10 17:20 .
dr-xr-xr-x  17 bin        bin           8192 Apr 10 17:15 ..
crw-rw-rw-   1 root       sys         64 0x010000 Apr 10 17:16 group
brw-r-----   1 root       sys         64 0x010002 Apr 10 17:20 index
brw-r-----   1 root       sys         64 0x010003 Apr 10 17:20 log
crw-r-----   1 root       sys         64 0x010002 Apr 10 17:20 rindex
crw-r-----   1 root       sys         64 0x010003 Apr 10 17:20 rlog
crw-r-----   1 root       sys         64 0x010001 Apr 10 17:20 rtable
brw-r-----   1 root       sys         64 0x010001 Apr 10 17:20 table

#vgdisplay -v 로 상세한 lv 도 확인 가능

setp 6. File system 생성
# newfs -F vxfs -o largefiles /dev/vgora01/rtable
    version 7 layout
    4194304 sectors, 4194304 blocks of size 1024, log size 16384 blocks
    largefiles supported
# newfs -F vxfs -o largefiles /dev/vgora01/rindex
    version 7 layout
    2097152 sectors, 2097152 blocks of size 1024, log size 16384 blocks
    largefiles supported
# newfs -F vxfs -o largefiles /dev/vgora01/rlog
    version 7 layout
    2097152 sectors, 2097152 blocks of size 1024, log size 16384 blocks
    largefiles supported

step 7. mount 하기 
root@vm194 [/oracle]
# ls -la
total 16
drwxrwxrwx   2 root       sys             96 Apr 10 17:07 .
drwxr-xr-x  15 root       root          8192 Apr 10 17:07 ..
root@vm194 [/oracle]
# mkdir table index log
root@vm194 [/oracle]
# ls -la
total 16
drwxrwxrwx   5 root       sys             96 Apr 10 17:23 .
drwxr-xr-x  15 root       root          8192 Apr 10 17:07 ..
drwxrwxrwx   2 root       sys             96 Apr 10 17:23 index
drwxrwxrwx   2 root       sys             96 Apr 10 17:23 log
drwxrwxrwx   2 root       sys             96 Apr 10 17:23 table

# vi /etc/fstab
/dev/vgora01/table /oracle/table vxfs delaylog 0 2
/dev/vgora01/index /oracle/index vxfs delaylog 0 2
/dev/vgora01/log   /oracle/log   vxfs delaylog 0 2
:wq!

# mount -a
# bdf
Filesystem          kbytes    used   avail %used Mounted on
/dev/vg00/lvol3    1048576  236256  806120   23% /
/dev/vg00/lvol1    1835008  188960 1633272   10% /stand
/dev/vg00/lvol8    4587520  453752 4109072   10% /var
/dev/vg00/lvol7    6856704 3224128 3604280   47% /usr
/dev/vg00/lvol6    1179648   20840 1149760    2% /tmp
/dev/vg00/lvol5    10723328 5690968 4993112   53% /opt
/dev/vg00/lvol4    1179648   21080 1149648    2% /home
/dev/vgora01/log   2097152   18006 1949207    1% /oracle/log
/dev/vgora01/index 2097152   18006 1949207    1% /oracle/index
/dev/vgora01/table 4194304   18520 3914805    0% /oracle/table

====================vg resize & remove 적을것.

================disk partitioning ====================

LVM v1.0 vg에서
PE size에 따른 PV의 크기 제약
PV의 크기 = PE size x pv내 PE개수
4MB x 65000 => 256G
32MB x 65000 => 2T
64MB x 65000 => 2T

LVM v2.0 vg에서는 
PE/PV 충분한 개수가 제공되어 제약없음.

/etc/lvmtab (LVM v1.0 구성 file : 등록된 vg이름과 소속 disk이름 보관)
/etc/lvmtab_p (LVM v2.x 구성 file : 동일)

strings /etc/lvmtab* (11.23까지는 전용명령이 없어서 strings이용)
lvmadm -l (11.31에서 추가됨)
lvmadm -t (LVM 버전별 크기 제약 조건 나열)


vgcreate 

mkdir /dev/vg01
mknod /dev/vg01/group c 128 0x001000 <- lvm v2로 생성

============================

LVM 명령들

접두어 (pv,vg,lv)
동사부 (create,remove,extend,reduce,display,modify ... )

===========================

disk 크기 확인 하기

diskinfo /dev/rdsk/c_t_d_








--------------------------------------------------------------------------

lost+found <- inode 읽은 파일들의 보관


* fuser -cu /somedir  : somedir을 사용중인 프로세스를 확인
* fuser -ku /somedir  : somedir을 사용중인 프로세스 kill
(fuser는 특정 디렉토리를 사용중인 프로세스에 대한 조회 및 작업종료 지시)
그리고 나서 umount로 가자!! ~ 굿이네 (but oracle 관련 디렉토리 같은거 잘못건들면 시스템 난리난다.)

kill -l
9) kill  : die!!     (쌩으로 종료, integrity 보호 안해준다)
15) term : terminate (정상 종료 과정을 거친다)

[ kill -9 ,fuser -k, rm -rf / 이것들은 가능하면 내손으로 치지 말자!! ]

#> mount -a (etc/fstab에 등록된 정보를 기준으로 전체 mount)
#> mountall (mount -a + repair /etc/fstab : single user mode에서 사용!!)

 ------------------------ file system 관리 -----------------------------

조각 모음 
#> fsadm -F vxfs -DE /somedir   
: 해당 mount point에 대한 report --> 이때 ave # extends가 숫자가 높으면 아래명령어로 go
#> fsadm -F vxfs -DEde -t 3600 /somedir 
: 해당 mount point에 대한 조각 모음 시작 -t는 초단위 시간

Repairing
#> mount -v
#> umount /somedir
#> fsck -F vxfs /dev/vgxx/xxxx01 (해당 lv)
#> mount /data
#> fsck -F vxfs -o full,nolog /dev/vgxx/xxxx01 
(full check -> log area나 file system metadata부분에 문제 있을 경우 이 옵션을 이용하자)

LV 용량 확장 시키기>

1. LV 확장 시키기
#> lvextend -L SIZE (바꾸고 싶은 크기) /dev/vgxx/xxx
#> lvdisplay (-v) /dev/vgxx/xxx

2. 그리고 나서 fs확장 (LV 크기만큼으로 확장됨)
#> umount /somedir
#> extendfs -F vxfs /dev/vgxx/xxxx01
#> mount /somedir
#> bdf /somedir

LV 용량 축소 시키기>

1. fs축소
#> fsadm -F vxfs -b SIZE(줄일크기) /somedir
bdf /somedir

2. LV축소
#> lvreduce -L SIZE /dev/vgxx/xxxxx
#> lvdisplay -v /dev/vgxx/xxxxx

file system 상 정보를 모두 폐기할때> 
#> dd if=/dev/zero of=/dev/vg01/rdatavol bs=64k   (0으로 64k block씩 끝까지 writing)

그냥 참조만해.. 우린 이거 안써.

VG 축소 시키기>
disk1~3중에서 3을 빼버릴때.
#> pvdisplay -v /dev/disk/disk3
#> pvmove /dev/disk/disk3 /dev/disk/disk2
#> vgreduce vg01 /dev/disk/disk3
#> vgdisplay -v vg01

VG 삭제 시키기 10-28>
전제 조건
1. 하나의 physical volume만 있어야됨.
2. logical volume은 없어야됨.

정식 방법 vs 약식 방법 (잘 봐~)
----------------------------

ll -ud somefile --> file의 last access time 출력

 hp-ux 의 OS bundle 종류들 (license 묶음)
1) Base-OE (가장 기본, 가장쌈, 상업용 license없음)
2-1) HA-OE (ServiceGuard cluster sw, online-jfs, mirror disk/ux, glance.....)
2-2) VSE-OE (vPar, VM, online-jfx...)
3) DC-OE (HA-OE + VSE-OE통합버전) : 최상위 버전


=========================MP============================

hp-ux 서버의 MP접속방법
1.physical server들은 mp의 ip로 telnet,ssh로 접속


========================kernel==========================

#> kconfig
#> kconfig -s original (현재 커널 backup)
#> kconfig
#> ll /stand/original

tuning 시작!!

#> kctune    <- kernel 값들 보여줌
#> kctune nproc (동시실행 가능한 process의 최대개수)
#> kctune nproc=5000
자동backup할거냐 물어오면 yes -> /stand/backup에 저장
#> kctune nproc=5200
이때 부턴 자동으로 저장 (5000값이 저장됨) 원래 있던 값은 어디로? 
=> 없어 그래서 original을 만들었던거야!!!!
#> kconfig -s oracle 
#> kconfig                <- 이것저것 생겨난게 보일거야

만약 튜닝이 이상해서 복구한다면?
#> kconfig -l original (dynamic 부분은 즉시 적용 but static 부분은 재부팅 될때 까지 미적용)
#> kconfig -D (static 부분 확인-> 내용이 나오면 reboot 아니면 그냥 ~~~)
#> 
#> 
#> 
#> 
#> 


'tip > tip. HP-UX' 카테고리의 다른 글

여러개의 depot 일괄 설치 방법  (0) 2013.11.19
Disk 구성 확인  (0) 2013.10.18
HP_UX Admin II  (0) 2013.08.13
[HP-UX] LVM  (0) 2013.04.16
[HP-UX] HP-UX 기동 순서  (0) 2013.04.16
Posted by wooix
tip/tip. Ubuntu2013. 4. 16. 13:48

1. sudo apt-get install apache2

2. sudp apt-get install libapache2-mod-auth-mysql

3. sudo apt-get install mysql-server mysql-client

4. sudo apt-get install php5-common php5 libapache2-mod-php5

5. 연동모듈 설치 

    sudo apt-get install php5-mysql

6. sudo /etc/init.d/apache2 restart

7. 정상작동 확인 

    sudo netstat -tap | grep mysql

"tcp    0    0    localhost.:mysql    *:*    LISTEN    - " 이놈 출력시 정상

아니면 sudo /etc/init.d/mysql restart 실행

8. browser로 phpinfo 확인 ()

9. 기타

    /etc/apache2/apache2.conf

    /etc/mysql/my.cnf


'tip > tip. Ubuntu' 카테고리의 다른 글

[Ubuntu] Unix $ variables  (0) 2013.04.26
[Ubuntu] unix signal codes  (0) 2013.04.26
[linux] apt-get dpkg  (0) 2013.04.21
[Ubuntu] Grub basic 복구  (0) 2013.04.16
[Ubuntu] Grub 박살난 경우  (0) 2013.04.16
Posted by wooix
tip/tip. Ubuntu2013. 4. 16. 13:47

1. menu 추가 삭제등 기본값으로 셋팅하기

 

script 괜히 손대지 말고

 

#> os-prober ; update-grub

 

으로 한방에 정리하기

 

2. menu순서 정하기

 

2-1 image파일 순서는 /etc/grub.d 에서 파일들 순번 교체 후 update

 

2-2 window의 경우 update-grub으로 window순번 확인 하고 /boot/grub/grub.cfg에서

set default = "순번"으로 정하고 update

'tip > tip. Ubuntu' 카테고리의 다른 글

[Ubuntu] Unix $ variables  (0) 2013.04.26
[Ubuntu] unix signal codes  (0) 2013.04.26
[linux] apt-get dpkg  (0) 2013.04.21
[Ubuntu] Linux APM  (0) 2013.04.16
[Ubuntu] Grub 박살난 경우  (0) 2013.04.16
Posted by wooix
tip/tip. Ubuntu2013. 4. 16. 13:45

grub 박살난 경우 

 

ubuntu rescu로 들어가서 

 

1. fdisk -l 로 파티션 확인 (sda1이 설치 위치라고 하면)

2. sudo mount /dev/sda1 /mnt

3. sudo mount --bind /dev /mnt/dev

4. sudo mount --bind /proc /mnt/proc

5. sudo chroot /mnt

6. os-prober;update-grub (update-grub안되면 update-grub2로 해보자)

7. grub-install /dev/sda (install 실패시 --recheck 옵션 주고 확인)

8. exit

9. sudo umount /mnt/dev

10. sudo umount /mnt/proc

11. sudo reboot

 

 

이래도 안되서 grub console이 뜨면 강제 부팅 ㄱㄱ

 

grub>uuid 로 설치 위치 확인 (1이라 가정하고)

grub>root (hd0,1) 

grub> kernel /boot/vmlinuz-x.x.x-xxxx ro root=/dev/sda1

grub> initrd /boot/initrd.img-x.x.x-xxxx

grub>boot

 

결론 박살났음 grub.cfg부터 살리고 삽질합시다.


'tip > tip. Ubuntu' 카테고리의 다른 글

[Ubuntu] Unix $ variables  (0) 2013.04.26
[Ubuntu] unix signal codes  (0) 2013.04.26
[linux] apt-get dpkg  (0) 2013.04.21
[Ubuntu] Linux APM  (0) 2013.04.16
[Ubuntu] Grub basic 복구  (0) 2013.04.16
Posted by wooix