http://www.oracle.com/technology/tech/oci/instantclient/index.html



오라클 인스턴스...



클라이언트 설치 필요 없이 이것 설치만으로 sql*net를 php에서 사용이 가능하다.



첨부파일은 설치 방법과 해당 파일이다.





아래는 리눅스 설치 방법이다.



이 질문은 kinami님의 세팅 문서를 참고로 한 글입니다.

php5.1.4 + apache2.2.2 + oracle 10g instance client 이걸 설치 해서 원격지에 있는 oracle 10G server에 접속하여 서비스를 할려고 하는데요
oracle 10g instance client 설치시 무엇을 설치 해줘야될지 모르겠네요..

아래의 주소에서 자신의 서버에 맞는 파일을 다운 받는다고 되어있는데
http://www.oracle.com/technology/tech/oci/instantclient/instantclient.html
여기 주소로 가서
instantclient-sdk-linux32-10.2.0.2-20060331
instantclient-basic-linux32-10.2.0.2-20060331
위의 두개의 파일을 받아서
/usr/lib/oracle
/usr/lib/oralce/sdk
위의 디렉토리에 각각 압축을 풀었습니다.

php 컴파일시 libclntsh.so 파일이 없다는 에러를 막기위해 해당디렉토리로 이동한 후
심볼릭 링크를 걸어주었습니다.
# cd /usr/lib/oracle
# ln -s libclntsh.so.10.1 libclntsh.so

오라클 환경변수를 셋팅해줍니다.
# vi /etc/profile
export NLS_LANG=.KO16KSC5601 <= 이 부분을 오라클의 NLS_LANG 값에 맞게 추가합니다.
:wq
# source /etc/profile

php 를 재컴파일합니다. php를 컴파일 하실때
--with-oci8-instant-client 옵션을 추가시키는 것외에 특별히 달라지는 부분은 없습니다.

# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/usr/local/apache/conf \
--with-oci8-instant-client=/usr/lib/oracle \
--enable-sigchild
... (기타 생략)
#make; make install

이건 윈도우 용도 있슴.
2007/09/01 23:32 2007/09/01 23:32

리눅스 Kernel Compile

운영체제/Unix/Linux 2007/09/01 23:26 posted by zekill
이건 어디서 본 자료인지 역시 나지 않는다....ㅜㅜ
이것도 꽤 된 자료같아서리.....뭐 정리삼아 올려놓으니 실제 커널 컴파일 하실분은
확실히 알아보시고 하세용...전 책임 못짐...-0-a

==============================================
Kernel Compile

  배경지식

기본적으로 커널 소스의 디렉토리는 /usr/src/linux 이다.
커널 컴파일 방법에는 3가지가 있다
make config -> 옵션을 잘못 선택하면 처음부터 다시해야하는 단점이 있다.
make menuconfig -> 가장 추천하는 방법(단, ncurses가 있어야 한다.)
make xconfig -> X에서 볼수 있다.( 화려하다. 그냥 구경한번 해보길...)
시스템 사양을 잘 알아야 한다.(이더넷 카드, 사운드 카드, CPU가 몇개(?)인지등...)
어떠한 환경에서 사용할건지 결정하여야 한다.(커널의 최적화를 위해...)
Kernel Compile Option
꼭 주의깊게 살펴볼것!!(나에게 어떤 옵션이 필요한지 볼것)
제 2회 리눅스 공동체 세미나 자료에서 추출(이규호님께 감사)
커널 2.4 Intro중 커널옵션설정
일반적인 데스크탑 PC사양에서 필요로하는 커널옵션들을 설명하고있다.
  따라하기

