2008년 12월 25일 목요일

네트워크 설정

네트워크

유선랜
  • 시스템의 hostname 설정
    hostname을 보려면 $ /bin/hostname
    hostname을 설정하려면 # /bin/hostname 새이름
    새 hostname으로 부팅하려면 /etc/hostname 에 기록하면 됩니다.

  • IP설정은 /etc/network/interfaces에 저장합니다.

    auto eth0
    iface eth0 inet static
    address 192.168.0.10
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    gateway 192.168.0.1
    dns-nameservers 168.126.63.1 168.126.63.2

  • gateway 설정
    gateway를 보려면
    $ netstat -nr 또는 # /sbin/route

    새 gateway를 설정하려면 기존의 gateway를 지우고 (# /sbin/route del default gw 192.168.1.1),새 gateway를설정합니다 (# /sbin/route add default gw 192.168.1.100).

  • DNS는 /etc/resolv.conf에...

    통상 컴퓨터가 켜지면 dhclient가 DHCP서버와 연결하여 nameserver 주소를 받아오고, 이어서 dhclient의 스크립트 /etc/dhcp3/dhclient-enter-hooks.d/resolvconf가 resolvconf에 넘겨주어 /etc/resolv.conf에 저장됩니다.

    다른 방법으로 ifup 프로그램도 /etc/network/interaces를 참조하여 네트워크를 설정할 수 있습니다. 부팅하면 ifup이 /etc/network/interfaces에 기록된 nameserver 주소를 resolvconf에 넘겨주어 /etc/resolv.conf에 저장됩니다.

    따라서 DHCP서버와 연결이 잘 안되어 /etc/resolv.conf가 제대로 설정되지 못할 수 있어,
    /etc/network/interfaces에 dns-nameservers 168.126.63.1 168.126.63.2 와 같이 추가합니다.

무선랜

Debian (Lenny)에서 설치할 때 데스크탑 환경을 선택하지 않고, 표준 시스템만 선택해 설치한 상태입니다.
  • 사용하는 무선랜은 iptime사의 G054U2 와 G054UA입니다.
    우분투 8.10 (Intrepid Ibex)에서 시디로 부팅시에 바로 인식합니다. 그러나 Debian lenny에선 인식을 못해서 firmware를 따로 설치해야합니다.
    Ralink Technology, Corp의 RT2501USB Wireless Adapter로 firmware를 설치합니다.

    # apt-get install firmware-ralink

  • 무선랜 설정을 위해 먼저 wireless-tools 와 wpasupplicant 패키지가 필요합니다.
    리눅스에서 무선랜을 설정할 때 쓰는 여러 프로그램이 wireless-tools에 있으며,
    wpasupplicant패키지로 클라이언트가 네트워크를 암호화(WPA 및 WPA2)할 수 있습니다.

  • /etc/network/interfaces에 다음을 기록합니다.

    auto wlan0
    iface wlan0 inet static
    address 192.168.0.10
    netmask 255.255.255.0
    gateway 192.168.0.1
    wpa-ssid 무선랜이름
    wpa-key_mgmt WPA-PSK
    wpa-proto WPA
    wpa-pairwise TKIP
    wpa-group TKIP
    wpa-psk 비밀번호
    wpa-driver wext

    위에서 address, netmask, gateway를 알맞게 정하고, 무선랜이름과 비밀번호를 맞게 기록합니다. 부팅시에 연결되게 auto wlan0을 기록합니다.

    참고로, WEP은 보안에 취약하므로 사용하지 않습니다.
Gnome에서 무선랜을 고르고 정하려면....
  • 먼저 network-manager-gnome을 설치합니다.
    front-end인 network-manager-gnome을 설치하면, nm-editor등도 설치되며, daemon인 network-manager도 같이 설치됩니다.

    # apt-get install network-manager-gnome

  • Debian (lenny)에선 network manager 아이콘에 주변 무선랜 검색이 안됩니다.
    /etc/default/wpasupplicant에 ENABLED=0 기록합니다.

    # /etc/init.d/dbus restart
    또는 다시 부팅하면 network manager에 무선랜 검색이 됩니다.

  • network-manager-gnome를 설치하여 Gnome에서 무선랜을 설정하면 keyring에 대한 비밀번호를 입력하게 됩니다.

  • 참고로 NetworkManager는 /etc/network/interfaces에 기록되지 않은 랜환경만 설정합니다. Gnome -> 시스템 -> 관리 -> 네트워크를 실행하여 직접 network 설정을 하려면
    gnome-network-admin 패키지를 설치하면 됩니다.
Debian (lenny)와 Ubuntu (Intrepid Ibex) 에서 데스크 탑 설치 후 무선랜 설정
  • 설치 중에 데스크 탑을 선택하면 network-manager (또는 network-manager-gnome이 같이) 설치되어 무선랜을 설정하면, 부팅후 귀찮게도 패스워드를 입력해야 합니다.

  • 직접 /etc/network/interfaces에 무선 네트워크를 직접 고정 IP로 지정합니다.

    auto wlan0
    iface wlan0 inet static
    address 192.168.0.20
    netmask 255.255.255.0
    gateway 192.168.0.1
    wpa-ssid 무선랜이름
    wpa-key_mgmt WPA-PSK
    wpa-proto WPA
    wpa-pairwise TKIP
    wpa-group TKIP
    wpa-psk 비밀번호
    wpa-driver wext

  • network-manger는 /etc/network/interfaces에 기록되지 않은 네트워크만 다룹니다.
    기록되지 않은 네트워크는 network-manager가 DHCP로 부터 IP 및 DNS server를 할당받으려 합니다.
    유선랜 또는 무선랜이던 IP를 제대로 할당받지 못하면 /etc/resolv.conf의 DNS server설정도 초기화로 지워질 수 있습니다. 유선랜은 DNS server를 직접 /etc/network/interfaces에 dns-nameservers 168.126.63.1 168.126.63.2 같이 기록합니다.


데비안 절전

리눅스에서 CPU 절전

  • CPU 속도를 조절하여 절전을 합니다.
    이러한 절전은 governor <-> CPU Frequency Driver를 거쳐 CPU절전을 합니다.

  • 즉, CPU의 성능(최대속도, 최소속도등)을 CPU Frequency Driver가 인식하고 governor에게 알려주며, 이 governor가 다시 사용자에게 알려주어 CPU상태를 알 수 있습니다.
    반대로 사용자가 CPU 속도를 최대로 할 것인지, 또는 최소로하여 절전을 할지를 governor에게 정해주면, 이 governor가 다시 CPU Frequency Driver에 전달하여 CPU 속도를 조절하게 됩니다.

  • Debian Lenny에서 부터는 cpufrequtils를 설치하여 CPU Frequency Driver와 governor를 설정합니다.

    데스크탑 환경을 선택하고 설치하면 acpi와 acpid가 설치되며, 또한 cpufrequtils가 설치되면서 CPU Frequency Driver와 kernel governor가 맞게 설정됩니다.
    그러나 초기 설치시에 데스크탑 환경을 설택하지 않고 표준 시스템만 설치하면 acpi와 acpid은 설치되나, cpufrequtils는 설치되지 않습니다. CPU 절전을 하려면 cpufrequtils을 설치합니다.

    # apt-get install cpufrequtils
    설치된 후 이제 다시 부팅하면 시스템에 알맞은 CPU Frequency Driver와 governor가 실행됩니다.
cpufrequtils의 대해서...
  • cpufrequtils를 설치하면 /etc/init.d/loadcpufreq가 설치됩니다.
    loadcpufreq는 부팅할 때 실행되는 script로 시스템에 알맞은 cpu driver를 메모리에 올려줍니다.

    커널에서 지원하는 CPU Frequency Driver를 알아보려면,
    # modinfo /lib/modules/$(uname -r)/kernel/arch/*/kernel/cpu/cpufreq/* | grep "^[fd]"

    사용자가 직접 CPU Frequency Driver를 메모리에 올리려면 이전의 방법 (# modprobe -v powernow-k8) 대신에 /etc/default/loadcpufreq에 저장하면 됩니다.

  • 또한 cpufrequtils를 설치하면 /etc/init.d/cpufrequtils가 설치되어, 부팅할 때 알맞은 governor를 실행시켜 줍니다.

    사용가능한 governer를 보려면
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors

    커널에서 사용할 수 있는 커널 governor를 보려면
    $ ls /lib/modules/$(uname -r)/kernel/drivers/cpufreq/
    다음과 같이 보입니다.
    cpufreq_conservative.ko cpufreq_powersave.ko cpufreq_userspace.ko
    cpufreq_ondemand.ko cpufreq_stats.ko freq_table.ko

    각각의 커널 governor는 다음과 같이 작동합니다.
    performance (cpufreq_performance) CPU 클럭을 최고 주파수 상태로 유지합니다.
    powersave (cpufreq_powersave) CPU 클럭을 최저 주파수 상태로 유지합니다.
    ondemand (cpufreq_ondemand) 최저 주파수 상태로 있다가 필요할 때에 곧바로 최고 주파수로 바뀝니다.
    conservative (cpufreq_conservative) ondemand와 비슷하나 필요할 때에 최고 주파수로 점차 올라갑니다. 노트북에 알맞습니다.
    userspace (cpufreq_userspace) 사용자가 CPU 클럭 주파수 변경합니다.

    사용자가 부팅시에 특정 governor를 실행되도록 하려면/etc/default/cpufrequtils에 기록하면 됩니다.

    커널 governor말고 사용자 governor(cpufreqd, cpudyn, powersaved, powernowd ...)는 특별한 경우가 아니고는 필요하지 않습니다.

    또한 /etc/default/cpufrequtils에서 CPU의 frequency의 한도를 직접 정할 수 도 있습니다.
    참고로 사용하는 CPU의 frequency의 한도를 보려면
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
  • 추가로 cpufrequtils를 설치하면 /usr/bin/cpufreq-info와 /usr/bin/cpufreq-set가 설치되어 cpu frequency 정보를 알아보거나 직접 정할 수 있습니다.
모니터링
  • CPU frequency를 보려면
    $ cpufreq-info
  • 또는 Gnome에서 패널에 애플릿(CPU 클럭 스케일 정보)을 추가합니다.
모니터 절전
  • apt-get install xscreensaver

데비안 사운드 시스템

데비안의 ALSA
  • 다음의 패키지가 필요합니다.

    linux-sound-base
    OSS와 ALSA중 어떤 사운드 시스템을 사용할지 정하게 됩니다.

    libasound2
    alsa library와 기본 플러그인이 있습니다. 데비안(lenny)을 설치할 때 데스크탑 환경은 선택하지 않고 표준 시스템만 설치를 해도, 이 lib-sound base와 libasound2는 설치됩니다. lsmod해보면 사운드 카드에 맍는 모듈들 (snd_emu10k1 snd_pcm_oss snd_mixer_oss snd_pcm...)이 보이게 됩니다.

    alsa-base

    ALSA 드라이버가 알맞게 작동하도록 하는 설정파일(configuration files)입니다.

    리눅스 커널에는 여러 사운드 카드의 드라이버가 포함되어 있습니다. 컴퓨터를 켜면 사운드 카드에 맞는 드라이버가 모듈(kernel loadable modules)로 메모리에 올려지게 됩니다. 사운드 카드가 지원되지 않으면 alsa-source 패키지로 모듈을 직접 만들어 (module-assistant 패키지로) 사용합니다. alsa-base은 이러한 모듈이 어떤 식으로 작동하는지 정한 설정파일입니다.

    alsa-utils
    이 패키지는 ALSA를 설정하거나 사용하는 유틸리티(utilities) 있습니다.
    amixer: command line mixer
    alsamixer: curses mixer
    amidi: read from and write to ALSA RawMIDI ports
    aplay, arecord: command line playback and recording
    aplaymidi, arecordmidi: command line MIDI playback and recording
    aconnect, aseqnet, aseqdump: command line MIDI sequencer control


    alsa-oss

    이 전에 사용하던 사운드 시스템인 OSS를 사용하늘 프로그램이 ALSA에서 작동하도록 하는 패키지입니다.
    OSS용 프로그램이 OSS장치가 아닌 ALSA장치로 사운드를 출력하게 됩니다. 가상의 OSS 장치를 만들어 사용하도록 하는 것도 있으나 이 패키지로 ASLA장치로 출력하는 것입니다.

    alsamixergui
    alsa-utils에 있는 alsamixer가 있습니다. alsamixergui는 그래픽 환경의 alsamixer입니다.

  • 사운드 카드 설정

    linux-sound-base와 libasound2를 설치합니다. 그러나 이미 설치되어 있을 것입니다.

    alsa-base alsa-utils alsa-oss 를 설치합니다. 필요하면 alsamixergui도 설치합니다.

    alsaconf로 설정하고

    alsamixer로 소리크기등을 정한 후 alsactl로 저장합니다.

2008년 12월 23일 화요일

ssh

데비안 (lenny)에서 ssh

  • 설치
    # apt-get install ssh

  • 설정
    # nano /etc/ssh/sshd_config

    port 22
    필요하면 다른 포트로 바꿉니다.

    PermitRootLogin yes
    보안 때문에 no로 바꿉니다. root 로그인이 필요하면 /etc/hosts.allow에 다음과 같이
    sshd: 192. : allow
    sshd: ALL : deny

    #GSSAPIAuthentication no
    접속이 느리면 #를 지워서 GSSAPIAuthentication no로 합니다.

  • ssh 재시작
    # /etc/init.d/ssh restart
  • 확인은
    $ netstat -ntl

2008년 12월 22일 월요일

원격 데스크탑

원격 데스크탑 (Debian Lenny)

Debian에서 Debian으로
  • 서버 설정 (시스템->기본설정->원격 데스크탑)

    서버가 없으면 설치합니다.
    # apt-get install vino

    일반탭에서 다른사용자가 데스크탑을 볼수 있게 하고 제어할 수 있도록 선택합니다.
    보안은 사용자가 이 암호를 입력하도록 합니다를 선택하여 암호를 정합니다.

    고급탭에서 로컬연결만 허용을 체크하니 무선으로 연결된 로컬이 연결이 되지 않아 선택하지 않았습니다.
    암호화 필요를 선택하였습니다.

  • 클라이언트 (프로그램->인터넷->원격 데스크탑 보기)

    없으면 vinagre를 설치합니다.
    # apt-get install vinagre

    먼저 연결을 누른 후 호스트에 호스트명을 입력합니다. (안되면 IP를 입력합니다.)

    조금 기다리면 암호를 물어옵니다.

Debian에서 윈도우 XP로
  • 먼저 XP에서 내컴퓨터 -> 속성 -> 원격에서 [사용자가 이 컴퓨터에 원격으로 연결할 수 있음]에 체크합니다.

  • rdesktop을 설치합니다.
    # apt-get install rdesktop
  • 사용법은
    rdesktop -u 사용자 이름 IP주소