최근에 윈도우에서 아이폰 개발환경을 위해 해킨토시를 설치했다.

아직 초보라 그런지 '해킨의 끝은 리얼맥'이란 말을 실감하지 못하고 있다. ㅋ

초반의 많은 삽질을 모두 기록하지 못한게 조금 아쉽지만 대충 기억나는데로 써보기로 했다.

우선 해킨을 시작하려면 반드시 어설프게 대충이라도 설치된 맥시스템이 필요하다.
(처음 해킨을 접해보려는 초보에게는 좀 황당한 부분일지 모르지만 지금 생각해보면 필수다!)
내 경우엔 아무것도 모른상태에서 하자드판 배포본을 구해 DVD를 구워서 처음 설치를 했으니 그래도 초반 시작은 잘 한듯하다.
첫번째 삽질이 기억났다. 하자드 배포본은 원본 그데로 DVD를 구우면 안 된다.
배포본 이후에 필수 패치가 있으니 패치를 적용해서 구워야한다. 아까운 DVD 한장 날린 삽질기다.

우선 윈도우에서 내 하드웨어 정보를 메모하고..
배포본 설치시에 '사용자화' 에서 필요한부분을 잘 골라 올바르게 선택후 설치하면 됬다.
(사실 이부분이 각자의 하드웨어 종류에 따라 상당한 삽질을 요구한다.)
나같은 경우 메인보드는 다행이 호환성이 좋은 기가바이트 P35-DS3R 여서 다른문제는 없었는데,
사운드 잡는것과 ATI 4870 그래픽 카드 잡느라 고생했다.

많은 삽질 이후 배포본으로 완벽 설치한 이후 맥용 필수 유틸 설치 및 타임머신 백업에
아이폰 개발 환경까지 맞춰서 이제 됬다 싶었지만... 왠지 좀 불안정한 모습의 배포본이 맘에 걸려서 
결국 EFI 파티션 + 리테일 설치본을 이용한 깔끔한 설치를 향한 유혹을 못이기고 다시 삽을 들게 되었다.

리테일 설치에 도전했다.

원본 리테일 이미지를 USB 나 설치하드 여유공간에 디스크 유틸리티를 이용해서 복원해둔다.

맥이 설치된 상태에서 새 하드를 물리고 파티셔닝을 해준다.
파티션 설정시 '사용자화'에서 꼭 GUID 로 변경해 줘야한다. 이렇게 해줘야만 숨김 속성의 200Mbyte 짜리 EFI 볼륨이 만들어진다.
이후  Chamelon 2.0 RC2-r431 버전(꼭 이버전으로 해야만 된다.)으로 EFI 파티션을 포멧하면서 그쪽에 부트로더가 설치되도록 깔아준다. 설치시 대상 볼륨을 맥이 설치될 하드로 설정한 상태에서 '사용자화' 옵션에서만  EFI 에 설치되도록 조정하면 알아서 숨겨진 EFI 볼륨에 설치해준다.
이후에 터미널 명령어로 EFI 볼륨을 마운트(sudo -s; mkdir /Volumes/EFI; /Volumes/mount_hfs /dev/disk0s1 /Volumes/EFI) 한 이후 수정권한을 열어준후 최신버전 PC_EFI(boot 파일 한개)와 Chamelon 최신버전을 깔아준다. 배포본 설치후에 삽질의 결과로 가지고 있던 dsdt.aml 파일과 필수 kext 파일들도 몇개 넣어준다. /Extra/Extensions.mkext 파일(kext 캐시파일)은 권한 문제로 생성이 안 되는데.. 그냥 지워버리면 문제 없었다.
모두 완료되면 꼭 마운트를 해제(umount -f /Volumes/EFI; rm -Rf /Volumes/EFI)해준다. 안 해 주면 문제가 발생되는거같다.

