누구나 화낼 줄은 안다. 그건 쉬운 일이다. 그러나 꼭 화를 내야 할 올바른 대상에게, 올바른 정도껏, 올바른 때에, 올바른 목적을 위해, 올바른 방법으로 화내는 것은 쉬운 일이 아니다. ―아리스토텔레스
[[Include(분류/linux)]]
1 링크 #
http://www.lug.or.kr - 한국 리눅스 사용자 그룹.
http://kltp.kldp.org - KLDP 리눅스 팁 프로젝트. 꽤 실전적인 팁이 많이 있다.
http://www-903.ibm.com/developerworks/kr/linux/library/l-htl.html - 리눅스에서 하이퍼 쓰레딩을 커널 2.4.17부터 지원하는군요. 이에 대한 IBM 기사.
http://www.hancom.com/education/On_line/program/chapter5_1.html - rpm 제작 튜토리얼.
http://ftp.redhat.com/pub/redhat/linux/updates/9/en/os/i386/ - redhat9 rpm 모음.
http://www.unix.co.kr/ - 괜찮은 유닉스 관련 팁이나 자료 만땅.
http://www.senux.com/linux/ - brian이라는 닉네임의 개인 홈피. 자료 링크가 많다.
3 fedora 관련 #
http://fedora.redhat.com - fedora core 공식 링크.
- fedora/최신커널링크 - 커널 rpm이 발표될 때마다 적어놓는 곳.
http://www.fedorafaq.org/ - 비공식 faq.
- Fedora는 기본적으로 UTF-8로 설정되어있습니다. 이를 euc-kr 로케일로 변경하려면 /etc/sysconfig/i18n 화일에서 UTF-8 부분들을 모두 eucKR로 교체하면 됩니다.
- Fedora Core 2에서 커널 2.6.6을 rpm으로 설치해도 /usr/include에는 커널 2.4 기반의 커널 헤더가 존재하게 됩니다. (아직 처리안한듯) 이를 2.6.6 커널 헤더로 고칠려면 다음과 같이 해야합니다. (ACE 5.4.2에서 Dev_Poll_Reactor에 sys_epoll을 적용하여 빌드하려면 이 과정이 필수입니다)
- 다음과 같은 rpm들을 fedora 홈페이지에서 다운 받습니다. 저는 제온 듀얼에서 테스트해서 smp로 설치하였습니다. 아래는 smp 기준입니다. 아니라면 화일명에서 smp가 빠진 버전을 받습니다.
kernel-2.6.6-1.435.2.3.src.rpm kernel-doc-2.6.6-1.435.2.3.noarch.rpm kernel-smp-2.6.6-1.435.2.3.i686.rpm kernel-sourcecode-2.6.6-1.435.2.3.noarch.rpm
- 모든 rpm을 설치합니다. 그런다음 /boot 디렉토리를 봐서 설치되었는지 확인합니다. (화일명을 보면 금방 알수 있더군요)
- 커널 소스는 /usr/src 에 들어있습니다. 그리로 cd 합니다. 위 rpm 으로 설치하였다면 다음과 같이 합니다.
cd /usr/src/linux-2.6.6-1.435.2.3
- ls configs해서 커널 config를 확인합니다. 위에서는 i686 smp 커널을 설치했으므로 다음과 같이 실행합니다. (아니라면 각각에 맞게...)
cp configs/kernel-2.6.6-i686-smp.config .config
- 다음과 같이 계속 실행해줍니다.
make oldconfig; make include/asm; make include/linux/version.h; make SUBDIRS=scripts
- 이제 헤더화일이 모두 만들어졌으므로 /usr/include 에 복사하는일만 남았습니다. 만일을 대비해 기존 asm, linux 디렉토리를 rename 합니다.
mv /usr/include/asm /usr/include/asm2 ; mv /usr/include/linux /usr/include/linux2
- 심볼릭링크를 만들면 끝. (asm-generic 디렉토리는 asm 내부에 의존성이 있습니다)
ln -s /usr/src/linux-2.6.6-1.435.2.3/asm /usr/include ; ln -s /usr/src/linux-2.6.6-1.435.2.3/asm-generic /usr/include ; ln -s /usr/src/linux-2.6.6-1.435.2.3/linux /usr/include
만일에 이전 상태로 다시 되돌릴려면 /usr/include/asm2, /usr/include/linux2 만 다시 asm,linux로 rename 하면 되겠죠.
- 다음과 같은 rpm들을 fedora 홈페이지에서 다운 받습니다. 저는 제온 듀얼에서 테스트해서 smp로 설치하였습니다. 아래는 smp 기준입니다. 아니라면 화일명에서 smp가 빠진 버전을 받습니다.
4 호스팅 업체 목록 #
http://www.maru.net/ - 코로케이션 월 8만.
http://ttidc.com - 코로케이션 서버유 : 월 12만.
http://www.internetserver.co.kr - 하나로통신 IDC 서버유:월10만 서버무:월23만
http://www.e-serverbank.com - 한넷 IDC
5 중고서버 #
- 처음 시작때는 중고서버를 구입해서 코로케이션을 받는 것도 좋을듯 해서 자료를 모아봅니다.
http://serverhouse.intizen.com - 중고서버 중개사이트.
6 커널 컴파일 #
http://wiki.kldp.org/wiki.php/%B8%AE%B4%AA%BD%BA%C4%BF%B3%CE - 리눅스 커널에 대한 정보 검색
http://pages.cpsc.ucalgary.ca/~spark/docs/linux/kernel2.6.x.html - 커널 2.6 업그레이드 방법
http://www.fearthecow.net/index.pl?section=guest&page=kernel - 래드햇9에서 커널 2.6으로 업그레이드하기
7 vsftp관련 #
- 솔직히 관리용 목적이라면 sftp만으로도 충분하다.
http://vsftpd.beasts.org - 홈페이지.
http://www.nedakai.pe.kr/cgi-bin/xboard.cgi?db=mytip&action=view&type=3&element=000057.0000&page=1&ssimode=1&ridx=55 - 설치 팁.
8 노트 #
- ntsysv : 부팅시 데몬 실행여부 설정 (콘솔용)
- cat /proc/cpuinfo : smp 하의 cpu 설정이 제대로 되었는지 확인할때 실행. (zeon 듀얼의 경우 CPU 4개가 떠야 정상~)
- netconfig : ip 및 DNS 주소 같은 네트워크 설정 변경 (콘솔용)
- ifconfig : 랜카드 설정 조회
- iptables : 내부 방화벽 설정.
- 특정 포트 열거나 닫기 수정하려면 -> 데몬이므로 원하는 서비스를 /etc/sysconfig/iptables에서 추가한다음 /etc/rc.d/init.d/iptables restart 해주면 된다.
- 설정 확인은 iptables -L.
- APM을 rpm으로 설치시 mysql는 MySQL-shared-compat-*.rpm을 설치해야 php-mysql-*.rpm의 의존성이 만족된다.
- 특정 명령을 실행하는데 백그라운드로 실행하는 경우 (마지막에 &을 붙이는 경우. 서버 실행이 대부분.) 접속한 셸이 중지되면 프로세스가 중지된다. 이를 막기위해 진짜 데몬으로 돌리려면 다음과 같이 하면 된다. ("명령어" 부분에 원하는 실행문장을 기술하면 된다.)
su -s /bin/bash - root -c "명령어"
- 특정 서비스가 어떤 이유로 죽으면 다시 자동으로 재시작하도록 하는 방법들
- inittab에 respawn 옵션을 주어 등록한 후 재부팅. (일단 뜨면 죽일 수가 없다는게 단점. 버그있는 서비스의 베타테스트 중이면 안좋다.)
http://kltp.kldp.org/stories.php?story=01/06/02/4335565 이런 식의 프로그램을 직접 짜서 똑같이 데몬으로 돌림.
맨처음 실행한 프로세스를 기억해둔후 이것이 떠있으면 아무일도 하지 않다가 죽으면 다시 실행해주는 셸 스크립트를 하나 짜서 /etc/cron.hourly에 넣어둔다. (셸스크립팅 압박과 한시간마다 확인된다는 단점이 있음)
- 우선순위 조정 : nice, renice 예를 들어 최대 우선순위로 어떤 프로그램을 돌릴려면 다음과 같이 한다. (-20이 최대 우선순위, 19가 최저)
여기에서 알게 되어 적어놓습니다.
nice --20 make -f makefile.linux
10 메일링에서 줏어들은 소식들 #
http://www.blackdown.org/java-linux/java-linux@java.blackdown.org/java-linux-msg00050.html - 페도라 코어 2 기본 커널인 2.6.5가 HT zeon에서는 자주 다운된다는 글이 있음. 2.6.6은 괜찮다네요.
11 시리얼 프로그래밍 #
http://wiki.kldp.org/wiki.php/LinuxdocSgml/Serial-Programming-HOWTO - 시리얼 프로그래밍 하우투 번역
http://www.easysw.com/~mike/serial/ - 시리얼 프로그래밍 공개 책








