HAL 91 - 작고 가벼운 리눅스 배포판

By Matthias Arndt
번역 : 윤봉환/el@linuxlab.co.kr

 

 

    <Table of Contents>

    0. Introduction (서문)
    1. What is HAL91? (HAL91은 무엇인가?)
    2. Features of HAL91 (HAL91의 특징)
    3. Kernel features of HAL91 (HAL91의 커널)
    4. HAL91 - what to do with it? (HAL91 - 무얼 할 수 있을까?)
    5. related links (관련 사이트)

 

0. 서문

    얼마 전부터 나는 클라우스탈 공대(Technical University of Clausthal, http://home.tu-clausthal.de/student/korea/)에서 경제학과 함께 컴퓨터 과학을 배우기 시작했다.
    그 곳에서 리눅스 광인 크리스티앙 페를을(http://home.tu-clausthal.de/~incp/) 만났다. 그가 지금 진행중인 프로젝트 가운데 하나에 대해 말해 주었는데, 그 것이 HAL91 리눅스 배포판이다.

    이 기사는 HAL91이 무엇이며 어디에 쓸 수 있는지 알리려 한다.
    이 기사가 전하는 것보다 더 많은 것을 알려면 HAL91을 관리하는 크리스티앙 페를에게 (mailto:christian.perle@tu-clausthal.de) 연락해 보는 것이 좋겠다.

    나는 그저 여러분에게 이런 배포판도 있다는 것을 알릴 뿐이다...

 

1. HAL91은 무엇인가?

    부트 메시지를 보면 HAL91에 대해 한마디로 표현하고 있다:
     

    _/ _/ _____/ _/ _____/ __/ http://home.sol.no/~okolaas/linux/hal91/
    _/ _/ _/ _/ _/ _/ _/ __/ -=[ Floppy Linux ]=-
    _____/ _____/ _/ ___/ _____/ _/ ver 0.2.0
    _/ _/ _/ _/ _/ _/ _/ okolaas@online.no
    _/ _/ _/ _/ _____/ _/ _/ (c) 1998 0yvind Kolaas

     

    HAL91은 플로피 디스크(1.44MB) 안에 쏙 들어갈 수 있도록 만들어진 작은 리눅스 패포판이다.

    HAL91은 리눅스 시스템의 문제를 해결하기 위해서 몇 가지 제한된 네트워킹 기능을 포함한 유용한 도구들도 들어 있다.

    HAL91 프로젝트는 Oyvind Kolaas가 시작했지만 지금은 Christian Perle이 HAL91 배포판을 관리하고 있다.

 

2. HAL98의 특징

    가능한 한 작게 만들 목적으로 HAL91 시스템은 모두 libc5를 이용한다.

    현재 커널 버전은 2.0.36이다.

    필요한 하드웨어:

    최소한 386 프로세서에 8MB 램을 가진 시스템(사실, 여러분이 386 시스템을 만날 수 있을지 모르겠다) 이상이 필요하다. HAL91은 하드 디스크와 CD-ROM 드라이브를 지원하지만 램 디스크를 이용해 플로피디스크로부터 바로 작동한다.
    HAL91이 가진 특별한 기능 가운데 NE2000과 호환되는 네트워크 하드웨어를 지원하며 널 모뎀 케이블을 이용해 PPP 연결을 설정할 수 있는 기능도 들어 있다.(ppp-nullmodem 스크립트를 이용한다)

    아래 늘어놓은 프로그램과 도구들이 HAL91 배포판에 포함된 것이다.

    tool/program Description
    bash 본 어게인 셸(bourne again shell)
    bunzip2 bzip2 파일 풀기
    bzip2 .bz2으로 압축하기
    cat 파일 내용 보기(concatenate)
    chmod 파일 퍼미션(permissions) 조절하기
    chown 파일의 소유권 바꾸기
    chroot 루트 파일시스템 바꾸기
    cp 파일 복사
    dd 장치, 파일들을 읽고 쓰기
    df 디스크에서 빈 곳 보기
    dir 현재 디렉토리 안에 들어 있는 목록 보기(ls 명령에 링크)
    dmesg 커널 메시지 보기
    du 디스크 사용량 보기
    e2fsck ext2 파일시스템 검사, 고치기
    elvis vi 에디터 클론
    fdisk 하드 디스크 파티션 다루기
    free 메모리 상황 보기
    ftp ftp 클라이언트
    grep 패턴을 포함한 파일들 찾기 (rgrep에 링크)
    gunzip gzip 파일 풀기
    gzip .gz로 압축하기
    halt 시스템 멈추기
    hostname 호스트이름 보여주고 설정하기
    ifconfig 네트워크 장치들 설정하기
    init.net 이더넷을 설정하기 위한 간단한 스크립트
    insmod 커널 모듈 올리기
    less 파일 내용 표시
    ln 링크 만들기
    loadkeys 키맵 읽기
    ls 디렉토리 목록 보여주기
    lsmod 올라간 커널 모듈 보여주기
    mkdir 디렉토리 만들기
    mke2fs ext2 파일시스템 만들기
    mknod 특수한 장치파일 만들기
    mkswap 스왑 파티션 설정하기
    more 페이지 단위로 파일 내용을 표시 (less 명령에 링크)
    mount 파일시스템 마운트하기
    mv 파일 이름을 바꾸거나 옮기기
    ncp 네트워크를 통해 파일/디렉토리를 복사하는 서버/클라이언트
    npoll 네트워크를 통해 stdin 받기
    npush 네트워크를 통해 stdin 보내기
    open 가상콘솔 열기
    ping ICMP 요청 보내기
    ppp-nullmodem 널모뎀 케이블을 이용해 PPP 연결하는 간단한 스크립트
    pppd PPP 데몬
    ps 프로세스 상태 보기
    reset 스크린 깨끗이 비우기
    rgrep 일치하는 패턴을 가진 파일 찾기
    rm 파일이나 디렉토리 지우기
    rmmod 커널 모듈 내리기
    route 네트워크 라우트 설정하기
    sh 본 셸 (bash 명령에 링크)
    sleep 지정한 시간만큼 쉬기
    swapoff 스왑 끄기 (swapon 명령에 링크)
    swapon 스왑 켜기
    sync 캐시 정보와 디스크 동기화하기
    tar 테이프 아카이버
    telnet 원격 서버에 로긴하는 클라이언트
    tr 파일 내용에서 문자열들 바꾸기
    umount 파일시스템 마운트 해제하기
    update 파일시스템 동기 자동화하기
    vi vi 에디터 (elvis에 심볼릭 링크)
    zcat gzip으로 압축된 파일 내용 보기 (gzip에 심볼릭 링크)
    zless gzip으로 압축된 파일 내용을 페이지 단위로 보기

    (이 프로그램들은 모두 플로피 디스크 한 장에 다 들어 있다)

    HAL91 플로피를 디스크 드라이브에 넣고 컴퓨터를 켜면 HAL91 플로피로 부트할 수도 있다.

    부트로더인 LOADLIN도 HAL91 플로피에 들어 있다. 여러분이 원한다면 DOS에서 HAL91을 실행할 수도 있을 것이다.

    HAL91 플로피에서 보이는 모든 파일들은 VFAT 파일 시스템에 놓인 것이다. 여러분은 디스크 내용을 자세히 살피거나 심지어는 그 내용을 DOS나 혹은 Windows 파일 시스템과 호환되는 다른 시스템에서 복사할 수도 있다.(단순히 복사만 한다면 직접 부트할 수 있는 기능은 없어질 것이다)

 

3. HAL91의 커널

    HAL91 커널 환경은 디스크에 들어있는 kconf 파일에서 찾을 수 있다.
     

    #
    # make menuconfig 명령으로 자동 생성된다: 편집하지 말 것.
    #

    #
    # Code maturity level options
    #
    # CONFIG_EXPERIMENTAL is not set

    #
    # Loadable module support
    #
    CONFIG_MODULES=y
    CONFIG_MODVERSIONS=y
    # CONFIG_KERNELD is not set

    #
    # General setup
    #

    CONFIG_MATH_EMULATION=y
    CONFIG_NET=y
    # CONFIG_MAX_16M is not set
    CONFIG_PCI=y
    CONFIG_SYSVIPC=y
    # CONFIG_BINFMT_AOUT is not set
    CONFIG_BINFMT_ELF=y
    CONFIG_KERNEL_ELF=y
    CONFIG_M386=y
    # CONFIG_M486 is not set
    # CONFIG_M586 is not set
    # CONFIG_M686 is not set 

    #
    # Floppy, IDE, and other block devices
    #
    CONFIG_BLK_DEV_FD=y
    CONFIG_BLK_DEV_IDE=y
    # CONFIG_BLK_DEV_HD_IDE is not set
    CONFIG_BLK_DEV_IDECD=y
    # CONFIG_BLK_DEV_IDETAPE is not set
    # CONFIG_BLK_DEV_IDEFLOPPY is not set
    # CONFIG_BLK_DEV_IDESCSI is not set
    # CONFIG_BLK_DEV_IDE_PCMCIA is not set
    CONFIG_BLK_DEV_CMD640=y
    # CONFIG_BLK_DEV_CMD640_ENHANCED is not set
    # CONFIG_BLK_DEV_RZ1000 is not set
    # CONFIG_BLK_DEV_TRITON is not set
    # CONFIG_IDE_CHIPSETS is not set
    CONFIG_BLK_DEV_LOOP=y
    CONFIG_LOOP_ROOT=y
    # CONFIG_BLK_DEV_MD is not set
    CONFIG_BLK_DEV_RAM=y
    CONFIG_BLK_DEV_INITRD=y
    # CONFIG_BLK_DEV_XD is not set
    # CONFIG_PARIDE is not set
    # CONFIG_BLK_DEV_HD is not set

    #
    # Networking options
    #
    # CONFIG_FIREWALL is not set
    # CONFIG_NET_ALIAS is not set
    CONFIG_INET=y
    # CONFIG_IP_FORWARD is not set
    # CONFIG_IP_MULTICAST is not set
    # CONFIG_SYN_COOKIES is not set
    CONFIG_IP_ACCT=y
    # CONFIG_IP_ROUTER is not set
    # CONFIG_NET_IPIP is not set
    # CONFIG_INET_PCTCP is not set
    # CONFIG_INET_RARP is not set
    # CONFIG_NO_PATH_MTU_DISCOVERY is not set
    CONFIG_IP_NOSR=y
    CONFIG_SKB_LARGE=y
    # CONFIG_IPX is not set
    # CONFIG_ATALK is not set
    # CONFIG_AX25 is not set
    # CONFIG_NETLINK is not set

    #
    # SCSI support
    #
    # CONFIG_SCSI is not set

    #
    # Network device support
    #
    CONFIG_NETDEVICES=y
    # CONFIG_DUMMY is not set
    # CONFIG_EQUALIZER is not set
    # CONFIG_PLIP is not set
    CONFIG_PPP=y
    # CONFIG_SLIP is not set
    # CONFIG_NET_RADIO is not set
    CONFIG_NET_ETHERNET=y
    # CONFIG_NET_VENDOR_3COM is not set
    # CONFIG_NET_VENDOR_SMC is not set
    # CONFIG_NET_PCI is not set
    CONFIG_NET_ISA=y
    # CONFIG_LANCE is not set
    # CONFIG_AT1700 is not set
    # CONFIG_E2100 is not set
    # CONFIG_DEPCA is not set
    # CONFIG_EWRK3 is not set
    # CONFIG_EEXPRESS is not set
    # CONFIG_HPLAN_PLUS is not set
    # CONFIG_HPLAN is not set
    # CONFIG_HP100 is not set
    CONFIG_NE2000=y
    # CONFIG_SK_G16 is not set
    # CONFIG_NET_EISA is not set
    # CONFIG_NET_POCKET is not set
    # CONFIG_TR is not set
    # CONFIG_FDDI is not set
    # CONFIG_ARCNET is not set

    #
    # ISDN subsystem
    #
    # CONFIG_ISDN is not set

    #
    # CD-ROM drivers (not for SCSI or IDE/ATAPI drives)
    #
    # CONFIG_CD_NO_IDESCSI is not set

    #
    # Filesystems
    #
    # CONFIG_QUOTA is not set
    # CONFIG_MINIX_FS is not set
    # CONFIG_EXT_FS is not set
    CONFIG_EXT2_FS=y
    # CONFIG_XIA_FS is not set
    CONFIG_NLS=y
    CONFIG_ISO9660_FS=y
    CONFIG_FAT_FS=y
    CONFIG_MSDOS_FS=y
    # CONFIG_UMSDOS_FS is not set
    CONFIG_VFAT_FS=y
    CONFIG_NLS_CODEPAGE_437=y
    # CONFIG_NLS_CODEPAGE_737 is not set
    # CONFIG_NLS_CODEPAGE_775 is not set
    CONFIG_NLS_CODEPAGE_850=y
    # CONFIG_NLS_CODEPAGE_852 is not set
    # CONFIG_NLS_CODEPAGE_855 is not set
    # CONFIG_NLS_CODEPAGE_857 is not set
    # CONFIG_NLS_CODEPAGE_860 is not set
    # CONFIG_NLS_CODEPAGE_861 is not set
    # CONFIG_NLS_CODEPAGE_862 is not set
    # CONFIG_NLS_CODEPAGE_863 is not set
    # CONFIG_NLS_CODEPAGE_864 is not set
    # CONFIG_NLS_CODEPAGE_865 is not set
    # CONFIG_NLS_CODEPAGE_866 is not set
    # CONFIG_NLS_CODEPAGE_869 is not set
    # CONFIG_NLS_CODEPAGE_874 is not set
    CONFIG_NLS_ISO8859_1=y
    # CONFIG_NLS_ISO8859_2 is not set
    # CONFIG_NLS_ISO8859_3 is not set
    # CONFIG_NLS_ISO8859_4 is not set
    # CONFIG_NLS_ISO8859_5 is not set
    # CONFIG_NLS_ISO8859_6 is not set
    # CONFIG_NLS_ISO8859_7 is not set
    # CONFIG_NLS_ISO8859_8 is not set
    # CONFIG_NLS_ISO8859_9 is not set
    # CONFIG_NLS_KOI8_R is not set
    CONFIG_PROC_FS=y
    # CONFIG_NFS_FS is not set
    # CONFIG_SMB_FS is not set
    # CONFIG_HPFS_FS is not set
    # CONFIG_SYSV_FS is not set
    # CONFIG_UFS_FS is not set

    #
    # Character devices
    #
    CONFIG_SERIAL=y
    # CONFIG_DIGI is not set
    # CONFIG_CYCLADES is not set
    # CONFIG_STALDRV is not set
    # CONFIG_RISCOM8 is not set
    CONFIG_PRINTER=y
    # CONFIG_SPECIALIX is not set
    # CONFIG_MOUSE is not set
    # CONFIG_UMISC is not set
    # CONFIG_QIC02_TAPE is not set
    # CONFIG_FTAPE is not set
    # CONFIG_APM is not set
    # CONFIG_WATCHDOG is not set
    # CONFIG_RTC is not set

    #
    # Sound
    #
    # CONFIG_SOUND is not set 

    #
    # Kernel hacking
    #
    # CONFIG_PROFILE is not set

 

4. HAL91 - 무얼 할 수 있을까?

    한마디로, HAL91은 복구나(rescue) 문제해결(trouble shooting) 디스크로 쓰인다. 필요한 모든 도구들이 들어 있으며 하드 디스크 없이도 시스템을 부트할 수 있다.

    포함된 도구들은 네트워크 문제를 해결하는 데에도 쓰일 수 있다.

    HAL91은 부트할 수 있는 CD-ROM의 부트 이미지로 쓰일 수도 있으며 또다른 리눅스를 설치하기 위한 기본 리눅스 시스템으로 사용할 수도 있다.

    끝으로 하나 더 말하자면, HAL91의 여러 가지 특성은 배포판을 만드는 방법을 배우기에 참 좋다.

 

5. 관련 사이트

    HAL91 프로젝트와 관련된 홈페이지들이다.

    HAL91 Homepage http://home.tu-clausthal.de/~incp
    discontinued HAL91 page http://home.online.no/~okolaas/hal91.html

     

    Copyright ⓒ 2000, Matthias Arndt. Copying license http://www.linuxgazette.com/copying.html
    Published in Issue 59 of Linux Gazette, November 2000




▲ top

home으로...