설치하드로 부팅하고 부트로더 화면에서 마련해두 리테일 이미지로 설정하고 설치 작업을 마무리한다.
배포본과 달리 '사용자화'는 따로 고를게 없었다.

설치가 마무리되면 10.6.3으로 업데이트해주면 된다.
리테일 버전이고 EFI 볼륨에 해킨용 파일들이 설치되어 있기때문에 업데이트시에 전혀 문제가 없다.

추후에 개선된 kext 파일등.. 필요한 부분들은 EFI 파티션에만 적용하면서 사용하면 된다.

난 현재 64비트 환경까지 맞춰서 완벽하게 삽질이 마무리된거같다.

훗날 시간이 되면 좀 더 자세한 내용으로 보강해야겠다^^
Posted by 푸구머
:
AJ와 윌리엄스의 경우처럼 기억과잉이 불행한 결과를 초래할 수도 있으니 건망증은 분명히 행복하다. 하지만 필요한 것은 기억해야 한다. 다음은 기억력 회복에 도움이 되는 방법 4가지.

1. 주의를 기울여라

영국 세인트 앤드루스 대학 마이클 앤더슨 교수는 “기억력의 바위처럼 단단한 특성은 주의력에 의해 증가된다”고 말한다. 그러므로 들어올 때 열쇠를 어디에 두었는지에 대해 생각하는 의식적인 노력을 기울여라. ‘열쇠를 탁자 위에 두고 있다’고 큰 소리로 말하는 방법도 좋다.

2. 정리정돈을 잘 하라

기억은 우편물과 같다. 편지 봉투를 열어 내용물을 책상 위에 던져 놓는 것은 그리 많은 노력을 요하지 않는다. 하지만 다시 찾으려면 쉽지가 않다. 서로 연관된 편지를 함께 정리해 놓는다면 매우 쉽다. 그러므로 어떤 것을 기억할 필요가 있다면, 기존의 탄탄한 기억과 연결하도록 노력하라. 프랑스어 ‘fumer’가 ‘담배를 피우다(smoke)’라는 뜻이라는 것을 기억하고 싶다면 영어 단어 ‘fumes’(연기)와 비슷하다는 사실을 기억하라. 기억술도 여러가지 개념을 함께 묶어서 쉽게 다시 꺼내어 쓸 수 있게 해준다.

3. 감정이입에 충실하라

정서적 환기는 기억을 도와준다. 기억 자체가 감정과는 전혀 상관 없어도 그렇다. 캐나다 토론토대 애덤 앤더슨은 밋밋한 집과 사람 얼굴을 보여준 다음 감정이 듬뿍 들어있는 그림을 보여줬다. 감정을 일으키는 그림을 이어서 보여준 결과 중립적인 그림에 대한 기억력이 향상되었다.

4. 회상하라

기억을 다시 떠올리는 것은 향후 기억력에도 도움을 주며 새로운 기억의 등장으로 예전 기억이 사라지는 것도 막아준다. 따라서 처음 만난 사람의 이름을 30초 이내에 다시 떠올려보라. 연습 사이의 간격을 점점 늘려가면서 한 두 번만 더 연습하라. 마이클 앤더슨은 “사람 이름을 잘 기억하지 못하는 사람은 대부분 게으른 사람”이라고 말한다.
Posted by 푸구머
:
사용자 삽입 이미지

^^
Posted by 푸구머
:

[SubVersion]

cd /usr/ports/subversion
make install -DWITH_MOD_DAV_SVN WITHOUT_BDB=yes


WITHOUT_BDB=yes 이 옵션이 없으니 다음 내용으로 에러가 튀어 나온다.
아파치를 재컴파일 해줘야해결되는데 BERKELEYDB를 쓸게 아니라서 그냥 패스..
BERKELEYDB 를 사용하면 DB가 깨진다던지 하는 오류가 많이 발생 된다는 얘기가 있더군.. -_-;;

..................
You should build `www/apache22' with db4 support to use subversion with it.
Please rebuild `www/apache22' with option `WITH_BERKELEYDB=(db4|db41|db42)' and try again.

