VirtualBox 컴퓨터 켤때 자동으로 머신 돌리기

/etc/init.d/wsv

#!/bin/sh
user=”wsv”
PATH=/home/only/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
DESC=”Virtual Box Wsv”
NAME=wsv
SCRIPTNAME=/etc/init.d/$NAME
VM_NAME=”Wsv”
USERNAME=only
do_start()
{
su $USERNAME -c “VBoxManage startvm ${VM_NAME} -type headless”
}
do_stop()
{
su $USERNAME -c “VBoxManage controlvm ${VM_NAME} acpipowerbutton && sleep 5”
}
case “$1” in
  start)
        echo -n “Starting $DESC: $NAME”
        do_start
        echo “.”
        ;;
  stop)
        echo -n “Stopping $DESC: $NAME”
        do_stop
        echo “.”
        ;;
  restart|force-reload)
        echo -n “not support”
        ;;
  *)
        echo “Usage: $SCRIPTNAME {start|stop|restart|force-reload}” >&2
        exit 1
        ;;
esac
exit 0
뭐 이런식으로 ?
update-rc.d  wsv defaults 99 1
맞나? (제일먼저  켜지고 제일먼저 꺼지게 )
뭐 하여튼 지금 이렇게 씀.
acpid 설치 필수 (안그러면 안꺼져 -_-)

ssh 키 가지고 로그인하기

ssh-keygen -t rsa

하면 저장위치묻고
그 키파일의 패스워드(로그인정보와 무관)
을 묻는다
fingerprint가 출력되면 제대로 생성된것.
아마 저장위치가 기본값으로 USER/.ssh/ 로 되어있을텐데
거기가보면
id_rsa
id_rsa.pub
가 생성되어있을텐데
간단하게 pub 이놈이 자물쇠 역할 (공개키) id_rsa가 열쇠역활(비밀키) 을 한다
id_rsa.pub를  authorized_keys로 이름을 변경하고
id_rsa를 클라이언트 부분으로 빼낸다. (아니면 거꾸로 authorized_keys이걸 서버에 업로드)
클라의 USER/.ssh/ 에 넣고
권한을 600 으로 준다음에
ssh-add 를 하게되면 패스워드를 묻는다.
위에 키 만들때 지정한 패스워드를 넣어주면 된다
이제 ssh host 로 패스워드 입력없이 접속할수 있다
(서버 설정에 따라 다르지만.. 일반적으로 키나 패스워드만 있으면 가능하다)

diff , patch 사용방법

간단한건데 안쓰니까 자꾸까먹네 ;;

이름        diff – 두 파일의 차이점을 비교한다.
사용법     diff [options] from-file to-file
옵션으로는 자주쓰는게
       -u     unified 출력 형식을 사용한다.
       -r     두 디렉토리를 비교할 때, 모든 하위 디렉토리는 재귀적으로(recursively) 비교한다.
       -N    –new-file    디렉토리 비교에서, 어떤 파일이 한 디렉토리에만 있다면 다른 디렉토
리에는 비어었는 파일이 있는 것처럼 비교한다. (간단하게 디렉토리내 새파일도 비교)
NAME       patch – apply a diff file to an original
SYNOPSIS       patch [options] [originalfile [patchfile]]
                      but usually just
                      patch -pnum <patchfile
이게 다인거같다 ㅇㅇ…
옵션으로 들어가는 -p는 patchfile 내 경로를 ‘ / ‘ 를 기준으로 하나를 벗겨낸다.
             /u/howard/src/blurfl/blurfl.c
          setting -p0 gives the entire file name unmodified, -p1 gives
             u/howard/src/blurfl/blurfl.c
          without the leading slash, -p4 gives
             blurfl/blurfl.c
man page 너무 잘되있다zz

시그널

 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP

 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX


시그널 이름 설명
SIGHUP 터미널을 읽어버렸을때 발생한다.
SIGABRT 프로그램의 비정상종료시 발생한다.
SIGINT Control-C 나 DELETE 키를 입력했을때 발생한다.
SIGIO 비동기적인 입출력이 발생했을때
SIGKILL 프로세스를 죽이기 위해서
SIGPIPE 단절된 파이프에 write 할경우 발생
SIGSEGV 잘못된 메모리 참조(주로 포인터를 잘못 썼을때)
SIGSTOP 프로세스의 일시중단 (Ctrl+z)
SIGSUSR1 사용자를 위해 정의된 시그널



SIGNULL …. 은 아니고 SIGNAL (시그날 인가 ;)
http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/system_programing/Signal/SignalHow
http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/system_programing/Signal/SignalHow2
http://www.joinc.co.kr/modules/moniwiki/wiki.php/man/1/kill

런레벨 runlevel

1. 런레벨 확인 방법

Code:
runlevel
N 2

또는

Code:
who -r
        실행-수준 2 2010-02-01 12:40


2. 런레벨 변경  (실행중 바뀌므로 주의)

Code:
telinit N (N은 런레벨 숫자)

출처 : http://www.debianhelp.co.uk/runlevels.htm


3. 데비안/우분투 런레벨 구조

Quote:
* 0 – Halt
* 1 – Single
* 2 – Full multi-user with display manager (GUI) 기본값
* 3 – Full multi-user with display manager (GUI)
* 4 – Full multi-user with display manager (GUI)
* 5 – Full multi-user with display manager (GUI)
* 6 – Reboot

출처 : http://zoobave.blogspot.com/2007/08/deb … ittab.html

4. 레드헷 계열 런레벨 구조

Quote:
0 – 시스템 중지(halt)
1 – 단일 사용자 모드
2 – NFS를 제외한 다중 사용자 모드(만 네트워크와 연결되어 있지 않으면 런레벨
3과 같다)
3 – 모든 기능이 작동하는 다중 사용자 모드(default)
4 – 사용하지 않음
5 – X 윈도우 부팅(xdm, gdm)
6 – 리부팅(reboot)

출처 : http://debianusers.org/seminar/seminar5 … ervice.txt

 
우분투에서 왜 자꾸 런레벨이 2로 뜨는지 몰랐다…(2년동안쓰면서 !)
http://ubuntu.or.kr/viewtopic.php?p=4209