2011-10-27

JRuby, 1.9.x 를 디폴트로 사용하기

JRuby를 처음 설치해서 버전을 확인해보면, 1.8.x 인것을 확인할 수 있다. 이것을 1.9.x 로 변경하려면, 환경변수 JRUBY_OPTS 를 수정해야 한다.

$ jruby -v
jruby 1.6.5 (ruby 1.8.7 patchlevel 330) (2011-01-10 769f847) (Java HotSp...
$ export JRUBY_OPTS=--1.9
$ jruby -v
jruby 1.6.5 (ruby 1.9.2 trunk 136) (2011-01-10 769f847) (Java HotSpot(TM...
$ export JRUBY_OPTS=--1.8
$ jruby -v
jruby 1.6.5 (ruby 1.8.7 patchlevel 330) (2011-01-10 769f847) (Java HotSpo...

Ruby : 파일(디렉토리)이름에 특정 문자열이 포함된 목록 출력하기

Ruby에서 파일(디렉토리)이름에 특정 문자열이 포함된 목록 출력하기위해서 아래와 같이 하면 된다. Unix(Linux)/Cygwin 에서는 기본적인 도구만으로도 쉽게 할 수 있지만, 그런 환경에 안되는 곳에서는 유용하다. 아주 사소한 팁이지만, 이런 것이 여러가지가 모이면, 나중에 큰 도움이 될 것이다. ^^

# -*- coding: cp949 -*-
require 'find'
 
$dirlist    = ["C:\\"]
$sub_string = "애니메이션"
 
$dirlist.each() do |dirname|
  puts dirname if dirname.include?($sub_string)
 
  Find.find(dirname) do |file|
    next if file == nil
    next if not File.file?(file)
    next if not file.include?($sub_string)
 
    puts file
  end
end

2011-10-12

USB 스틱으로 Debian 설치하기


우선, 어떤 디바이스가 USB 스틱인지를 찾아야 한다. 잘 못하면 다른 HDD 의 내용까지 날릴 수 있기 때문이다. USB 스틱을 PC/서버에 연결한 후에 dmesg 명령으로 어느 디바이스가 USB 스틱인지를 확인한다.
[ 69.902747] scsi 4:0:0:0: Direct-Access VBTM Store 'n' Go 5.00 PQ: 0 ANSI: 0 CCS
[ 69.903314] sd 4:0:0:0: Attached scsi generic sg3 type 0
[ 70.867573] sd 4:0:0:0: [sdy] 2013184 512-byte logical blocks: (1.03 GB/983 MiB)
[ 70.868085] sd 4:0:0:0: [sdy] Write Protect is off
위의 예에서는 sdy (/dev/sdy)가 USB 스틱이다. 다시 한번, 해당 디바이스가 USB 스틱인지 확인하기 바란다!
Debian 미러 사이트에서 boot.img.gz 과 netinstall iso 이미지를 다운로드 받는다.
# wget ftp://ftp.kr.debian.org/debian/dists/squeeze/main/installer-i386/current/images/hd-media/boot.img.gz
# wget ftp://ftp.kr.debian.org/debian-cd/6.0.3/i386/iso-cd/debian-6.0.3-i386-netinst.iso
boot.img.gz을 USB 스틱에 기록한다.
# zcat boot.img.gz > /dev/sdy
USB 스틱을 마운트하고 netinst.iso 이미지를 USB 스틱의 root 디렉토리에 복사한다.
# mkdir /mnt/usbstick
# mount /dev/sdy /mnt/usbstick
# cp debian-*-netinst.iso /mnt/usbstick
# umount /mnt/usbstick
이제 USB 스틱은 부팅이 되며, Debian netinstaller 를 시작할 수 있을 것이다.