Or you can disable db4 support. Only 'fs' repository backend will be available.
To disable db4 support, define WITHOUT_BDB.

*** Error code 1
..................

추가로 아래와같이 진행해서 성공했다.

mkdir /home/svn
cd /home/svn
svnadmin create --fs-type fsfs {projectName}

chown -R owner:www {projectName}
chmod -R g+w {projectName}

vi /usr/local/etc/apache22/httpd.conf(edit)
LoadModule dav_module         libexec/apache22/mod_dav.so
LoadModule dav_svn_module     libexec/apache22/mod_dav_svn.so
LoadModule authz_svn_module   libexec/apache22/mod_authz_svn.so

파일끝에

<Location /svn/happycampus>
  DAV svn
  SVNPath /home/svn/ProjectName
  AuthType Basic
  AuthName "ProjectName's Repository"
  AuthUserFile /usr/local/etc/apache22/svn_passwd
  <LimitExcept GET PROPFIND OPTIONS REPORT>
  Require valid-user
  </LimitExcept>
</Location>

htpasswd /usr/local/etc/apache22/svn_passwd {UserID}
처음 만들때만 '-c' 옵션을 준다.(파일 생성)

cd /home/myhome
svn checkout http://localhost/svn/ProjectName

vi /etc/profile(edit)
SVN_EDITOR=/usr/local/vi
export SVN_EDITOR

vi /root/.cshrc(edit)
setenv SVN_EDITOR /usr/local/vi

svn mkdir http://localhost/svn/ProjectName/trunk
svn mkdir http://localhost/svn/ProjectName/branches
svn mkdir http://localhost/svn/ProjectName/tags

mv /usr/local/bin/svn /usr/local/bin/svn-real
vi /usr/local/bin/svn(edit)
#!/bin/sh

umask 002
/usr/local/bin/svn-real "$@"

vi post-commit(edit)
#!/bin/sh

# ko_KR.eucKR / ko_KR.UTF-8
export LANG='ko_KR.UTF-8'
export LC_CTYPE='ko_KR.UTF-8'
export LC_ALL='ko_KR.UTF-8'

/usr/local/bin/svn update /data/www/devel

<LimitExcept GET PROPFIND OPTIONS REPORT>
</LimitExcept>
이 옵션은 hooks/post-commit 스크립트 실행에서
svn update 실행하려면 사용자 권한 정보(로그인 요구) 때문에 되어서 오류가 발생 되므로
정보 없이 update가  실행되도록 옵션을 주자...( 시간 많이 잡아 먹었다.. -_-;; )


인터넷으로 찾아본 곳 :
http://www.xinublog.com/198
http://www.pyrasis.com/main/Subversion-HOWTO
http://groups.google.com/group/sysadminstudy/browse_thread/thread/4145ebce02baeeee

Posted by 푸구머
:
어제 저녁 부터 시작된 설치작업이 이제 마무리 되어 가는듯하다.
나중을 위해서 이곳에 기록을 해두어야겠다.^_^;

현재 UTF-8 로 개발할 수 있는 환경을 만드게 목적이다.

[ports upgrade]
ftp ftp.freebsd.org
anonymouse / xxx@gmail.com
bin
cd /pub/FreeBSD/ports/...
get ports.tar.gz
----------------------------------------------------------------------------------------
cvsup -g -L 2 -h cvsup.freebsdcity.org /usr/share/examples/cvsup/ports-supfile
man cvsup
내가 작업한건 그냥 이렇게 해버렸다..
그런데 나중에 찾아보니..

