<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7252701061876041580</id><updated>2012-02-16T20:01:01.453-08:00</updated><title type='text'>634l2H34l)</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-1005450005559601578</id><published>2007-04-09T08:05:00.000-07:00</published><updated>2007-04-09T08:06:16.678-07:00</updated><title type='text'>톰켓의 데이터소스방식을 이용한 DB커넥션</title><content type='html'>&lt;p&gt;1. server.xml의 수정&lt;br /&gt;&lt;context path="" docbase="홈페이지가 있는 디렉토리명" debug="0" reloadable="true"&gt;&lt;br /&gt;  &lt;resource name="jdbc/count" auth="Container" type="javax.sql.DataSource"&gt;&lt;br /&gt;  &lt;resourceparams name="jdbc/count"&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;name&gt;username&lt;/name&gt;&lt;value&gt;아이디를 넣어주세요&lt;/value&gt;&lt;/parameter&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;name&gt;password&lt;/name&gt;&lt;value&gt;패스워드를 넣어주세요&lt;/value&gt;&lt;/parameter&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;driverClassName&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;해당되는 jdbc driver를 기재해 주세요&lt;/value&gt;&lt;/parameter&gt;&lt;br /&gt;예&lt;br /&gt;mysql : org.gjt.mm.mysql.Driver&lt;br /&gt;mssql : com.microsoft.jdbc.sqlserver.SQLServerDriver&lt;br /&gt;oracle : oracle.jdbc.driver.OracleDriver&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;url&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;url을 넣어 주세요&lt;/value&gt;&lt;/parameter&gt;&lt;br /&gt;예&lt;br /&gt;mysql : jdbc:mysql://localhost/데이터베이스&lt;br /&gt;mssql : jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=데이터베이스&lt;br /&gt;oracle : jdbc:oracle:thin:@localhost:sid&lt;br /&gt;&lt;!--&lt;br /&gt;If removeAbandoned = true&lt;br /&gt;대충 번역하면 버림받은 커넥션을 회복한다는 뜻..  디폴트는 false 이다.&lt;br /&gt;--&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;removeAbandoned&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;true&lt;/value&gt;&lt;br /&gt;    &lt;/parameter&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;버림받은 커넥션을 판단하는 기준이 되는 시간  removeAbandonedTimeout = 300. removeAbandonedTimeout = 300 is the default time.&lt;br /&gt;--&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;removeAbandonedTimeout&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;60&lt;/value&gt;&lt;br /&gt;    &lt;/parameter&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;If logAbandoned = true&lt;br /&gt;커넥션이 버림받을때 로그를 남기겠냐는 뭐 대충 그런뜻인거 같음 못 미더우신 분은 원문을 보시길.. ㅋㅋ.&lt;br /&gt;--&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;logAbandoned&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;true&lt;/value&gt;&lt;br /&gt;    &lt;/parameter&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;커넥션 풀의 최대수용 수를 설정한다.&lt;br /&gt;maxActive = 100. Set maxActive = 0 (0은 제약 없음 즉 시스템이 따라줄때 까지..)&lt;br /&gt;--&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;maxActive&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;25&lt;/value&gt;&lt;br /&gt;    &lt;/parameter&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;말그대로 놀고 있는 커넥션 개수를 몇개까지 허용할것인지..&lt;br /&gt;maxIdle = 30. Set maxIdle = 0 (0은 제약없음)&lt;br /&gt;--&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;maxIdle&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;10&lt;/value&gt;&lt;br /&gt;    &lt;/parameter&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;커넥션이 사용할수 있기 까지 기다리는 시간의 최대치(milliseconds 를 사용함)&lt;br /&gt;maxWait = 10000. Set maxWait = -1 (-1은 무한대로 기다려준다. 단 타임아웃 예외 발생시 예외처리함)&lt;br /&gt;--&gt;&lt;br /&gt;    &lt;parameter&gt;&lt;br /&gt;      &lt;name&gt;maxWait&lt;/name&gt;&lt;br /&gt;      &lt;value&gt;-1&lt;/value&gt;&lt;br /&gt;    &lt;/parameter&gt;&lt;br /&gt;  &lt;/resourceparams&gt;&lt;br /&gt;&lt;/context&gt;&lt;/p&gt; &lt;p&gt;&lt;br /&gt;2. web.xml 추가&lt;br /&gt;&lt;web-app&gt;   &lt;br /&gt;    &lt;resource-ref&gt;&lt;br /&gt;      &lt;res-ref-name&gt;jdbc/count&lt;/res-ref-name&gt;&lt;br /&gt;      &lt;res-type&gt;javax.sql.DataSource&lt;/res-type&gt;&lt;br /&gt;      &lt;res-auth&gt;Container&lt;/res-auth&gt;&lt;br /&gt;    &lt;/resource-ref&gt;&lt;br /&gt;&lt;/web-app&gt;    &lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;꼭 성공하세요.. ^0^&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-1005450005559601578?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/1005450005559601578/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=1005450005559601578' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/1005450005559601578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/1005450005559601578'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/04/db_09.html' title='톰켓의 데이터소스방식을 이용한 DB커넥션'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-2104969847768975736</id><published>2007-02-21T09:10:00.000-08:00</published><updated>2007-02-21T09:11:10.914-08:00</updated><title type='text'>모드설치</title><content type='html'>Emacs가 없다면 받고 설치한다. Haskell Mode를 받고 압축을 푼다.&lt;br /&gt;&lt;br /&gt;c:\Documents And Settings\유저이름\Application Data에 .emacs 파일이 위치해 있다. (물론 C:가 아닐 수 있고 Documents And Settings가 아닐 수도 있다. 그런 세팅을 바꿀만한 사람은 충분히 알아서 문제를 해결할 수 있다고 믿기 때문에 더 이상 언급하지 않겠다.)&lt;br /&gt;&lt;br /&gt;해당 디렉토리에 lib\emacs 디렉토리를 만들어 내용을 복사한다. 위의 경우 c:\Documents And Settings\유저이름\Application Datalib\emacs 디렉토리가 된다.&lt;br /&gt;&lt;br /&gt;emacs에서 C-x,C-f로 /~/.emacs를 입력하여 설정 파일을 편집한다. ~ 디렉토리는&lt;br /&gt;c:\Documents And Settings\유저이름\Application Data를 의미할 것이고 이것은&lt;br /&gt;c:\Documents And Settings\유저이름\Application Data/.emacs를 편집한다는 의미와 동일하다.&lt;br /&gt;&lt;br /&gt;(load "~/lib/emacs/haskell-site-file")&lt;br /&gt;(add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)&lt;br /&gt;(add-hook 'haskell-mode-hook 'turn-on-haskell-indent)&lt;br /&gt;(add-hook 'haskell-mode-hook 'turn-on-haskell-simple-indent)&lt;br /&gt;(add-hook 'haskell-mode-hook 'font-lock-mode)&lt;br /&gt;(add-hook 'haskell-mode-hook 'imenu-add-menubar-index)위의 항목을 추가하였으면 Emacs를 재부팅하고 사용하면 된다.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-2104969847768975736?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/2104969847768975736/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=2104969847768975736' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/2104969847768975736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/2104969847768975736'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/02/blog-post.html' title='모드설치'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-5038388410157132068</id><published>2007-02-15T09:25:00.001-08:00</published><updated>2007-02-15T09:25:55.406-08:00</updated><title type='text'></title><content type='html'>1. 들어가면서...&lt;br /&gt;&lt;br /&gt;젠투는 ms의 윈도우즈 시리즈나 우분투 리눅스, 레드햇 리눅스와 달리 모든 소프트웨어를 직접 컴파일해서 인스톨 합니다. 시간도 좀 더 걸리고 생소한 명령어를 몇 가지 알아 둬야하는 불편함이 있지만 설정을 정확히 해준다면 해당 머신에 있어서는 상당히 최적화할 수 있습니다.&lt;br /&gt;&lt;br /&gt;대체로 젠투의 인스톨 방법은 다음과 같은 순서를 따릅니다.&lt;br /&gt;인스톨 명령 입력&lt;br /&gt;지정된 미러에서 소스 다운로드&lt;br /&gt;컴파일 &amp; 링크 (사용자가 미리 지정한 컴파일 규칙에 따라)&lt;br /&gt;&lt;br /&gt;젠투의 미러는 세계 각국에 퍼져 있으며 미러에서는 수많은 패키지의 소스가 철저히 관리되고 있습니다. 사용자가 만약 텍스트 에디터인 vim을 인스톨하고 싶다면 emerge vim 을 터미널에서 입력하는 것만으로 바로 인스톨이 됩니다. (우분투도 비슷한 방식입니다 sudo apt-get install vim. 젠투와 다른 점은 3~4가지 아키텍처에 제한된다는 것과 우분투는 바이너리를 까는 방식이라는 정도입니다.)&lt;br /&gt;&lt;br /&gt;2. 하드웨어의 선택&lt;br /&gt;&lt;br /&gt;인스톨에 대해 설명을 하기 전에 어떤 하드웨어를 사용하는 것이 좋을지에 대해서 적어 보겠습니다.&lt;br /&gt;cpu: intel, amd, via 등 x86 구조를 채택한 cpu의 경우 무난하게 인스톨 가능. 단, via의 경우 사무엘 내지는 그 이하 버전에서 문제가 있을 수 있음. 듀얼 코어의 경우 커널에서 smp 설정을 해줘야 함.&lt;br /&gt;mbd: 대개의 메인 보드도 인스톨에 지장은 없으나 내장 그래픽의 경우 ati는 피할 것&lt;br /&gt;vga: 역시 ati 그래픽 카드는 드라이버에 문제가 있을 수 있음. 인텔의 경우 와이드 설정을 위해 약간의 설정을 해줘야함.&lt;br /&gt;odd: ide 또는 sata에 물리는 제품을 추천하며 외장 usb odd의 경우 인스톨 씨디가 인식을 못할 수 있음.&lt;br /&gt;lan: 대개의 랜카드는 자동으로 인식하지만 인스톨 씨디가 인식을 못하는 경우가 있을 수 있음. 리얼텍 8139, intel e시리즈 강추.&lt;br /&gt;ado: 전통의 사운드 블라스터 내지는 리얼텍, intel HD 등 국내에 유통되는 중저가라면 크게 지장 없음.&lt;br /&gt;hdd: sata와 ide를 섞어서 쓰는 경우를 피하는게 좋으며 같이 쓰는 경우 부트 로더가 ide만 검색하는 버그가 있을 수 있음.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;이 글을 작성하는 시스템은 다음과 같은 머신에 인스톨 되었습니다. (lspci)&lt;br /&gt;Host bridge: Intel Corporation 82945G/GZ/P/PL Memory Controller Hub&lt;br /&gt;VGA compatible controller: Intel Corporation 82945G/GZ Integrated Graphics Controller&lt;br /&gt;Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller&lt;br /&gt;PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1&lt;br /&gt;USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1&lt;br /&gt;PCI bridge: Intel Corporation 82801 PCI Bridge&lt;br /&gt;ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge&lt;br /&gt;IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller&lt;br /&gt;IDE interface: Intel Corporation 82801GB/GR/GH (ICH7 Family) Serial ATA Storage Controller IDE&lt;br /&gt;SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller&lt;br /&gt;Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;파티션은 4개의 주 파티션으로 나뉘었으며 /dev/hda1은 /boot, /dev/hda2는 윈도우즈, /dev/hda3는 루트, /dev/hda4는 스왑으로 지정됐습니다. 랜카드가 인스톨 씨디(와 라이브 씨디 모두)에서 잡히지 않는 문제가 있었는데 우분투 라이브 씨디의 도움으로 해결하였습니다.&lt;br /&gt;&lt;br /&gt;3. 인스톨 이전의 과정&lt;br /&gt;&lt;br /&gt;바이오스에서 odd를 부트 디바이스 리스트의 제일 위로 올려 놓습니다. 어떤 운영체제이든 odd로 설치하는 것이라면 모두 동일할 것입니다.&lt;br /&gt;인스톨 씨디가 인식되면 boot: 라는 프롬프트가 뜹니다. 그냥 엔터를 누르면 부트 스플래쉬를 적용한 깔끔한 화면이 나오지만 저사양 머신의 경우에는 gentoo-nofb 를 입력해서 안정된 상태로 진입할 수 있습니다.&lt;br /&gt;인스톨 씨디의 이미지가 로드되고 머신의 사양에 따라 모듈을 램으로 로드하기 시작합니다.&lt;br /&gt;그 과정에서 '어떤 cpu인지 칩셋은 무엇인지' 검색을 해서 모니터에 출력해 주는데, 개인적인 경험으로는 상당히 정확하게 감지해 내는 것을 보았습니다.&lt;br /&gt;중간에 키보드가 어떤 타입인지 물어 옵니다. 디폴트는 미국식(41)입니다. 우리 나라의 키보드도 미국식을 따르고 있으므로 41을 입력하시거나 엔터를 눌러서 넘어가시면 됩니다.&lt;br /&gt;&lt;br /&gt;모든 과정이 지나가면 프롬프트가 다시 뜹니다. 만약 에러 메시지가 나오고 boot: 라는 프롬프트가 뜨면 씨디가 인식이 잘 안되는 것입니다. 외장형 씨디롬의 경우 이런 경우가 있을 수 있습니다.&lt;br /&gt;&lt;br /&gt;4. 인스톨의 시작&lt;br /&gt;(http://gentoo.org의 문서와 다를 수 있습니다.)&lt;br /&gt;&lt;br /&gt;less&lt;br /&gt;&lt;br /&gt;net-setup eth0&lt;br /&gt;// 현재 랜카드의 상태를 입력해 줍니다.&lt;br /&gt;// 랜카드가 2장 이상이라면 카드를 선택해 줘야합니다.&lt;br /&gt;// dhcp인지 사설망의 static ip로 통신을 할지 지정해 줍니다.&lt;br /&gt;&lt;br /&gt;ssh를 이용하는 방법&lt;br /&gt;ssh는 secure shell의 약자로, 기존의 rlogin을 대체합니다.&lt;br /&gt;ssh를 사용하면 편한 점은, 다른 시스템에서 접속한 후 여러 웹 문서 등을 찾아가면서 진행할 수 있다는 점 입니다. 특히, 모니터와 키보드가 부족하거나 할 때 유용합니다 :)&lt;br /&gt;&lt;br /&gt;현재 인스톨하고 있는 머신에서는 이렇게 입력합니다.&lt;br /&gt;&lt;br /&gt;passwd&lt;br /&gt;// 임시로 암호를 지정합니다.&lt;br /&gt;&lt;br /&gt;/etc/init.d/sshd start&lt;br /&gt;// ssh 데몬을 시작합니다.&lt;br /&gt;&lt;br /&gt;ifconfig&lt;br /&gt;// 할당된 ip를 확인해 둡니다.&lt;br /&gt;&lt;br /&gt;접근하고자 하는 머신에서는 이렇게 입력합니다.&lt;br /&gt;&lt;br /&gt;ssh root@xxx.xxx.xxx.xxx&lt;br /&gt;// 물론 ssh 클라이언트가 설치되어 있어야 합니다.&lt;br /&gt;&lt;br /&gt;yes&lt;br /&gt;// 이후, 암호 입력&lt;br /&gt;&lt;br /&gt;ssh를 이용하는 방법&lt;br /&gt;&lt;br /&gt;fdisk /dev/hda&lt;br /&gt;// 또는 인스톨하고 싶은 hdd를 지정합니다.&lt;br /&gt;// 어떤 영역을 위해 얼마나 할당해 줄지 설정해 줍니다.&lt;br /&gt;// 위에 적은 바와 같이 전 윈도우즈 파티션이 미리 지정되어 있었으며&lt;br /&gt;// fdisk를 실행 시키고 p 를 입력하면 윈도우즈 파티션의 영역을 확인할 수 있어서 멀티 부팅에 지장이 없었습니다.&lt;br /&gt;&lt;br /&gt;mkfs -t ext3 /dev/hda1&lt;br /&gt;mkfs -t ext3 /dev/hda3&lt;br /&gt;// 두개의 파티션을 ext3로 포맷해 주었습니다. 라이저fs나 xfs를 사용하시는 분도 계시겠지만 일반 사용자라면 ext3도 괜찮습니다.&lt;br /&gt;&lt;br /&gt;mkswap /dev/hda4&lt;br /&gt;// 가상 메모리를 위해서 스왑 파티션을 만들어 줍니다. 머신에 꽂힌 메모리의 2배가 적당합니다.&lt;br /&gt;swapon /dev/hda4&lt;br /&gt;// 스왑을 가동 시킵니다.&lt;br /&gt;&lt;br /&gt;mount -t ext3 /dev/hda3 /mnt/gentoo&lt;br /&gt;// 포맷된 하드를 시스템에 마운트해 줍니다.&lt;br /&gt;// 핫 플러깅을 하면 좋겠지만 세세한 설정을 요구하기 때문에 수동 입력을 해주어야 합니다.&lt;br /&gt;// 인스톨이 완료되면 핫 플러깅이 되도록 조정할 수 있습니다.&lt;br /&gt;// 실수로 다른 파티션을 마운트한 경우, umount /dev/hda3 를 입력하시면 됩니다.&lt;br /&gt;&lt;br /&gt;mkdir /mnt/gentoo/boot&lt;br /&gt;mount -t ext3 /dev/hda1 /mnt/gentoo/boot&lt;br /&gt;// 커널 이미지가 저장될 파티션이 연결될 /boot 디렉토리를 만들어 주고 마운트해 줍니다.&lt;br /&gt;&lt;br /&gt;cd /mnt/gentoo&lt;br /&gt;// 실제 시스템의 모든 소프트웨어가 인스톨될, 위에서 마운트한 디렉토리로 이동합니다.&lt;br /&gt;&lt;br /&gt;//==== stage 받기 ====//&lt;br /&gt;// 스테이지는 젠투 리눅스 시스템 운용에 필요한 기본적인 패키지의 묶음 입니다.&lt;br /&gt;// 1, 2, 3가 있는데 1은 모든 것을 컴파일하는 방식이고 3는 바이너리로 받는 방식입니다.&lt;br /&gt;// 1의 경우 컴파일 과정이 몇차로 나눠지고 제법 긴 시간이 포함되기 때문에 3로 진행하도록 하겠습니다.&lt;br /&gt;// 또한 스테이지를 받는 것은 두가지 방법이 있습니다. wget과 links2 가 그것인데,&lt;br /&gt;// wget의 경우 웹 상의 완전한 경로를 입력해야하기 때문에 links2 를 권합니다.&lt;br /&gt;// 미러링 사이트의 경우 원래 한국 젠투가 있었지만 요 몇년간 운영이 안되고 있는 관계로 일본 쪽을 추천합니다.&lt;br /&gt;// http://gentoo.gg3.net/&lt;br /&gt;// http://mirror.gentoo.gr.jp&lt;br /&gt;// http://ftp.jaist.ac.jp/pub/Linux/Gentoo/&lt;br /&gt;&lt;br /&gt;wget http://gentoo.gg3.net/releases/x86/2006.1/stages/x86/stage3-x86-2006.1.tar.bz2&lt;br /&gt;links2 http://mirror.gentoo.gr.jp&lt;br /&gt;&lt;br /&gt;tar jxvf stage3-x86-2006.1.tar.bz2&lt;br /&gt;// 받아놓은 스테이지를 현재 디렉토리(/mnt/gentoo) 에 풉니다. 나중에라도 tar 의 jxvf 옵션을 찾아보시기 바랍니다.&lt;br /&gt;&lt;br /&gt;mount -t proc /proc /mnt/gentoo/proc&lt;br /&gt;// 다양한 디바이스 드라이버를 사용하기 위해 proc 를 마운트해 줍니다.&lt;br /&gt;// 안 해줄 경우, 인스톨 씨디가 구성한 머신의 구조를 이용할 수 없습니다.&lt;br /&gt;&lt;br /&gt;mirrorselect -i -o &gt;&gt; /mnt/gentoo/etc/make.conf&lt;br /&gt;// 앞으로 어떤 미러 사이트를 사용할지 지정해 줍니다.&lt;br /&gt;// 저 /mnt/gentoo/etc/make.conf는 emerg 를 이용해서 컴파일 할 때 어떤 규칙을 정할지 적어 놓는 곳입니다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf&lt;br /&gt;// 인스톨 씨디가 감지해 놓은 네임서버의 주소를 복사해 줍니다. kt는 168.126.63.1~2 입니다.&lt;br /&gt;// 이 파일을 복사하지 않고 밑의 chroot를 그냥 실행하면 emerge 가 실행되지 않습니다.&lt;br /&gt;&lt;br /&gt;chroot /mnt/gentoo /bin/bash&lt;br /&gt;// chroot는 서버를 운영할 때 가상으로 루트를 지정하기 위한 명령입니다.&lt;br /&gt;// 크래커 내지는 무모한 이용자가 주요 파일에 손대지 못하도록 막기 위한 조치이지만&lt;br /&gt;// 여기서는 인스톨 경로를 바꿔주는데에도 목적이 있습니다.&lt;br /&gt;// 예를 들어서 /mnt/gentoo/etc/make.conf 는 /etc/make.conf로 접근이 가능합니다.&lt;br /&gt;&lt;br /&gt;env-update&lt;br /&gt;// /etc/env.conf/ 에 있는 파일에 명시된 대로 환경 변수를 지정해 줍니다.&lt;br /&gt;&lt;br /&gt;source /etc/profile&lt;br /&gt;// 쉘의 기본 설정을 지정해 줍니다.&lt;br /&gt;&lt;br /&gt;emerge --sync&lt;br /&gt;// 미러 사이트가 가지고 있는 젠투에서 인스톨 가능한 최신 패키지들의 리스트를 받아 옵니다.&lt;br /&gt;&lt;br /&gt;nano /etc/fstab&lt;br /&gt;// vi 를 애용하시는 분도 있겠지만 스테이지 파일 내에는 용량 문제로 nano라는 에디터를 제공합니다.&lt;br /&gt;// 나노를 이용해서 fstab을 자신의 설정에 맞춰서 편집해 줍니다.&lt;br /&gt;// 이 파일이 제대로 설정되지 않으면 부팅이 안될 수도 있습니다.&lt;br /&gt;// 부팅 시에 필요한 디스크는 옵션에서 noauto를 빼 줍니다.&lt;br /&gt;&lt;br /&gt;nano /etc/locale.gen&lt;br /&gt;// 이 파일에 아래와 같은 줄을 추가해 줍니다.&lt;br /&gt;// ko_KR.EUC-KR EUC-KR&lt;br /&gt;// ko_KR.UTF-8 UTF-8&lt;br /&gt;// 시스템의 로케일을 지정해 줍니다.&lt;br /&gt;// '터미널에서 사용자에게 메시지를 전달할 때 어느나라의 글을 쓸지' 등을 지정한다고 보시면 됩니다.&lt;br /&gt;&lt;br /&gt;//==== 커널 컴파일 하기 ====//&lt;br /&gt;// 커널 컴파일은 두가지 방법이 있습니다.&lt;br /&gt;// 젠투에서 제공하는 genkernel 패키지를 이용해서 진행하는 것과 바닐라 커널을 받아서 진행하는 방식입니다.&lt;br /&gt;// 바닐라 커널을 받아오는 경우, 버전에 따라서 방식이 차이가 날 수 있으므로 여기서는 genkernel에 대해서만 적겠습니다.&lt;br /&gt;&lt;br /&gt;emerge -k sys-kernel/gentoo-sources&lt;br /&gt;// 젠투에서 제공하는 소스를 받아 옵니다.&lt;br /&gt;&lt;br /&gt;emerge -k genkernel&lt;br /&gt;// genkernel 패키지를 인스톨 합니다.&lt;br /&gt;&lt;br /&gt;genkernel all&lt;br /&gt;// 컴파일을 해 줍니다.&lt;br /&gt;// 만약에 커널 설정이 따로 존재하거나 변경해야할 땐&lt;br /&gt;// genkernel --save-config --menuconfig all 을 이용하시면 됩니다.&lt;br /&gt;&lt;br /&gt;emerge syslog-ng&lt;br /&gt;rc-update add syslog-ng default&lt;br /&gt;// syslog-ng는 시스템에서 발생하는 로그를 관리해 줍니다.&lt;br /&gt;// rc-update 를 통해 시스템이 시작할 때 같이 시작되도록 지정해 줍니다.&lt;br /&gt;// 맨 뒤에 붙여주는 default와 boot의 차이는 다음과 같습니다.&lt;br /&gt;// default: 트러블이 생겨서 종료가 되는 경우에 자동으로 리스타트한다. 항상 켜져 있어야 하는 경우에 등록.&lt;br /&gt;// boot: 부팅할 때 단 한번만 실행한다. 하드웨어 인식을 위한 coldplug 등이 해당됨.&lt;br /&gt;&lt;br /&gt;emerge vixie-cron&lt;br /&gt;rc-update add vixie-cron default&lt;br /&gt;// vixie-cron은 cron입니다. cron이란 특정 시간에 특정 프로그램을 실행시킬 때 유용한 프로그램입니다.&lt;br /&gt;&lt;br /&gt;emerge vim&lt;br /&gt;// emac 와 함께 매우 유용한 에디터인 vi의 또다른 버전입니다.&lt;br /&gt;&lt;br /&gt;emerge grub&lt;br /&gt;// 부트로더입니다. 비슷한 것으로는 lilo가 있습니다.&lt;br /&gt;&lt;br /&gt;//==== 부트로더 인스톨 &amp; 설정 ====//&lt;br /&gt;// emerge grub 만으로 설정이 완료되지 않습니다. 어떤 하드의 어느 파티션에 커널 이미지가 있는지 지정해 줘야 합니다.&lt;br /&gt;&lt;br /&gt;grub&lt;br /&gt;// 터미널에서 grub을 입력하면 'grub&gt;&gt; ' 이와 같은 grub 터미널로 진입합니다.&lt;br /&gt;// 만약 /boot에 /dev/hda1가 마운트 된다면&lt;br /&gt;// root (hd0,0)&lt;br /&gt;// setup (hd0)&lt;br /&gt;// quit&lt;br /&gt;// 라고 입력해 주면 됩니다.&lt;br /&gt;&lt;br /&gt;vi /boot/grub/grub.conf&lt;br /&gt;// 부트로더가 부팅시에 참고하는 파일입니다. 다음과 같이 입력하시면 됩니다.&lt;br /&gt;// 물론, 파티션과 커널 이미지의 이름은 본인의 시스템에 맞추셔야 합니다.&lt;br /&gt;//timeout 10 // 대기 시간&lt;br /&gt;//default 0 // 처음 선택할 규칙&lt;br /&gt;//fallback 1 // 디폴트로의 부팅이 실패할 경우 선택하는 규칙&lt;br /&gt;//&lt;br /&gt;// title gentoo&lt;br /&gt;// root (hd0,0)&lt;br /&gt;// kernel /boot/kernel-genkernel-x86-2.6.18-gentoo-r5 root=/dev/hda3 vga=0x317 splash=verbose&lt;br /&gt;//&lt;br /&gt;// title WindowsXP // 멀티 부팅 시에 적용하시면 됩니다.&lt;br /&gt;// rootnoverify (hd0,1)&lt;br /&gt;// makeactive&lt;br /&gt;// chainloader +1&lt;br /&gt;&lt;br /&gt;emerge dhcpcd&lt;br /&gt;// 유동ip를 받아오기 위한 패키지 입니다. 비슷한 것으로는 dhclient가 있습니다.&lt;br /&gt;&lt;br /&gt;vi /etc/conf.d/net&lt;br /&gt;// 네트워크 설정을 위한 파일입니다. 유동 ip를 dhcp 환경에서 받는 경우의 설정 입니다.&lt;br /&gt;// config_eth0=("192.168.0.2/24")&lt;br /&gt;// config_eth0=("192.168.0.2 netmask 255.255.255.0")&lt;br /&gt;// config_eth0=("dhcp")&lt;br /&gt;&lt;br /&gt;rc-update add net.eth0 default&lt;br /&gt;&lt;br /&gt;emerge hotplug coldplug hal&lt;br /&gt;// 하드웨어 인식을 위한 패키지 입니다.&lt;br /&gt;rc-update add hotplug default&lt;br /&gt;rc-update add hals default&lt;br /&gt;rc-update add coldplug boot&lt;br /&gt;&lt;br /&gt;/etc/modules.aoutoload.d/kernel-2.6&lt;br /&gt;// 만약에 coldplug를 사용하지 않고 특정 모듈을 선택해서 메모리에 적재하고 싶다면 위 파일에 모듈 명을 적어 주시면 됩니다.&lt;br /&gt;// 굳이 이런 방식을 쓰는 이유는 메모리에 모듈을 적재하고 제거하는 과정에서 크래커의 침입을 허용하는 버그가 생길 수 있기 때문입니다.&lt;br /&gt;&lt;br /&gt;passwd&lt;br /&gt;// root의 암호를 지정해 줍니다.&lt;br /&gt;&lt;br /&gt;adduser "username" -m -d /home/"username" -G users,wheel,audio -s /bin/bash&lt;br /&gt;passwd "username"&lt;br /&gt;// 새 유저를 추가해 줍니다.&lt;br /&gt;&lt;br /&gt;etc-update&lt;br /&gt;// 설정 파일을 시스템에서 갱신해 줍니다.&lt;br /&gt;&lt;br /&gt;exit&lt;br /&gt;// chroot 에서 빠져 나옵니다.&lt;br /&gt;&lt;br /&gt;cd /&lt;br /&gt;umount /mnt/gentoo/boot&lt;br /&gt;umount /mnt/gentoo/proc&lt;br /&gt;umount /mnt/gentoo&lt;br /&gt;reboot&lt;br /&gt;// 시스템의 안전을 위해 모두 언마운트 해주고 시스템을 리부팅 해 줍니다.&lt;br /&gt;&lt;br /&gt;less&lt;br /&gt;&lt;br /&gt;5. 마치며&lt;br /&gt;&lt;br /&gt;이상이 젠투의 기본 시스템을 인스톨하는 순서 입니다.&lt;br /&gt;이후로는 사용자가 선택하는 대로 패키지를 인스톨해서 서버나 데스크탑으로 쓸 수 있습니다.&lt;br /&gt;다음에는 kde를 이용한 데스크탑과 본 블로그가 올라가 있는 웹서버에 대해 글을 적도록 하겠습니다.&lt;br /&gt;&lt;br /&gt;문의 사항이나 수정할 부분은 댓글로 남겨 주십시오.&lt;br /&gt;(사실 정확한 이유를 들어가며 멋지게 쓰고 싶었는데 어깨 너머로 깔아가며 익힌 부분이 많아서 헛소문을 유포하는 건 아닌지 불안한 부분도 있습니다;;)&lt;br /&gt;&lt;br /&gt;* 저의 귀찮은 질문에 답해주신 많은 분들께 감사 드리며 소중한 문서를 공개해 주신 tinywolf님께 특히 감사 드립니다&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-5038388410157132068?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/5038388410157132068/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=5038388410157132068' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/5038388410157132068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/5038388410157132068'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/02/1.html' title=''/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-4724832581545410447</id><published>2007-02-03T00:40:00.001-08:00</published><updated>2007-02-03T00:40:52.042-08:00</updated><title type='text'>imhangul</title><content type='html'>지금 그놈2에서 imhangul-0.9.2를 설치 하여서 사용중입니다&lt;br /&gt;잘되는 것 같네요..&lt;br /&gt;하지만 imhangul-0.9.2를 설치시 경로명을 조금 손 봤습니다&lt;br /&gt;imhangul-0.9.2의 configure파일중에서 경로 명을 손봤습니다&lt;br /&gt;그리고 --sysconfidir=경로도 프비에 맞게 적어주었고요..&lt;br /&gt;이걸로는 모질라에서 한글이 안쓰여져서.&lt;br /&gt;gedit에서 쓰서 붇여넣기 하네요 ㅠ.ㅠ&lt;br /&gt;환경은 FreeBSD 4.7-RC2 에 그놈2 설치하고 imhangul-0.9.2를 설치해서&lt;br /&gt;사용중입니다&lt;br /&gt;폰트는 원도용 MDGaesung폰트를 사용중입니다&lt;br /&gt;제가 한방법입니다&lt;br /&gt;&lt;br /&gt;프비 4.7-RC2설치.--- 아무것도 설치 하지 않고 프비만설치&lt;br /&gt;그놈2를 다운로드후 pkg_add 설치&lt;br /&gt;http://www.marcuscom.com/downloads/packages/gnome/&lt;br /&gt;이곳에서 tgz파일만 받아서 설치&lt;br /&gt;같은 것이 tgz tbz이렇게 2개가 있어서 ...&lt;br /&gt;.xinitrc에&lt;br /&gt;export LC_ALL=ko_KR.eucKR&lt;br /&gt;export GTK_IM_MODULE=hangul2&lt;br /&gt;export GDK_USE_XFT=1&lt;br /&gt;exec gnome-session&lt;br /&gt;적음&lt;br /&gt;/etc/X11/XF86Config 에&lt;br /&gt;load "freetype"&lt;br /&gt;load "type1"&lt;br /&gt;을 적어 넣습니다&lt;br /&gt;/usr/X11R6/lib/X11/fonts 에 XFT폴더 생성후&lt;br /&gt;이곳에 원도용 폰트에서 G로시작하는 폰트를 다 가져왔습니다&lt;br /&gt;(소문자 g아니고 대문자)&lt;br /&gt;아마 Gaesung.ttf파일인가 봅니다 ..&lt;br /&gt;&lt;br /&gt;그리고 /usr/X11R6/lib/X11/XftConfig에&lt;br /&gt;dir "/usr/X11R6/lib/X11/fonts/XFT" 를 추가 합니다&lt;br /&gt;그리고 xftcache 를 실행합니다&lt;br /&gt;&lt;br /&gt;http://kldp.net/project/showfiles.php?group_id=28&lt;br /&gt;이곳에서 imhangul-0.9.2소스 파일을 가져와서 압축을 푼다음&lt;br /&gt;configure파일을 vi로 열어서&lt;br /&gt;12번째줄에 보면&lt;br /&gt;ac_default_prefix=/usr/local 을&lt;br /&gt;ac_default_prefix=/usr/X11R6&lt;br /&gt;로 바꿈&lt;br /&gt;그리고&lt;br /&gt;./configure --sysconfidir=/usr/X11R6/etc&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;설치가 잘되면&lt;br /&gt;/usr/X11R6/etc/gtk-2.0/gtk.immodules 파일을 열어보면..&lt;br /&gt;아래와 같이 되어있을겁니다&lt;br /&gt;# GTK+ Input Method Modules file&lt;br /&gt;# Automatically generated file, do not edit&lt;br /&gt;#&lt;br /&gt;# ModulesPath = /root/.gtk-2.0/2.0.0/i386-unknown-freebsd4.6/immodules:&lt;br /&gt;/root/.gtk-2.0/2.0.0/immodules:&lt;br /&gt;/root/.gtk-2.0/i386-unknown-freebsd4.6/immodules:&lt;br /&gt;/root/.gtk-2.0/immodules:&lt;br /&gt;/usr/X11R6/lib/gtk-2.0/2.0.0/i386-unknown-freebsd4.6/immodules:&lt;br /&gt;/usr/X11R6/lib/gtk-2.0/2.0.0/immodules:&lt;br /&gt;/usr/X11R6/lib/gtk-2.0/i386-unknown-freebsd4.6/immodules:&lt;br /&gt;/usr/X11R6/lib/gtk-2.0/immodules&lt;br /&gt;(한줄..)&lt;br /&gt;#&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-am-et.so"&lt;br /&gt;"am_et" "Amharic (EZ+)" "gtk+" "/usr/X11R6/share/locale" "am"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-cyrillic-translit.so"&lt;br /&gt;"cyrillic_translit" "Cyrillic (Transliterated)" "gtk+" "/usr/X11R6/share/locale" ""&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-hangul.so"&lt;br /&gt;"hangul" "Hangul (KSC 5601)" "gtk+" "" ""&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-inuktitut.so"&lt;br /&gt;"inuktitut" "Inukitut (Transliterated)" "gtk+" "/usr/X11R6/share/locale" "iu"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-ipa.so"&lt;br /&gt;"ipa" "IPA" "gtk+" "/usr/X11R6/share/locale" ""&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-thai-broken.so"&lt;br /&gt;"thai_broken" "Thai (Broken)" "gtk+" "/usr/X11R6/share/locale" ""&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-ti-er.so"&lt;br /&gt;"ti_er" "Tigrigna-Eritrean (EZ+)" "gtk+" "/usr/X11R6/share/locale" "ti"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-ti-et.so"&lt;br /&gt;"ti_et" "Tigrigna-Ethiopian (EZ+)" "gtk+" "/usr/X11R6/share/locale" "ti"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-viqr.so"&lt;br /&gt;"viqr" "Vietnamese (VIQR)" "gtk+" "/usr/X11R6/share/locale" "vi"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-xim.so"&lt;br /&gt;"xim" "X Input Method" "gtk+" "/usr/X11R6/share/locale" "ja:zh"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-hangul2.so"&lt;br /&gt;"hangul2" "Hangul 2bul(UTF8)" "gtk+" "" "ko"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-hangul3.so"&lt;br /&gt;"hangul3" "Hangul 3bul(UTF8)" "gtk+" "" ""&lt;br /&gt;&lt;br /&gt;홈폴더에 .gtk.immodules로 카피후에 아래와 같이 손봅니다&lt;br /&gt;&lt;br /&gt;# GTK+ Input Method Modules file&lt;br /&gt;# Automatically generated file, do not edit&lt;br /&gt;#&lt;br /&gt;~~~~~우짜고 저짜고&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-hangul.so"&lt;br /&gt;"hangul" "Hangul (KSC 5601)" "gtk+" "" ""&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-hangul2.so"&lt;br /&gt;"hangul2" "Hangul 2bul(UTF8)" "gtk+" "" "ko"&lt;br /&gt;&lt;br /&gt;"/usr/X11R6/lib/gtk-2.0/2.0.0/immodules/im-hangul3.so"&lt;br /&gt;"hangul3" "Hangul 3bul(UTF8)" "gtk+" "" ""&lt;br /&gt;&lt;br /&gt;그리고 홈폴더에 .gtkrc-2.0 을 만들어서 아래와 같이 써줍니다&lt;br /&gt;im_module_file "/root/.gtk.immodules"&lt;br /&gt;/root/는 제가 루트여서 그렇습니다&lt;br /&gt;자기 자신의 홈 폴더를 잡으세요&lt;br /&gt;절대경로&lt;br /&gt;/home/sayung/.gtk~~~~&lt;br /&gt;이런식으로&lt;br /&gt;그리고 chmod 755를 줘서 실행 파일로 만듭니다&lt;br /&gt;&lt;br /&gt;그놈을 실행후&lt;br /&gt;&lt;br /&gt;폰틀를&lt;br /&gt;MDGaesung로 바꾸시고 gedit에서 한글을 써보세요&lt;br /&gt;&lt;br /&gt;조금 모자란 감이 있지만 함 해보세요&lt;br /&gt;이글은 여러 문서들을 모아서 조합하고 제가 프비에 맞게 맞춘 겁니다&lt;br /&gt;잘쓰세요&lt;br /&gt;&lt;br /&gt;ps 지금 프비 4.6.2에 설치를 할려고 하니 XF86버전이 4.2.0 이어서 그놈2가 설치가 안되네요&lt;br /&gt;아마 4.2.1버전이어야 만 되는 가봐요..&lt;br /&gt;이만 잘쓰세요 ^^&lt;br /&gt;&lt;br /&gt;혹시라도 수정이 필요 하시거나 변경할 부분은 알려 주세요..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-4724832581545410447?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/4724832581545410447/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=4724832581545410447' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/4724832581545410447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/4724832581545410447'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/02/imhangul.html' title='imhangul'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-3020061845508634819</id><published>2007-01-30T22:28:00.001-08:00</published><updated>2007-01-30T22:28:56.955-08:00</updated><title type='text'>네트워크 설정</title><content type='html'># vi /etc/rc.conf&lt;br /&gt;&lt;br /&gt;vi 에디터로 rc.conf 파일을 보면 아래와 같은 내용이 나온다.&lt;br /&gt;&lt;br /&gt;    # -- sysinstall generated deltas -- # Mon Sep 11 05:44:23 2006&lt;br /&gt;    # Created: Mon Sep 11 05:44:23 2006&lt;br /&gt;    # Enable network daemons for user convenience.&lt;br /&gt;    # Please make all changes to this file, not to /etc/defaults/rc.conf.&lt;br /&gt;    # This file now contains just the overrides from /etc/defaults/rc.conf.&lt;br /&gt;    defaultrouter="192.168.1.1"&lt;br /&gt;    hostname="lifefeel.com"&lt;br /&gt;    ifconfig_lnc0="inet 192.168.1.2 netmask 255.255.255.0"&lt;br /&gt;    inetd_enable="YES"&lt;br /&gt;    keymap="us.iso"&lt;br /&gt;    linux_enable="YES"&lt;br /&gt;    sshd_enable="YES"&lt;br /&gt;    usbd_enable="YES"&lt;br /&gt;    apache22_enable="YES"&lt;br /&gt;    mysql_enable="YES"&lt;br /&gt;&lt;br /&gt;위의 내용에서 굵은 글자로 표시한 부분을 바꾸면 된다.&lt;br /&gt;defaultrouter는 게이트웨이의 주소를 입력하면 되고 ifconfig_Inc0엔 사용할 아이피 주소,&lt;br /&gt;netmask에는 서브넷마스크를 입력하면 된다.&lt;br /&gt;설정 완료 후 재부팅 하면 바뀐 아이피로 시스템을 이용할 수 있다.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-3020061845508634819?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/3020061845508634819/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=3020061845508634819' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/3020061845508634819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/3020061845508634819'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/blog-post.html' title='네트워크 설정'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-5429602388392319213</id><published>2007-01-30T06:53:00.000-08:00</published><updated>2007-01-30T06:54:30.998-08:00</updated><title type='text'>netbsd, jsp</title><content type='html'>NetBSD에서 JSP환경 구축&lt;br /&gt;&lt;br /&gt;NetBSD에서 JSP환경 구축하는 방법을 간단히 적어 봤습니다.&lt;br /&gt;부족한 점이 있지만, NetBSD 사용하시는 분들 중에서 자바를 사용하고 싶으신 분들에게&lt;br /&gt;도움이 됐으면 좋겠습니다.&lt;br /&gt;&lt;br /&gt;오늘이 크리스마스네요.. 즐거운 크리스마스 보내세요. ^_____^&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;OS : NetBSD 3.0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;구축할 JSP 환경:&lt;br /&gt;&lt;br /&gt;      J2RE-1.4.2&lt;br /&gt;      J2SDK-1.4.2&lt;br /&gt;      Tomcat-4.1.31&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;구축 과정 :&lt;br /&gt;&lt;br /&gt;      j2re-1_4_2_09-linux-i586.bin 파일과&lt;br /&gt;      j2sdk-1_4_2_09-linux-i586.bin 파일을&lt;br /&gt;&lt;br /&gt;      java.sun.com에서 다운 받아서 /usr/pkgsrc/distfiles에 복사합니다.&lt;br /&gt;&lt;br /&gt;            제가 사용한 pkgsrc는 최근에 나온 것이 아닙니다.&lt;br /&gt;            pkgsrc current버전을 사용할 경우 Sun에서 다운 받아야 할 파일이&lt;br /&gt;            j2re-1_4_2_10-linux-i586.bin 와 j2sdk-1_4_2_10-linux-i586.bin 인지&lt;br /&gt;            확인해 보세요&lt;br /&gt;&lt;br /&gt;      /usr/pkgsrc/lang/sun-jdk14 에서 make install clean 명령을 주면&lt;br /&gt;      리눅스 Emulation환경을 자동으로 구축한 후 설치 됩니다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;      /etc/fstab의 proc부분 다음과 같이 수정&lt;br /&gt;      코드:&lt;br /&gt;      proc /emul/linux/proc procfs rw,linux&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;      그리고 커널 컴파일 옵션 중..&lt;br /&gt;      options COMPAT_LINUX 를 주석처리하고 커널 컴파일 했다면&lt;br /&gt;      주석제거하고 컴파일 해야 됩니다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;환경설정 :&lt;br /&gt;(홈디렉토리의 .cshrc에 추가)&lt;br /&gt;&lt;br /&gt;코드:&lt;br /&gt;&lt;br /&gt;setenv JAVA_HOME /usr/pkg/java/sun-1.4&lt;br /&gt;setenv PATH ${PATH}:${JAVA_HOME}/bin&lt;br /&gt;setenv CLASSPATH .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;자바를 실행시키기 위해 데이터 세그먼트 사이즈를 늘려주는 간단한 쉘 스크립트 작성&lt;br /&gt;(홈디렉토리의 .cshrc에 추가)&lt;br /&gt;&lt;br /&gt;코드:&lt;br /&gt;&lt;br /&gt;set pid=`echo $$`   &lt;- 현재 사용하는 쉘의 프로세스ID를 알아낸 뒤 쉘 변수 pid에 저장&lt;br /&gt;sysctl -w proc.$pid.rlimit.datasize.hard=350000000 \&lt;br /&gt;          proc.$pid.rlimit.datasize.soft=350000000&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;인용:&lt;br /&gt;The installation runs some Java applications requiring very large&lt;br /&gt;data segment sizes, sometimes as great as 350M. As I built&lt;br /&gt;this as a normal user, this was greater than the allowable data&lt;br /&gt;segment size, and I found it easiest to circumvent this using&lt;br /&gt;sysctl; find out the pid of your building shell (`echo $$'),&lt;br /&gt;and in another shell invoke&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;---- /etc/fstab 수정 내용 시스템에 적용하기 위해 리부팅하기 ----&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;톰켓 설치&lt;br /&gt;&lt;br /&gt;tomcat-4.1.31 압축푼 후 /usr/local/tomcat 으로 복사&lt;br /&gt;톰켓 디렉토리에서 톰캣을 시동시키기 위해 /bin/startup.sh 실행&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;웹브라우저로 서버 접속&lt;br /&gt;&lt;br /&gt;웹 브라우저상에서 도메인 주소와 포트번호 입력&lt;br /&gt;&lt;br /&gt;http://localhost:8080&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;완료.....&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;아래는 제가 참고한 사이트입니다.&lt;br /&gt;&lt;br /&gt;http://mail-index.netbsd.org/netbsd-users/2005/04/12/0010.html&lt;br /&gt;&lt;br /&gt;http://mail-index.netbsd.org/current-users/2004/03/25/0019.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-5429602388392319213?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/5429602388392319213/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=5429602388392319213' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/5429602388392319213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/5429602388392319213'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/netbsd-jsp_30.html' title='netbsd, jsp'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-2481097265345328221</id><published>2007-01-29T07:09:00.000-08:00</published><updated>2007-01-29T07:10:36.065-08:00</updated><title type='text'>chsh fault</title><content type='html'>vipw&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-2481097265345328221?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/2481097265345328221/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=2481097265345328221' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/2481097265345328221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/2481097265345328221'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/chsh-fault.html' title='chsh fault'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-3419371363409254067</id><published>2007-01-29T06:41:00.001-08:00</published><updated>2007-01-29T06:41:55.928-08:00</updated><title type='text'>netbsd &amp; jsp</title><content type='html'>OS : NetBSD 3.0&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;JSP 환경:&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  J2RE-1.4.2&lt;br /&gt;  J2SDK-1.4.2&lt;br /&gt;  Tomcat-4.1.31&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;구축 과정 :&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  j2re-1_4_2_09-linux-i586.bin&lt;br /&gt;  j2sdk-1_4_2_09-linux-i586.bin 파일을&lt;br /&gt;  java.sun.com에서 다운 받아서 /usr/pkgsrc/distfiles에 복사&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  /usr/pkgsrc/lang/sun-jdk14 에서 make install clean 명령을 주면&lt;br /&gt;  리눅스 Emulation환경을 자동으로 구축한 후 설치 됨&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  /etc/fstab의  proc부분 다음과 같이 수정&lt;br /&gt;  proc /emul/linux/proc procfs rw,linux&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;환경설정 :&lt;br /&gt;&lt;br /&gt; (홈디렉토리의 .cshrc에 추가)&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  setenv JAVA_HOME /usr/pkg/java/sun-1.4&lt;br /&gt;  setenv PATH ${PATH}:${JAVA_HOME}/bin&lt;br /&gt;  setenv CLASSPATH .&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;자바를 실행시키기 위해 데이터 세그먼트 사이즈를 늘려주는 간단한 쉘 스크립트 작성&lt;br /&gt;&lt;br /&gt; (홈디렉토리의 .cshrc에 추가)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  set pid=`echo $$`   &lt;- 현재 사용하는 쉘의 프로세스ID를 알아낸 뒤 쉘 변수 pid에 저장&lt;br /&gt;  sysctl -w proc.$pid.rlimit.datasize.hard=350000000 \ &lt;br /&gt;&lt;br /&gt;                proc.$pid.rlimit.datasize.soft=350000000 &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;---- /etc/fstab 수정 내용 적용하기 위해 리부팅하기 ----&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;톰켓 설치&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  tomcat-4.1.31 압축푼 후 /usr/local/tomcat 으로 복사&lt;br /&gt;  톰켓 디렉토리에서 tomcat을 시동시키기 위해 /bin/startup.sh 실행&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;서버로 접속&lt;br /&gt; &lt;br /&gt;  웹 브라우저상에서 도메인 주소와 포트번호 입력&lt;br /&gt; &lt;br /&gt;  http://etude.mine.nu:8080&lt;br /&gt; &lt;br /&gt;  서버로 접속됨..&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  완료.....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-3419371363409254067?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/3419371363409254067/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=3419371363409254067' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/3419371363409254067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/3419371363409254067'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/netbsd-jsp.html' title='netbsd &amp; jsp'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-7459727804274631738</id><published>2007-01-26T05:51:00.000-08:00</published><updated>2007-01-26T05:52:26.405-08:00</updated><title type='text'>.emacs 한글 설정</title><content type='html'>(require 'cl)&lt;br /&gt;(when enable-multibyte-characters&lt;br /&gt;  (set-language-environment "Korean")&lt;br /&gt;  (setq-default file-name-coding-system 'euc-kr)&lt;br /&gt;  (setq default-korean-keyboard "3"))&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-7459727804274631738?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/7459727804274631738/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=7459727804274631738' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7459727804274631738'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7459727804274631738'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/emacs_26.html' title='.emacs 한글 설정'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-5881728499537728536</id><published>2007-01-23T19:35:00.001-08:00</published><updated>2007-01-23T19:35:54.326-08:00</updated><title type='text'>HashMap,TreeMap,HashTable</title><content type='html'>1. Collection&lt;br /&gt;&lt;br /&gt;    * Map은 key와 value를 가진 집합이며, 중복을 허용하지 않는다.&lt;br /&gt;    * 즉, 한개의 key에 한개의 value가 매칭된다.&lt;br /&gt;    * java.util 패키지에 여러 집합들을 사용하기 위한 여러 interface와 class 들이 정의되어 있다. &lt;br /&gt;&lt;br /&gt;2. HashMap&lt;br /&gt;&lt;br /&gt;    * HashMap은 Map interface를 implements 한 클래스로서 중복을 허용하지 않는다.&lt;br /&gt;    * Map의 특징인 key와 value의 쌍으로 이루어지며, key 또는 value 값으로써 null을 허용한다.&lt;br /&gt;    * 아래의 예는 HashMap을 사용한 간단한 예제이다.&lt;br /&gt;&lt;br /&gt;      import java.util.*;&lt;br /&gt;&lt;br /&gt;       &lt;br /&gt;&lt;br /&gt;      public class HashMapTest&lt;br /&gt;      {&lt;br /&gt;          public static void main(String argv[])&lt;br /&gt;          {&lt;br /&gt;              HashMap hm = new HashMap();&lt;br /&gt;              System.out.println(hm.put("aaa", "111"));&lt;br /&gt;              System.out.println(hm.put("bbb", "222"));&lt;br /&gt;              System.out.println(hm.put("aaa", "444"));&lt;br /&gt;              System.out.println(hm.put("ccc", "333"));   &lt;br /&gt;              System.out.println(hm.put("ccc", null));      &lt;br /&gt;             &lt;br /&gt;              System.out.println("HashMap size : " + hm.size());&lt;br /&gt;             &lt;br /&gt;              Set set = hm.keySet();&lt;br /&gt;              Object []hmKeys = set.toArray();&lt;br /&gt;              for(int i = 0; i &lt; hmKeys.length; i++)&lt;br /&gt;              {&lt;br /&gt;                  String key = (String)hmKeys[i];  &lt;br /&gt;                  System.out.print(key);&lt;br /&gt;                  System.out.print(" - ");&lt;br /&gt;                  System.out.println((String)hm.get(key));&lt;br /&gt;              }&lt;br /&gt;          }&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;      /**&lt;br /&gt;      실행:java HashMapTest&lt;br /&gt;      결과:&lt;br /&gt;      null&lt;br /&gt;      null&lt;br /&gt;      111&lt;br /&gt;      null&lt;br /&gt;      333&lt;br /&gt;      HashMap size : 3&lt;br /&gt;      ccc - null&lt;br /&gt;      bbb - 222&lt;br /&gt;      aaa - 444&lt;br /&gt;      */&lt;br /&gt;&lt;br /&gt;3. TreeMap&lt;br /&gt;&lt;br /&gt;    * TreeMap역시 중복을 허용하지 않으며, key와 value의 쌍으로 이루어져 있다.&lt;br /&gt;    * HashMap과 다른 점은 SortedMap을 implements 하였으므로, key 값들에 대한 정렬이 이루어진다는 점이다.&lt;br /&gt;    * 아래의 예는 TreeMap을 사용하여 각 요소가 몇몇 이나 나왔는지 알아보는 간단한 예제이다.&lt;br /&gt;&lt;br /&gt;      import java.util.*;&lt;br /&gt;&lt;br /&gt;      public class Freq&lt;br /&gt;&lt;br /&gt;      {&lt;br /&gt;          private static final Integer ONE = new Integer(1);&lt;br /&gt;&lt;br /&gt;          public static void main(String args[])&lt;br /&gt;&lt;br /&gt;          {&lt;br /&gt;              Map m = new TreeMap();&lt;br /&gt;&lt;br /&gt;              // Initialize frequency table from command line&lt;br /&gt;              for (int i=0; i &lt; args.length; i++)&lt;br /&gt;&lt;br /&gt;              {&lt;br /&gt;                  Integer freq = (Integer) m.get(args[i]);&lt;br /&gt;                  m.put(args[i], (freq==null ? ONE :&lt;br /&gt;                                  new Integer(freq.intValue() + 1)));&lt;br /&gt;              }&lt;br /&gt;&lt;br /&gt;              System.out.println(m.size()+" distinct words detected:");&lt;br /&gt;              System.out.println(m);&lt;br /&gt;          }&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;      /**&lt;br /&gt;      실행:java Freq if it is to be it is up to me to delegate&lt;br /&gt;      결과:&lt;br /&gt;      8 distinct words detected:&lt;br /&gt;      {be=1, delegate=1, if=1, is=2, it=2, me=1, to=3, up=1}&lt;br /&gt;      */&lt;br /&gt;&lt;br /&gt;4. Hashtable&lt;br /&gt;&lt;br /&gt;    * Hashtable Map interface를 implements 한 클래스로서 중복을 허용하지 않는다.&lt;br /&gt;    * Map의 특징인 key와 value의 쌍으로 이루어지며, key 또는 value 값으로써 null을 허용하지 않는다.(HashMap과의 차이점)&lt;br /&gt;    * 아래의 예는 HashTable을 사용한 간단한 예제이다.&lt;br /&gt;&lt;br /&gt;      import java.util.*;&lt;br /&gt;&lt;br /&gt;      public class HashtableTest&lt;br /&gt;&lt;br /&gt;      {&lt;br /&gt;&lt;br /&gt;          public static void main(String argv[])&lt;br /&gt;          {&lt;br /&gt;              Hashtable ht = new Hashtable();&lt;br /&gt;              System.out.println(ht.put("aaa", "111"));&lt;br /&gt;              System.out.println(ht.put("bbb", "222"));&lt;br /&gt;              System.out.println(ht.put("aaa", "444"));&lt;br /&gt;              System.out.println(ht.put("ccc", "333"));   &lt;br /&gt;             &lt;br /&gt;              System.out.println("Hashtable size : " + ht.size());&lt;br /&gt;             &lt;br /&gt;              System.out.println("aaa value : " + (String)ht.get("aaa");&lt;br /&gt;             &lt;br /&gt;          }&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;      /**&lt;br /&gt;      실행:java HashMapTest&lt;br /&gt;      결과:&lt;br /&gt;      null&lt;br /&gt;      null&lt;br /&gt;      111&lt;br /&gt;      null&lt;br /&gt;      Hashtable size : 3&lt;br /&gt;      aaa value : 444&lt;br /&gt;      */&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-5881728499537728536?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/5881728499537728536/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=5881728499537728536' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/5881728499537728536'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/5881728499537728536'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/hashmaptreemaphashtable.html' title='HashMap,TreeMap,HashTable'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-2995476977861311394</id><published>2007-01-11T13:29:00.000-08:00</published><updated>2007-01-11T13:30:08.075-08:00</updated><title type='text'>emacs 색 설정</title><content type='html'>;; color&lt;br /&gt;(set-background-color "black")&lt;br /&gt;(set-foreground-color "white")&lt;br /&gt;(set-cursor-color "yellow")&lt;br /&gt;;;(set-mouse-color "yellow")&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-2995476977861311394?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/2995476977861311394/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=2995476977861311394' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/2995476977861311394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/2995476977861311394'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/emacs.html' title='emacs 색 설정'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-8612347264594918832</id><published>2007-01-08T23:30:00.000-08:00</published><updated>2007-01-08T23:31:09.950-08:00</updated><title type='text'>class Scanner</title><content type='html'>[예제3 ScannerEx3.java] - 파일로부터 입력받기2&lt;br /&gt;import java.util.Scanner;&lt;br /&gt;import java.io.File;&lt;br /&gt;&lt;br /&gt;class ScannerEx3&lt;br /&gt;{&lt;br /&gt;      public static void main(String[] args) throws Exception&lt;br /&gt;      {&lt;br /&gt;            Scanner sc = new Scanner(new File("data.txt"));&lt;br /&gt;            int cnt = 0;&lt;br /&gt;            int totalSum = 0;&lt;br /&gt;&lt;br /&gt;            while (sc.hasNextLine()) {&lt;br /&gt;                  String line = sc.nextLine();&lt;br /&gt;                  Scanner sc2 = new Scanner(line).useDelimiter(",");&lt;br /&gt;                  int sum = 0;&lt;br /&gt;&lt;br /&gt;                  while(sc2.hasNextInt()) {&lt;br /&gt;                        sum += sc2.nextInt();&lt;br /&gt;                  }&lt;br /&gt;                  System.out.println(line + ", sum = "+ sum);&lt;br /&gt;                  totalSum += sum;&lt;br /&gt;                  cnt++;&lt;br /&gt;            }&lt;br /&gt;            System.out.println("Line: " + cnt + ", Total: " + totalSum);&lt;br /&gt;      }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt;&gt;java ScannerEx3&lt;br /&gt;100,100,100, sum = 300&lt;br /&gt;200,200,200, sum = 600&lt;br /&gt;300,300,300, sum = 900&lt;br /&gt;400,400,400, sum = 1200&lt;br /&gt;500,500,500, sum = 1500&lt;br /&gt;Line: 5, Total: 4500&lt;br /&gt;&lt;br /&gt;&gt;type data.txt&lt;br /&gt;100,100,100&lt;br /&gt;200,200,200&lt;br /&gt;300,300,300&lt;br /&gt;400,400,400&lt;br /&gt;500,500,500&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-8612347264594918832?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/8612347264594918832/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=8612347264594918832' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/8612347264594918832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/8612347264594918832'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2007/01/class-scanner.html' title='class Scanner'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-7207831610377016221</id><published>2006-12-28T06:17:00.000-08:00</published><updated>2006-12-28T06:18:15.138-08:00</updated><title type='text'>emacs rect</title><content type='html'>clear-rectangle        C-x r c&lt;br /&gt;  Command: Blank out the region-rectangle.&lt;br /&gt;close-rectangle        M-x close-rectangle RET&lt;br /&gt;  Command: Delete all whitespace following a specified column in each&lt;br /&gt;line.&lt;br /&gt;copy-rectangle-to-register    C-x r r&lt;br /&gt;  Command: Copy rectangular region into register REGISTER.&lt;br /&gt;delete-rectangle       C-x r d&lt;br /&gt;  Command: Delete (don't save) text in the region-rectangle.&lt;br /&gt;delete-whitespace-rectangle   M-x delete-whitespace-rectangle RET&lt;br /&gt;  Command: Delete all whitespace following a specified column in each&lt;br /&gt;line.&lt;br /&gt;delimit-columns-rectangle     M-x delimit-columns-rectangle RET&lt;br /&gt;  Command: Prettify all columns in a text rectangle.&lt;br /&gt;kill-rectangle        C-x r k&lt;br /&gt;  Command: Delete the region-rectangle and save it as the last killed one.&lt;br /&gt;open-rectangle        C-x r o&lt;br /&gt;  Command: Blank out the region-rectangle, shifting text right.&lt;br /&gt;replace-rectangle       M-x replace-rectangle RET&lt;br /&gt;  Command: Replace rectangle contents with STRING on each line.&lt;br /&gt;string-insert-rectangle       M-x string-insert-rectangle RET&lt;br /&gt;  Command: Insert STRING on each line of region-rectangle, shifting text&lt;br /&gt;right.&lt;br /&gt;string-rectangle       C-x r t&lt;br /&gt;  Command: Replace rectangle contents with STRING on each line.&lt;br /&gt;yank-rectangle        C-x r y&lt;br /&gt;  Command: Yank the last killed rectangle with upper left corner at point.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-7207831610377016221?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/7207831610377016221/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=7207831610377016221' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7207831610377016221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7207831610377016221'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2006/12/emacs-rect.html' title='emacs rect'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-7959634116297853206</id><published>2006-12-21T06:19:00.000-08:00</published><updated>2006-12-21T06:20:05.188-08:00</updated><title type='text'>Dj Shadow In Tune And On Time 1</title><content type='html'>&lt;embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-6517555921174632079&amp;hl=en" flashvars=""&gt; &lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-7959634116297853206?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/7959634116297853206/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=7959634116297853206' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7959634116297853206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7959634116297853206'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2006/12/dj-shadow-in-tune-and-on-time-1.html' title='Dj Shadow In Tune And On Time 1'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-7589457671022979897</id><published>2006-12-20T05:03:00.001-08:00</published><updated>2006-12-20T05:03:23.953-08:00</updated><title type='text'>DJ SHADOW - Organ Doner</title><content type='html'>&lt;embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=9100319156082334243&amp;hl=en" flashvars=""&gt; &lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-7589457671022979897?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/7589457671022979897/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=7589457671022979897' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7589457671022979897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/7589457671022979897'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2006/12/dj-shadow-organ-doner.html' title='DJ SHADOW - Organ Doner'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7252701061876041580.post-8981881450048745978</id><published>2006-12-20T04:53:00.001-08:00</published><updated>2006-12-20T04:53:51.296-08:00</updated><title type='text'>ipot nano hacking</title><content type='html'>&lt;embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-6646442394283731938&amp;hl=en" flashvars=""&gt; &lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7252701061876041580-8981881450048745978?l=mikmy9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikmy9.blogspot.com/feeds/8981881450048745978/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7252701061876041580&amp;postID=8981881450048745978' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/8981881450048745978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7252701061876041580/posts/default/8981881450048745978'/><link rel='alternate' type='text/html' href='http://mikmy9.blogspot.com/2006/12/ipot-nano-hacking.html' title='ipot nano hacking'/><author><name>mik∞y</name><uri>http://www.blogger.com/profile/17904875521758221697</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
