2. 과정

개요

2.1. ISO 이미지 만들기

하드 디스크에서 충분히 비어 있는 파일 시스템을 고르거나, 만든다. 보통 한장의 CD 롬은 640MB의 데이타를 저장하고 있다는 것을 고려해라. 만약, 8장의 CD를 공유하려 한다면, 5.1GB 정도의 공간을 필요로 한다.

루트로 로긴 하거나, su - 하여 루트 권한으로 작업한다.

bash# df -h

Filesystem            Size  Used Avail Use% Mounted on
/dev/hda5             1.4G   82M  1.3G   6% /
/dev/hda1              15M  827k   14M   6% /boot
/dev/hda7             2.4G 1008M  1.3G  43% /usr
/dev/hda8            23.6G 11.7G 11.7G  50% /home

여기서 /home 파일 시스템이 가장 많은 빈 공간을 가지고 있으므로, CD 이미지를 덤프하기에 적당하다.

 
bash# cd /home
bash# mkdir image
bash# cd image

이제, CD를 iso 이미지 파일로 복사한다. 당신은 CD 롬 디바이스명을 알아야 한다 (보통 /dev/cdrom 이거나 SCSI CD 롬일 경우 /dev/scd0). 나는 예제로 만드레이크 배포본 CD 를 사용할 것이다.

bash# dd if=/dev/cdrom of=mndrk71.iso

"if=" 는 입력 파일(디바이스), "of="는 출력 파일이다. 이 명령의 수행시 화면에 출력되는 입/출력 레코드 메세지를 볼수 있다. (i/o 에러가 없길 바란다.)

2.2. ISO 이미지 마운트 하기

다음 단계는 iso 이미지 파일을 마운트 하는 것이다. 이미지 파일을 마운트 할수 있도록 /mnt 디렉토리안에 서브 디렉토리를 만들어 주자.

bash# cd /mnt
bash# mkdir iso
bash# cd iso
bash# mkdir mndrk71

이제 만들어 놓은 디렉토리에 ISO 파일을 마운트 하자.

bash# mount -o loop -t iso9660 -r /home/image/mndrk71.iso /mnt/iso/mndrk71

"-o loop" 옵션은 블럭 디바이스로의 파일 마운트를, "-t iso9660"는 CD 롬 파일 시스템의 포맷을 뜻한다. "-r" 은 읽기 전용을 의미한다.

이제 다음과 같이 할수 있다:

bash# cd mndrk71
bash# ls -al

위 명령의 결과는 마치 CD롬을 마운트해 ls 한것과 같은 결과를 보일 것이다.

2.3. 시스템 재시동시 마다 이미지 마운트 하기

수동으로의 이미지 파일 마운트가 성공적 이었다면, 시스템 재시동시 마다 자동으로 마운트 되도록 /etc/fstab 파일을 고쳐주어야 한다 (나는 vim 을 사용했지만, Emacs, Joe, Pico , Jed등을 사용해도 된다 :-)).

bash# vim /etc/fstab

다음과 같은 라인 다음에 (당신의 CD 이미지가 마운트된 파일 시스템이 먼저 마운트 되어야 하므로)

/dev/hda8 /home ext2 defaults 1 2

다음과 같은 줄을 넣어준다:

/home/image/mndrk71.iso /mnt/iso/mndrk71 iso9660 ro,loop,auto 0 0

2.4. 삼바를 이용한 윈도우 네트워크 상의 공유

이것을 위해 당신은 삼바를 설치할 필요가 있다. 삼바 패키지는 대부분의 배포본에 포함되어 있므며, 만약 직접 컴파일해 설치하기를 원한다면 http://www.samba.org 를 방문하라.

마운트 된 CD 이미지들을 윈도우 네크워크에서 공유하기 위해 다음을 삼바 설정 파일인 /etc/smb.conf 파일에 첨가해준다.

[cdimages]
  comment = All Shared CD Images
  path = /mnt/iso
  public = yes
  writable = no

이것은 /mnt/iso 디렉토리하의 모든 서브 디렉토리들을 공유하게 될것이다. 이것을 윈도우상에서 로컬 드라이브(여기서는 I:)로 마운트 하기 위해서는, MS-DOS 프롬프트에서 다음과 같이 한다:

C:\> net use I: \\리눅스cd서버\cd이미지

이제 각각의 CD 이미지들은 윈도우상의 I: 드라이브의 서브 디렉토리로 보여질 것이다.

만드레이크 cd 이미지만을 공유하기 위해서 다음과 같이 /etc/smb.conf 를 수정한다.

[mndrk71]
  comment = Mandrake Linux 7.1
  path = /mnt/iso/mndrk71
  public = yes
  writable = no

도스 프롬프트 상에서, 다음과 같이 마운트 한다:

C:\> net use m: \\yourlinuxmachine\mndrk71

노트:

사실 smb.conf 파일은 이외에도 매우 많은 옵션을 가지고 있다. 예를 들어 암호 인증, 공유 유무등 더 안전한 설정을 할수 있다.

2.5. NFS 를 이용한 유닉스 네크워크 상의 공유

리눅스 서버에서 NFS 가 제대로 설정되어 운영되고 있다면, 다음 줄을 /etc/exports 에 추가한다:

# sample /etc/exports file
       /mnt/iso            (ro,insecure,all_squash)

이제 "showmount -e 리눅스cd서버" 명령은 /mnt/iso 를 포함하는 결과를 보여주어야 한다.