포트시스템 또는 패키지를 이용하기위해 cvsup을 설치합니다.
cvsup은 포트시스템과 패키지에서 이용되는 라이브러리를 최신으로 업데이트를 해 줍니다.
cvsup 패키지추가
# pkg_add -r cvsup 또는
# pkg_add -r cvsup-without-gui
cvsup 설정파일 복사
/root나 홈디렉토리에 복사합니다.
여기서는 /root 디렉토리에 복사합니다.
# cp /usr/share/examples/cvsup/ports-supfile /root
ports_supfile 수정
default host 부분의 CHANGE_THIS.FreeBSD.org 부분의 서버명을cvsup.kr.FreeBSD.org로 변경합니다.
# vi /root/ports-supfile
vi Editor 사용법은 생략합니다.
cvsup 실행
cvsup을 실행하여 라이브러리를 업데이트합니다.
# /usr/local/bin/cvsup -g -L 2 /root/ports-supfile


출처 : http://www.lifefeel.com/110
요게 정석인듯하다.... 나중에 다시 해봐야지.... 바쁘니 그냥 패스~ -_-;

[MySQL 5.0.37]

adduser mysql and group mysql.......

cd  /usr/ports/databases/mysql50-server

vi Makefile (edit)
>>>> --localstatedir=/var/db/mysql   ------>   --localstatedir=/data/mysqldb

make reinstall clean PREFIX=/usr/local/mysql WITH_CHARSET=utf8 WITH_COLLATION=utf8_general_ci ARCH=i386 BUILD_STATIC=yes
make deinstall
make reinstall PREFIX=/usr/local/mysql WITH_CHARSET=utf8 WITH_COLLATION=utf8_general_ci ARCH=i386 BUILD_STATIC=yes WITH_XCHARSET=all (다시 설치했다.) FORCE_PKG_REGISTER=1(또 추가 옵션, 기존설치파일 덮어쓰기..-_-;)

[ configure log msg ]
configure: running /bin/sh './configure' --prefix=/usr/local/mysql  '--localstatedir=/data/db' '--without-debug'
'--without-readline' '--without-libedit' '--without-bench' '--without-extra-tools' '--with-libwrap' '--with-mysqlfs'
'--with-low-memory' '--with-comment=FreeBSD port: mysql-server-5.0.37' '--enable-thread-safe-client'
'--with-charset=utf8' '--with-mysqld-ldflags=-all-static' '--with-collation=utf8_general_ci' '--enable-assembler'
'--with-berkeley-db' '--with-named-thread-libs=-pthread' '--prefix=/usr/local/mysql' '--build=i386-portbld-freebsd6.2'
'CC=cc' 'CFLAGS=-O2 -fno-strict-aliasing -pipe '
'CXXFLAGS=-O2 -fno-strict-aliasing -pipe -O2 -fno-strict-aliasing -pipe -felide-constructors -fno-rtti -fno-exceptions'
'CXX=c++' 'build_alias=i386-portbld-freebsd6.2'
CFLAGS=' -DDBUG_OFF -O2 -fno-strict-aliasing -pipe '
CXXFLAGS=' -DDBUG_OFF -O2 -fno-strict-aliasing -pipe -O2 -fno-strict-aliasing -pipe -felide-constructors -fno-rtti -fno-exceptions -fno-implicit-templates -fno-exceptions -fno-rtti -DMYSQLD_NET_RETRY_COUNT=1000000'
--cache-file=/dev/null --srcdir=.

chown -R mysql:mysql /data/mysqldb

/usr/local/mysql/bin/mysql_install_db --user=mysql

cp /usr/local/mysql/etc/rc.d/mysql-server /usr/local/etc/rc.d/mysqld.sh

vi /usr/local/etc/rc.d/mysqld.sh (edit)
mysql_enable="NO" ------>  mysql_enable="YES"

cp /usr/ports/databases/mysql50-server/work/mysql-5.0.37/support-files/my-medium.cnf /etc/my.cnf
vi /etc/my.cnf (edit)
[Client]
default-character-set = euckr (실제 적용 못했다.)

/usr/local/etc/rc.d/mysqld.sh start

/usr/local/bin/mysqladmin -u root password 1111

mysql -u root -p mysql