커널 소스를 받는다.( http://www.kr.kernel.org/pub/linux/kernel/)
소스를 /usr/src 방으로 옮긴다.(예: mv linux-2.2.12.tar.gz /usr/src )
전에 있던 커널소스 /usr/src/linux 디렉은 다른이름으로 바꾸던지 지워라.(예: mv linux linux-2.2.11)
만약 linux라는 이름으로 심벌릭 링크되어있다면 링크만 해제하라.(예: rm linux)
커널 소스를 푼다.(예: tar xvvzf 커널버전.tar.gz 또는 tar xvvIf 커널버전.tar.bz2)
linux라는 디렉토리가 생겼을 것이다. 그 디렉으로 들어간다.( cd linux )
# make menuconfig ( 현재 위치 /usr/src/linux )
커널 컴파일 옵션을 보고 시스템에 맞는걸 선택한다.(중요하다!)
# make clean (예전 오브젝트 파일 제거)
# make dep (의존성을 검사)
# make bzImage (커널 이미지를 압축생성한다.)
# mv arch/i386/boot/bzImage /boot/vmlinuz-커널버전 (예: mv arch/i386/boot/bzImage /boot/vmlinuz-2.2.12)
# mv System.map /boot/System.map-커널버전 (예: mv System.map /boot/System.map-2.2.12)
# vi /etc/lilo.conf ( 리로를 편집한다 )
     boot=/dev/hda
     map=/boot/map
     install=/boot/boot.b
     prompt
     timeout=50
     image=/boot/vmlinuz-2.2.12 -> 새로운 커널이미지를 linux라는
     label=linux              ?   레이블로 한다.
     root=/dev/hda1
     read-only

     image=/boot/vmlinuz-2.2.11 -> 혹시나 모를 커널 패닉에 대비하여     
     label=old                     예전 커널을 old란 레이블로 해놓는다.
     root=/dev/hda1                (예전 버전이 2.2.11일때)
     read-only
# /sbin/lilo ( lilo.conf의 내용을 인식시켜 주기위해 )
여기까지 커널 컴파일은 과정은 끝.
  모듈 인스톨 하기

커널 옵션에서 모듈(M)으로 선택한것을 컴파일 하기위해
# cd /usr/src/linux
# make modules
# make modules_install
위와같이 하면 '/lib/modules/커널버전' 디렉에 모듈들이 위치한다.


Kernel Patch


패치란 매번 커널이 바뀔때 마다 13MB가 넘는 커널 소스를 다시 받을 필요없이 바뀐 차이점만 담고있는 작은 용량의 파일로 커널을 업하는걸 말한다.
장점 : 적은용량으로 패치파일로 커널을 금방 업 할 수 있다.
단점 : 중간의 한 단계를 건너 뛸 수 없다. 예를들어 현재 커널 버전이 2.2.10 인데 바로 2.2.12로 패치 할 순없다.(꼭 2.2.11을 패치하고 나야 된다)
  따라하기

패치 파일을 다운받아 bzip2이든 gzip으로 압축되어있던지 간에 압축을 푼다.
압축을 푼후 /usr/src/linux 방으로 옮긴다.
# patch -p1 < 패치파일?
에러 없이 넘어가면 다음은 커널 컴파일 과정과 같다.
만약 압축을 풀지않고 패치하려면 gzip 또는 bzip2에 따라 다음과 같이한다.
# gzip -cd 패치파일.gz | patch -p1(물론 패치파일의 위치는 /usr/src/linux)
# bzip2 -cd 패치파일.bz2 | patch -p1
2007/09/01 23:26 2007/09/01 23:26
IP alias
이 기능을 사용하기 전에 먼저 커널에 ip_alias.o 모듈이 올라가 있는지 확인

lsmod 로 확인 가능

1.
/etc/sysconfig/network-script/ifcfg-eth0  파일을
/etc/sysconfig/network-script/ifcfg-eth0:0 이라는 이름으로 복사


2.
/etc/sysconfig/network-script/ifcfg-eth0:0
파일을 alias 할 IP 와 기타 정보를 수정하고, DEVICE=eth0:0 으로 수정


3.
/sbin/ifconfig eth0:0 up  명령을 실행한다음
/sbin/ifconfig 명령으로 확인


한번설정해 주시면 리부팅후에도 ifcfg-eth0:0 파일이 존재하는한 계속 적용
2007/09/01 23:25 2007/09/01 23:25
카카카 밑에보듯이 2001년에 어딘지모르는곳에서 퍼온글......
요샌 이정도는 기본세팅으로 되려낭....요샌 리눅스만저본지가 오래되서리..-0-;;;;


리눅스 설치후 초기보안 설정법
--------------------------------------------------------------------------------


작성일자 : 2001년 06월 30일
작성자 : yjchung
조회수 : 25655

--------------------------------------------------------------------------------
보안에 대한 약간내용을 정리해 보았습니다.

1. 서버로 사용할 예정이라면 X-Window는 설치하지 않는다
2. ps aux 또는 ps auxc로 확인하여 불필요한 데몬은 띄우지 않는다.
기본적으로 portmap / identd / atd / lpd /gp -t / xfs 등은 삭제.
3. /etc/rc.d/rc3.d에서 불필요한 서비스는 삭제한다.
4. 불필요한 계정은 삭제 한다.
ftp, xfs, adm, lp, newes, gopher를 /etc/passwd와 /etc/group 에서 주석처리 또는 userdel uid, groupdel gid를 하면 된다.
#userdel adm
#userdel lp
#userdel sync
#userdel shutdown
#userdel halt
#userdel news
#userdel uucp
#userdel operator
#userdel games
#userdel gopher
#userdel ftp (anymous FTP server를 운영하지 않으면 삭제 한다.)
#groupdel adm
#groupdel lp
#groupdel news
#groupdel uucp
#groupdel games
#groupdel dip
#groupdel pppusers
#gropudel slipusers

5. 퍼미션 설정변경-몇몇 중요한 설정 파일의 퍼미션을 변경하영 일반 유저들의 접근을 제한한다.

chmod 700 /etc/exports
chmod 700 /etc/fstab
chmod 700 /usr/bin/chage
chmod 700 /usr/bin/wall
chmod 755 /usr/bin/man
chmod 700 /usr/bin/chfn
chmod 700 /usr/bin/write
chmod 700 /usr/sbin/usernetctl
chmod 700 /bin/mount
chmod 700 /bin/umonut
chmod 700 /sbin/netreport 로 사용을 불가능하게 한다.

chattr +i /etc/fstab와 같이 속성에 Lock을 걸어 파일을 수정 할 수 없게 한다.

6. 시스템 관련 명령어를 특정 그룹에서만 사용가능 하도록 설정
(특정적인 사용자에게만 권한을 줄 수 있다.)
chmod 750 /bin/ps
chmod 750 /bin/netstat
chmod 750 /bin/dmesg
chmod 750 /bin/df
chmod 750 /usr/bin/who
chmod 750 /usr/bin/finger
chmod 750 /usr/bin/last
chmod 750 /usr/bin/top
chmod 750 /usr/bin/w

chgrp wheel /bin/ps
chgrp wheel /bin/netstat
chgrp wheel /bin/dmesg
chgrp wheel /bin/df
chgrp wheel /usr/bin/w
chgrp wheel /usr/bin/who
chgrp wheel /usr/bin/finger
chgrp wheel /usr/bin/last
chgrp wheel /usr/bin/top

- /etc/group을 열어
wheel:x:10:root,tt 와 같이 tt 라는 계정을 wheel 그룹에 추가 한다.
그러면, root를 포함하여 wheel 그룹에 속한 tt라는 계정만이 위 명령어를 수행할 수 있다.
2007/09/01 23:24 2007/09/01 23:24
한때 서버랍시고 집에다가 리눅스켜놓고 도라댕길때 외부에서 갑자기 재부팅시키는 일이생겼는데
아이피가 바껴버리는 바람에....난감했다는....ㅡㅡ;;;;

아래 내용을 rc추가하면 부팅시마다 자동으로 아이피 메일로 전송


DATE="ip_address `date`";export DATE; ifconfig | mail zekill@shinbiro.com -s "$DATE"
2007/09/01 23:24 2007/09/01 23:24