Category Archives: 개발참고자료

맥에서 부팅가능한 USB 굽기 (ISO to USB)

리눅스를 설치하려고 보니 시디굽기는 왠지 아깝고 Bootable USB를 만들어 설치하면 좋을것 같다는 생각이 들었습니다. 다음은 ISO파일을 이용한 부팅가능한 USB 만드는 방법입니다.

작업에 사용한 ISO파일은 CentOS 6.5 Minimal 버전입니다. 적절한 위치에 다운로드 한 뒤 다음의 명령을 사용하여 IMG파일로 변환합니다.

$ hdiutil convert -format UDRW -o CentOS-6.5-x86_64-minimal.img CentOS-6.5-x86_64-minimal.iso
CentOS_6.5_Final                (Apple_ISO : 0) 읽는 중...
..................................................................................................
(Apple_Free : 1) 읽는 중...
경과 시간:  3.186s
속도: 124.9M바이트/초
저장: 0.0%
created: CentOS-6.5-x86_64-minimal.img.dmg

이번엔 USB를 맥에 연결하고 어떤 파티션에 마운트 되어있는지 다음과 같은 방법으로 확인합니다.

$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *15.8 GB    disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                  Apple_HFS OS X 10.9 Install Di... 15.5 GB    disk1s2
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            CentOS_6.5_Final       *417.3 MB   disk2

16기가짜리 USB를 꼽았는데요. 잘 보면 /dev/disk1에 마운트 된것이라는것을 확인할 수 있습니다.

USB로 굽기에 앞서 USB에 이미 무언가 설치가 되어있는 상태라면 굽기가 되지 않는 경우가 있습니다. 다음과 같이 파티션탭에서 1개의 파티션을 선택하고 여유공간으로 바꿔줍시다. 이제 빈 USB가 됩니다.

making_bootable_usb

이제 이미지를 USB로 구울것인데요. 기존에 확인했던 USB 마운트 포인트가 /dev/disk1이었던것을 기억하고 다음과 같은 명령을 사용하여 굽기를 합니다.

$ sudo dd if=./CentOS-6.5-x86_64-minimal.img.dmg of=/dev/rdisk1 bs=1m
load: 1.71  cmd: dd 15962 uninterruptible 0.00u 0.14s
398+0 records in
398+0 records out
417333248 bytes transferred in 18.689190 secs (22330194 bytes/sec)

if에는 IMG로 변환했던 이미지를 넣어주고 of에는 disk가 아닌 rdisk로 입력해 줍니다. 즉 아까 확인했던 파티션의 위치가 /dev/disk1 이었다면 /dev/rdisk1으로 해주시면 됩니다. 오래 걸릴 경우 중간에 CTRL + T를 눌러 현재 진행 상황을 확인할 수 있습니다.

Mac 환경에서 MariaDB 설치하기

현재 맥북에서 개발을 진행하고 있습니다. MySQL을 설치해서 개발중에 있다가 MariaDB와 MySQL의 생각이상의 호환성을 보며 맥에 설치되어있는 MySQL을 삭제하고 MariaDB를 설치하기로 하였습니다. 글은 MySQL 삭제와 MariaDB 설치 2단계로 작성할 생각이고 Homebrew가 설치된 환경에서 진행하였습니다.

MySQL 삭제

다음의 명령을 사용하여 설치되어있는 MySQL을 삭제할 수 있습니다. MySQL이 설치되어있지 않다면 이 과정은 생략하시기 바랍니다.

$ brew unlink mysql
Unlinking /usr/local/Cellar/mysql/5.6.15... 106 links removed

$ brew remove mysql
$ brew cleanup

MariaDB 설치

다음의 명령을 사용하여 정말 쉽게 설치를 할 수 있습니다.

$ brew update
$ brew install mariadb
==> Downloading http://ftp.osuosl.org/pub/mariadb/mariadb-5.5.34/kvm-tarbake-jaunty-x86/mariadb-5.5.
Already downloaded: /Library/Caches/Homebrew/mariadb-5.5.34.tar.gz
==> cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/Cellar/mariadb/5.5.34 -DCMAKE_FIND_FRAMEWORK=LAST -DCM
==> make
==> make install
==> Caveats
A "/etc/my.cnf" from another install may interfere with a Homebrew-built
server starting up correctly.

To connect:
    mysql -uroot

To have launchd start mariadb at login:
    ln -sfv /usr/local/opt/mariadb/*.plist ~/Library/LaunchAgents
Then to load mariadb now:
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mariadb.plist
Or, if you don't want/need launchctl, you can just run:
    mysql.server start
==> /usr/local/Cellar/mariadb/5.5.34/bin/mysql_install_db --verbose --user=dennis --basedir=/usr/loc
==> Summary
  /usr/local/Cellar/mariadb/5.5.34: 483 files, 111M, built in 2.0 minutes

설치 과정에서 나오는 설명을 잘 보면 친절하게 설명이 되어있습니다만 맥이 부팅될때 자동으로 MariaDB를 구동하려면 다음과 같이 등록해 주면 됩니다.

$ ln -sfv /usr/local/opt/mariadb/*.plist ~/Library/LaunchAgents
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mariadb.plist

하지만 저는 매번 실행할 필요 없이 필요할때만 구동하면 되겠기에 위의 과정을 생략하고 필요할때마다 다음의 명령을 실행하여 MariaDB를 구동하고 있습니다.

$ mysql.server start
Starting MySQL
.. SUCCESS!