update db set db='test_db' where db='test';
insert into user values('localhost','mysql_user',password('1111'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','N','','','','',0,0,0,0);
insert into user values('192.168.10.133','mysql_user',password('1111'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','N','','','','',0,0,0,0);

이거 넣다가 몇번 틀렸다.컬럼수가 안 맞는다나? -_-;;

flush privileges;


make install 할때 WITH_XCHARSET=all 을 빼먹었더니만 my.cnf 옵션으로 default-character-set = euckr 을 줄수가 없다. 재컴파일하기 힘들어서 그냥 두었다.
서버는 utf-8 상태이고 클라이언트의 문자셋 설정이 latin1 인데 우선 한글 입력하는데는 지장이 없는걸 확인했다.

[ProFTP]

cd /usr/ports/ftp/proftp
make install clean

adduser ftp & addgroup ftp

vi /usr/local/etc/proftpd.conf (edit)

# disable reverse lookup
UseReverseDNS off
IdentLookups  off

User                            ftp
Group                           ftp

vi /etc/rc.conf (edit)
proftpd_enable="YES"

 /usr/local/etc/rc.d/proftpd start

[Apache 2.2]

make install clean
PREFIX_RELDEST=/usr/local/apache22 옵션을 잘못 준 듯하다.
그냥 /usr/local 로 잡혀서 설치되버렸다. -_-;

vi /usr/local/etc/apache22/httpd.conf (edit)
ServerName, DocumentRoot...

vi /etc/rc.conf (edit)
apache22_enable="YES"

/usr/local/etc/rc.d/apache22 start

서비스를 시작하니 데몬이 시작되긴 했는데,아래의  에러가 튀어 나왔다.
[warn] (2)No such file or directory: Failed to enable the ‘httpready’ Accept Filter
해결방법을 찾아보니..

FreeBSD Apache HTTP Accept Filter Error
When Apache web server is starting up in FreeBSD system,
Apache loads succcessfully and web server functioning properly,
but the following warning error occurs:

[warn] (2)No such file or directory: Failed to enable the ‘httpready’ Accept Filter

The resolution to the above problem is to a accf_http module,
which function is to buffer incoming connections until a certain complete HTTP requests arrive,
into FreeBSD kernel by using kernel linker:

kldload accf_http

To permanently load enable HTTP Accept Filter FreeBSD kernel module (accf_http),
add the following line into /boot/loader.conf:

accf_http_load=”YES”

Note: The default settings is located in /boot/defaults/loader.cnf. To see the related settings about accf, use:

grep accf /boot/defaults/loader.conf

which will returns:

accf_data_load=”NO” # Wait for data accept filter
accf_http_load=”NO” # Wait for full HTTP request accept filter

출처 : http://www.mydigitallife.info/2006/04/23/freebsd-apache-http-accept-filter-error/
loader.conf 세팅 수정하고 reboot 한방 먹였더니 이상 없이 실행된다..^^

[PHP 5]

cd /usr/ports/lang/php5/
make config(Check -> Apache module)
make install clean

cd /usr/ports/lang/php5-extentions/
make config(필요한 기능 선택)
make install clean

cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini
vi /usr/local/etc/php.ini(edit)

vi /usr/local/etc/apache22/httpd.conf(edit)

<IfModule php5_module>
AddType application/x-httpd-php .php .html .html
AddType application/x-httpd-php-source .phps
</IfModule>

/usr/local/etc/rc.d/apache22 stop
/usr/local/etc/rc.d/apache22 start

설치 옵션을 너무 많이 줬다보다.. 아직도 다운받아가며 컴파일 중이다. 암튼 이거 설치 끝내면 세팅이 완료된다. 이제 테스트만 열씸히 하면 되겠지? ......... ^________^;

Posted by 푸구머
:

카테고리

분류 전체보기 (5)

최근에 올라온 글

최근에 달린 댓글

달력

«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

글 보관함