알아두면 좋은 파일들 ¶
/etc/profile : 모든 사용자 적용 스크립트
/etc/syslog.conf : System 의 로그들이 어디에 남는가 기록되어 있는 파일
/etc/group : 그룹 세팅
/etc/services
/etc/passwd : 개인별 암호, 그룹
/etc/sysconfig/network-scripts/ifcfg-eth0 : 네트웍 카드별 설정
/etc/resolv.conf : name server를 잡아 준다.
/etc/motd : 사용자 로그인후에 나오는 메세지
/etc/skel : 사용자 생성시(useradd) 초기 bash 설정 파일 (이렇게 숨겨놓다니)
/etc/vim/vimrc : vim 전체 적용 파일
한달에 한번씩 아파치 로그를 점검하자
주의 사항 ¶
- 8080 포트에 접속해 보고, 자칫 노출될수 있는 정보에 대하여 막는다. resin, tomcat 모두 8080 포트를 이용한 테스트를 한다.
- nameserver를 맞춘다.
Tomcat ¶
- redeploy = "true", reloadable="true" 가 4.0에서 기본값이 아닌듯 하다. 밑져야 해준다.
- servlet 란 디렉토리 특별 취급 받는다.
Resin Restart ¶
..resin/bin/httpd.sh start
시계가 틀렸을때 ¶
올해 들어 한국 표준시의 사이트에서 시간을 맞출수가 없다. 귀찮아서 오페라를 사용하고 있다.
~cpp rdate -s opera
log 메세지들 ¶
/var/log 디렉토리에 있다.
dmesg 부팅시 로그
dmesg 부팅시 로그
현재 위치에서 디렉토리만 출력 ¶
ls -d */ .*/
파일 시스템 문서 ¶
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs2.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs3.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs4.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs5.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs6.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs7.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs8.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs9.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs10.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs2.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs3.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs4.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs5.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs6.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs7.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs8.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs9.html
http://www-903.ibm.com/developerworks/kr/linux/library/l-fs10.html
Debian 설치 중 기억에 남는것 ¶
- X설치시, nvidia 그래픽 카드에서는
~cpp dpkg-reconfigure xserver-xfree86
으로 fram buffer 를 비활성화 시켜야 했다. 여기에서 dpkg로 정의된 세팅이 정의된 페키지도 있다는 것을 알았다.
- apt 주소 세팅시에, ftp://ftp.nuri.net/pub/debian woody main contrib non-free 를 입력하는 방법에 대하여 너무 난감했다.
- 결국 설치의 모든것을 dselect, apt를 쓰거나, dpkg로 패키징 해서 설치해야 한다. 즉, 서버 설치이후에 python이든 다른 app든 전부 툴을 이용해야 한다는 결론
- 이제, apache, mysql, python, JBoss, Java 정도가 남은것 같다. 현재 메니저를 Sawfish+Gnome로 변경해야 겠다. 아무래도 손에 익은걸 써야지.
- ReiserFS 로 변경도 해야 하고 전원 자동 종료 문제도 해결해야 한다.
Tomcat 설치 ¶
jvm설정에서 dummy를 설정하고, jdk는 따로 sun에서 받아 오거나, http://blackdown.org 를 이용한다.
팁 ¶
- 파일시스템을 reiserfs로 모두 바꾸기 http://debianusers.org/stories.php?story=01/03/01/9830027
- 데비안에서 자바 사용하기 http://debianusers.org/stories.php?story=02/08/02/1679110
- 의존성 패키지 몽땅 지우기 http://debianusers.org/stories.php?story=02/05/19/0340504
ext2<->ext3 ¶
그럼 이 명령으로 해보세요...
새로운 ext3 파일 시스템 생성
mke2fs -j /dev/xxx
새로운 ext3 파일 시스템 생성
mke2fs -j /dev/xxx
ext2 -> ext3 로 변환
tune2fs -j /dev/xxx
tune2fs -j /dev/xxx
데비안 커널 패키지를 만드는 방법이다. ¶
~cpp 1. 다음 패키지들을 설치한다. bin86, binutils, libc6-dev, gcc, make, kernel-package, bzip2 menuconfig로 커널 설정하려면 libncurses5-dev 패키지도 설치한다. xconfig로 커널 설정하려면 tcl8.2-dev, tk8.2-dev, blt-dev, tktable-dev 등의 패키지도 설치한다. 2. 다음 사이트 중 하나에서 커널 소스를 받아서 /usr/src 에 놓는다. linux-2.4.7.tar.bz2 혹은 linux-2.4.7.tar.gz 를 받으면 된다. ftp://ftp.nuri.net/pub/linux-kernel/v2.4/ ftp://ftp.kr.kernel.org/pub/linux/kernel/v2.4/ ftp://ftp.kernel.org/pub/linux/kernel/v2.4/ 3. 커널 소스는 /usr/src/kernel-source-X.XX 디렉토리에 풀고 /usr/src/linux는 실제 커널 소스 디렉토리에 대한 링크여야 한다. 이렇게 해야 /usr/src 디렉토리 밑에 여러 버전의 커널 소스를 둘 수 있고 여러 커널을 컴파일하기 편하다. mkdir /usr/src/kernel-source-2.4.7 ln -s /usr/src/kernel-source-2.4.7 /usr/src/linux bzcat /usr/src/linux-2.4.7.tar.bz2 | (cd /usr/src; tar xvf -) 또는 커널 소스를 /tmp/linux 혹은 /var/tmp/linux 디렉토리에 풀 수도 있다. 컴파일 후에 지우기 쉽게 /tmp 에 풀어내는 것이다. 참고로 데비안은 프로그램 컴파일에 필요한 커널 헤더가 libc6-dev 패키지에 포함되어 있기 때문에 커널 소스를 /usr/src 디렉토리에 풀어둘 필요가 없다. bzcat /usr/src/linux-2.4.7.tar.bz2 | (cd /tmp; tar xvf -) 4. 다음과 같이 /etc/kernel-pkg.conf 파일을 편집한다. debian은 커널 패키지의 버전을 정해 주는 옵션이다. config_target은 make-kpkg configure할 때 menuconfig를 실행할지, 또는 xconfig을 실행할지 정하는 옵션이다. CONCURRENCY_LEVEL는 make의 -j 옵션에 대한 숫자인데 빠른 CPU에서 숫자가 높을수록 커널 컴파일의 속도가 빨라진다. maintainer := Michael Lee email := mlee@dot.com debian := 2.4.7+crypto+jfs+xfs kimage := bzImage patch_the_kernel := YES config_target := xconfig root_cmd := fakeroot delete_build_link := YES CONFDIR := /usr/share/kernel-package/Config CONCURRENCY_LEVEL := 3 5. 커널 버전에 문자열을 덧붙이려면 APPEND_TO_VERSION 환경변수를 쓴다. export APPEND_TO_VERSION=-jfs-crypto 6. 커널 소스 디렉토리로 이동한 다음 "make-kpkg clean"을 실행하여 소스 디렉토리를 청소한다. cd /usr/src/kernel-source-2.4.7 make-kpkg clean 7. /boot 디렉토리를 보면 config-2.x.x 파일이 있는데 그걸 커널 소스 디렉토리에 .config 파일로 복사한다. cp /boot/config-2.4.6 /usr/src/linux/.config "make-kpkg configure"를 실행한다. kernel-pkg.conf에서 정한 대로 menuconfig 또는 xconfig이 열리는데 여기서 커널을 설정할 수 있다. 다시 설정하려면 stamp-configure 파일을 지우고 "make-kpkg configure" 재실행하면 된다. 8. 커널 이미지, 커널 문서, 커널 소스, 커널 헤더 패키지를 각각 만들기 위해 다음 명령어들을 실행한다. make-kpkg kernel_image 2> build-errors make-kpkg kernel_doc make-kpkg kernel_source make-kpkg kernel_headers 만일 stamp-configure 파일이 없으면 커널 컴파일하기 전에 menuconfig나 xconfig이 자동으로 실행되며 여기서 커널 옵션을 설정할 수 있다. 9. 상위 디렉토리에 커널 패키지들이 생긴다. 만들어진 커널 패키지를 설치한다. dpkg -i /usr/src/kernel*.deb
팁 모음 ¶
~cpp -cvs commit log 메일로 보내기... /var/lib/cvs/CVSROOT/ 밑에 파일을 직접편집해도 되지만 별로 권장하는 바는 아님. cvs co CVSROOT 그리고 loginfo 파일에 밑에 내용을 추가 ALL mail -s %s <address> 여기서 ALL은 모든 모듈에 대한 commit 로그를 메일로 보내겠단 뜻입니다. 모듈 별로 따로 지정을 할 수가 있다 %뒤에 오는 변수 s : filename V : old version v : new version -mp3 인코더 lame 인코딩 옵션(무손질) lame -b 256 -m s -q 0 --lowpass 19.5 -Emacs에서 한글 문서가 깨져 나올때 dired 에서 한글 강제 지정 C-x <enter> c <인코딩 지정> -gpm이 X 윈도 마우스와 충돌이 날때 repeat_type에서 ms3을 제거해준다... -리눅스에서 시디 이미지 만들기 cat /dev/hdxx > image.iso dd if=/dev/cdrom of=cd.iso 특정 디렉토리 이미지 만들기 mkisofs -rT -V <volume> -P <만든이> -o <출력 파일명> <이미지만들 디렉> -버닝 cdrecord -scanbus -> 스카시 장치 스캔 cdrecord -v speed=<배속> dev=<scanbus 옵션에서 나온 장치> <이미지 파일> 오디오 시디 버닝 cdrecord -v -dao -audio -pad -useinfo speed=<배속> dev=<...> <wav file>.. -자신의 컴타 시간 맞추기 rdate -s time.kriss.re.kr hwclock --systohc 하지만 ntpdate를 추천 -mutt에서 html 메일 w3m으로 보기 ~/.mailcap text/html; w3m -dump %s; nametemplate=%s.html; copiousoutput -mc를 예전 알짜처럼 만들기 아래 쉘 함수를 .bash_profile 등에 등록하여 실행되도록 한다. mc () { mkdir -p ~/.mc/tmp 2> /dev/null chmod 700 ~/.mc/tmp MC=~/.mc/tmp/mc-$$ /usr/bin/mc -b -P "$@" >"$MC" cd "`cat $MC`" /bin/rm -f "$MC" unset MC; } -리소스 파일 수정후 x 재 실행없이 실행하기 xrdb -merge <리소스 파일> -하위 디렉토리 크기 du -h --max-depth=1 <path> -리눅스 스왑 '파일' 추가 dd if=/dev/zero of=/swapfile bs=1024 count=10240 mkswap swapfile 10240 swapon swapfile <-> swapoff swapfile -테스트를 위한 임의 크기 파일 생성 yes 1234567 | head -128000 > 100k-file -로컬 시스템에서 특정 사용자가 사용하는 공간 find / -user <사용자> -fstype <파일시스템 타입> !-name "/dev/*" ! -name "/proc/*" -exec ls -lh{} \; -SUID, GUID 액세스 권한을 갖는 파일의 목록 find / -type f \(-perm -2000 -o -perm -4000 \) -어떤 프로그램이 어떤 포트를 사용하는지... lsof -Pan -itcp -iudp netstat -nap -ext2 -> ext3 새로운 ext3 생성 mke2fs -j /dev/xxx 변환 tune2fs -j /dev/xxx -하위 디렉토리 뒤져서 문자열 치환 find ./ -name *.html -exec perl -pi -e `s/<바뀌고>/<바뀔>/g` {} \; -확장자 한번에 바꾸기 *.JPG -> *.jpg find ./ | grep JPG | sed "s/\(.*\) \.JPG$/mv '&' '\1.jpg'" | sh * -.bitchxrc /win split on /alias WNC {window new hide swap last double on split on channel $0} /fset format_PUBLIC %g$2%y[$0]%B<%n$1%B>%n $3- /fset format_SEND_PUBLIC %G$1%Y[$0]%P<%n$2%P>%n $3- on ^connect '*' { /j hujub /wnc devolus /wnc faqlinux /wnc debian /wnc debian-devel /wnc linux /wnc freebsd /wnc emacs /wnc perl /wnc marathon } wnc 앨리어스 생성 bitchx에서 /wnc <채녈> 하면 새로운 창이 생기면서 조인...창 전환은 alt+번호 -tar를 이용한 디렉토리 복사, 이동 tar -cf - . | (cd <path> && tar xBf -) tar -c <old_path> cf - . | tar -c <new_path> xf -
쓰레드 ¶
http://members.optusnet.com.au/ckolivas/kernel/ 리눅스커널 2.4.19 대의 여러 성능 향상 관련 패치 모음이에요. 벤치마크 보면 눈에 띠게 향상되네요. 요건 벤치마크 프로그램입니다 --동희
곧 2.6 되면 엄청난 변화가 될거라고 하네요. 사람들이 2.6 넘어가고 그냥 3.0 으로 하라고 하네요. 워낙 큰폭으로 변해서..