'cooperative linux'에 해당되는 글 2건

  1. 2011.12.25 coLinux에서 네크워크 설정하기 (Network setup in coLinux)
  2. 2011.12.24 coLinux 설치하기

참조 사이트:
http://colinux.wikia.com/wiki/Network
http://docs.fedoraproject.org/en-US/Fedora/15/html/Deployment_Guide/ch-Network_Interfaces.html


이전 글( http://vis-a-vis.tistory.com/19 )에서 윈도우즈 XP에 coLinux를 설치하는 과정을 설명하였다. 이 글은 coLinux Fedora에서 네트워크를 설정하는 과정을 설명한다.

여기서는 두 개의 가상의 네크워크 라인을 coLinux와  hosting OS(예, 윈도우즈 XP) 사이에 생성하여, 하나는 coLinux에서 컴퓨터 화면에 x program을 띄우는데 사용하며, 다른 하나는 coLinux에서 실제 네트워크 어댑터로 연결하여 외부 인터넷으로 연결되도록 하는데 사용한다.

참조 사이트를 보면 여러 가지 방식이 가능하나, 각각 TAP과 WinPcap을 이용하여 두 개의 가상 네트워크 라인을 생성하는 방식을 성능면에서 가장 추천하고 있다. 본 글에서도 TAP을 이용하여 하나의 라인 (라인 0라고 하자)을, WinPcap을 이용하여 다른 하나의 라인 (라인 1이라고 하자)을 생성하는 과정을 설명한다.
 


1. Windows XP에서 TAP 가상 어댑터 설정하기

   여기서는 라인 0가 윈도우즈 쪽에 연결될 어댑터를 어떻게 설정하는지 알아보자.

  1. coLiinux를 설치할 때 TAP-Win32 adapter도 함께 설치하였다면 아래의 파란색 네모 안에 보이듯이 해당 어댑터가 Network Connections에 생성되어 있다.


  2. 마우스 오른쪽 버튼을 클릭하여 활성화된 메뉴에서 Properties를 클릭하면 아래의 창이 뜬다.


  3. 여기서 Configure를 클릭하면 아래의 창이 뜬다. 여기서 Advanced 탭 아래에 있는 Media Status 항목의 값을 Always Connected로 설정하고 OK를 클릭한다.


  4. TAP 어댑터의 Firewall 설정 해제 하기. 1B의 그림에서 Advanced 탭을 클릭하면 아래와 같이 Windows Firewall 설정을 변경할 수 있다. Settings를 클릭한다.


    그런 다음, 아래와 같이 Firewall을 끈다. 라인 0는 coLinux와 Windows XP사이에만 존재하는 폐쇄 라인이므로 외부와 연결되어 있지 않다. 게다가 coLinux 쪽에서 Windows XP를 공격할 것도 아니므로 Firewall을 꺼도 무방하다.


  5. Static IP address 할당하기.

    1B의 그림에서 Internet Protocol (TCP/IP)를 선택한 후, Properties를 클릭하여 아래와 같이 static IP address(192.168.37.10)와 subnet mask(255.255.255.0)를 입력하고 OK를 클릭한다. IP 주소 번호에서 37은 아무렇게나 선정된 숫자이며, 중복된 번호의 어댑터가 존재하면 다른 번호로 대체될 수 있다.




2. coLinux에서 두 개의 네트워크 인터페이스 설정하기
 
  1. 먼저, C:\coLinux 폴더 밑에 있는 fedora.conf 파일을 열어서 아래와 같이 eth0와 eth1 라인을 추가하고 저장한다.

    kernel=vmlinux
    initrd=initrd.gz
    cobd0="fedora11.img"
    cobd1="swap512m.img"
    cofs0="."
    root=/dev/cobd0 ro
    # mem=256
    # cocon=120x40
    eth0=tuntap
    eth1=pcap-bridge,"Wireless Network Connection",XX:XX:XX:XX:XX:XX,

    eth0는 윈도우즈의 TAP 어댑터로 연결되는 가상의 폐쇄 라인 (라인 0) 을 생성하는데 사용되는 coLinux 쪽의 어댑터이다. eth1은 WinPcap을 사용하여 실제 네트워트 카드로 연결되는 가상의 라인 (라인 1)을 생성하는데 사용된다.

    eth1의 값 중에서 " "안의 부분은 외부 인터넷과 연결된 실제 네트워크 어댑터의 이름을 사용한다. 유선 랜의 경우 대개 그 이름은 "Local Area Connection"이며, 무선 랜의 경우는 "Wireless Network Connection"이다. 확실하게 하기 위해서 1A에 있는 그림의 Network Connections 창을 열어서 이름이 실제로 어떻게 명명되어 있는지 확인하는 것이 좋다.

    WinPcap 어댑터가 무선랜 카드로 연결되는 경우는, eth1의 끝에 무선랜 카드의 MAC address를 XX:XX:XX:XX:XX:XX 처럼 추가한다. 무선랜 카드의 MAC 주소는 윈도우 명령창에서 ipconfig -all을 실행하면 확인할 수 있다.



3. coLinux Fedora 상에서 두 개의 네트워크 인터페이스 설정하기

  1. coLinux를 실행하여 coLinux Fedora를 부팅한 뒤, Cooperative Linux console에서 root로 로그인한다. (이전 글 coLinux 설치하기 참조) 그런 뒤, 아래의 명령어로 /etc/sysconfig/network-scripts 디렉토리로 이동한다.

    [root@localhost ~]# cd /etc/sysconfig/network-scripts

  2. ifcfg-eth0 파일을 아래와 같이 수정한다. 원본 파일은 다른 이름(예, ifcfg-eth0.orig)으로 저장한다.

    DEVICE=eth0
    IPADDR=192.168.37.20
    NETWORK=192.168.37.0
    NETMASK=255.255.255.0
    BROADCAST=192.168.37.255
    BOOTPROTO=none
    ONBOOT=yes

    위의 IPADDR, NETWORK, BROADCAST 주소 값 중에 37은 다시 한 번 말하지만 임의의 숫자이다. 중복된 번호의 어댑터가 존재하면 다른 아무 번호로 바꿀 수 있다. 단, 1E에서 할당한 static address와 같은 숫자로 맞춰야 한다.

  3. ifcfg-eth1 파일을 아래와 같이 수정한다. 파일이 존재하지 않으면 생성시킨다.

    DEVICE=eth1
    ONBOOT=yes
    BOOTPROTO=dhcp

    eth1은 BOOTPROTO값을 dhcp로 하여 동적으로 주소를 할당받을 수 있도록 한다.

  4. 설정이 끝낸 후, 아래의 명령어로 network를 재시동한다.

    [root@localhost ~]# /etc/init.d/network restart                                
    Shutting down interface eth0:                              [  OK  ]            
    Shutting down interface eth1:                              [  OK  ]            
    Shutting down loopback interface:                       [  OK  ]            
    Bringing up loopback interface:                           [  OK  ]            
    Bringing up interface eth0:                                  [  OK  ]            
    Bringing up interface eth1:    
    Determining IP information for eth1... done
                                                                           [  OK  ]

    모두 OK가 되면 네트워크 어댑터 eth0와 eth1이 정상적으로 작동하는 것이다.

  5. 테스트. 아래와 같이 ping 명령어를 이용하여 네트워크 연결상태를 확인한다.

    [root@localhost ~]# ping 192.168.37.10                                         
    PING 192.168.37.10 (192.168.37.10) 56(84) bytes of data.                       
    64 bytes from 192.168.37.10: icmp_seq=1 ttl=128 time=20.0 ms                   
    64 bytes from 192.168.37.10: icmp_seq=2 ttl=128 time=0.000 ms                  
    64 bytes from 192.168.37.10: icmp_seq=3 ttl=128 time=0.000 ms                   ^C                                                                             
    --- 192.168.37.10 ping statistics ---                                          
    3 packets transmitted, 3 received, 0% packet loss, time 3000ms                 
    rtt min/avg/max/mdev = 0.000/6.666/20.000/9.428 ms

    [root@localhost ~]# ping www.google.com                                        
    PING www.l.google.com (74.125.224.208) 56(84) bytes of data.                   
    64 bytes from www.google.com (74.125.224.208): icmp_seq=1 ttl=57 time=70.0 ms  
    64 bytes from www.google.com (74.125.224.208): icmp_seq=2 ttl=57 time=70.0 ms  
    64 bytes from www.google.com (74.125.224.208): icmp_seq=3 ttl=57 time=270 ms    ^C                                                                             
    --- www.l.google.com ping statistics ---                                       
    4 packets transmitted, 3 received, 25% packet loss, time 3610ms                
    rtt min/avg/max/mdev = 70.000/136.666/270.000/94.281 ms

    윈도우의 가상 TAP adapter 쪽으로나, 외부 인터넷(예, www.google.com)쪽으로나 패킷 로스없이 잘 연결된 것을 확인할 수 있다.



4. 문제해결

  1. coLinux Fedora를 재부팅해도 eth0, eth1이 자동으로 로딩되지 않고 매번 /etc/init.d/network restart를 실행시켜야 eth0와 eth1이 로딩되는 경우

    우선, ifcfg-eth0와 ifcfg-eth1파일에서 ONBOOT 값이 yes로 되어 있는지 확인한다. no 이면 yes로 바꾸고 network 를 재시동한다.

    그래도 문제가 지속되면, 아래와 같이 network 설정을 확인한다. 만약 모든 값이 off이면 on으로 설정한다.

    [root@localhost ~]# chkconfig --list network
    network         0:off   1:off   2:off   3:off   4:off   5:off   6:off
    [root@localhost ~]# chkconfig network on                                       
    [root@localhost ~]# chkconfig --list network                                          
    network         0:off   1:off   2:on    3:on    4:on    5:on    6:off


Posted by 참향그늘
,

참조 사이트:
Cooperative Linux
coLinux wiki


1. coLinux 란?

"Cooperative Linux (coLinux) is the first working free and open source method for optimally running Linux on Microsoft Windows natively."

자연스럽게 마이크로 소프트 윈도우즈 상에서 리눅스를 최적으로 실행하기 위한 최초의 무료 공개 프로그램이다.


"... it allows one to ... run Linux on Windows 2000/XP/Vista/7, without using a ... virtualization software, VMWare ..."

VMWare 같은 가상 소프트웨어 없이 윈도우즈 2000/XP/Vista/7에서 리눅스를 실행할 수 있게 한다.



2. 파일 내려받기 (File Download)

소스 포쥐 사이트 ( http://sourceforge.net/projects/colinux/files/ )에서 아래의 파일들을 내려 받는다.

  1. coLinux-stable/0.7.9-linux-2.6.33.7 (2011-04-29)
  2. Images 2.6.x Fedora (2011-12-18)
    Fedora 이외에도 Ubuntu, Debian, ArchLinux, Slackware 같은 리눅스 시스템을 내려 받을 수 있다. 이 글에서는 Fedora를 기준으로 윈도우 XP상에 설치하는 과정을 설명하고자 한다.

http://www.winpcap.org 에서 

      C. WinPcap을 내려 받는다.
          2011년 12월 23일 기준으로 버전 4.1.2 ( WinPcap_4_1_2.exe )를 받았다.



3. 설치하기 (Installation)

  1. WinPcap을 먼저 설치한다. 내려 받은 WinPcap_4_1_2.exe 파일을 더블 클릭하여 설치를 완료한다.

  2. 내려받은 coLinux-0.7.9.exe 파일을 더블 클릭하여 설치를 시작한다. 아래의 창이 뜨면 Next를 클릭한다.


    다음의 창에서 I agree 버튼을 클릭한다.


    이미 Fedora 파일 시스템을 내려 받았으므로, 아래의 창에서 Root Filesystem image Download를 체크를 지우고  Next를 클릭한다.


    설치할 폴더 이름을 C:\coLinux\ 로 지정한 다음, Next를 클릭한다.


    WinPCAP도 이미 설치하였으므로 Next를 클릭한다.


    coLinux를 설치하는 중에 TAP-Win32 Adapter를 설치할 것인지 물어보는데, Continue Anyway를 클릭한다.


    설치가 완료되면 아래의 창에서 Next를 클릭한다.


    아래의 창에서 Finish를 클릭하여 설치과정을 종료한다.


  3. 마지막으로 Fedora 파일 시스템을 설치한다. 이 때, 1GB정도의 하드 공간이 필요하다.

    파일 Fedora-11-20090919.exe를 C:\coLinux 디렉토리로 이동한다. 파일을 더블 클릭하여 압축을 푼다. 압축을 풀고나면 Fedora.cmd, Fedora.conf, fedora11.img, swap512m.img의 파일들이 생성된다.



4. 실행하기

윈도우 명령 창에서 아래와 같이 명령어를 입력한다.
C:\coLinux>colinux-daemon.exe @fedora.conf
 

그러면, 아래와 같이 Cooperative Linux console이 따로 생성되면서 리눅스 프로그램 부팅이 시작된다.


부팅이 완료되면, 아래와 같이 root로 로그인한다. 



useradd 란 명령어로 root이외의 계정을 생성한 뒤, 다음부터는 될 수 있으면 root가 아닌 일반 사용자로 로그인 한다.

윈도우 명령창에서 명령어를 직접 입력하여 coLinux를 실행하는 대신에 단축 아이콘을 이용할 수도 있다. 파일
colinux-daemon.exe의 단축 아이콘을 바탕 화면에 생성한다. 아이콘을 마우스 오른쪽 단추로 클릭하여 property를 조정한다. 아래와 같이 shortcut 탭의 Target 필드에 @fedora.conf 를 추가입력하고 저장한다.


이 단축 아이콘을 더블 클릭하면 cooperative linux console 이 생성되면서 리눅스 부팅 과정이 시작된다.




5. 종료하기

coLiniux를 종료할 때는 다음의 명령어를 입력한다.
[root@localhost ~]# shutdown -h now

아래에서와 같이 System halted란 메시지가 나오면, File-Quit을 클릭하여 console을 종료한다.




6. 제거하기

원도우 명령창에서 Uninstall.exe를 실행한다.



아래의 창들에서 각각 Uninstall과 Close 버튼을 클릭하여 프로그램 제거를 완료한다.




Posted by 참향그늘
,