'2007/03'¿¡ ÇØ´çµÇ´Â ±Û 10°Ç

2007ë…„ 03ì›” 28ì¼ 15시 14ë¶„
by 히스피

proftpd.conf 설정19


proftpd란 ProFTPD는 unixë˜ëŠ” unix 호환 OS를 위한 FTP daemonì´ë‹¤. ProFTPD는 free software를 토대로한 GNU Public License (GPL)ì— ë”°ë¼ ê°œë°œë˜ì–´ì ¸ 왔으며, ì´ëŠ” 완전한 source code 와 ì´ë¥¼ í¬í•¨í•œ Proftpd package들 ë˜ëŠ” 미리 컴파ì¼ì„ 한 binaryë“¤ì˜ í˜•íƒœë¡œ ëœ ê²ƒì„ ì›í•˜ëŠ” 목ì ì— ë”°ë¼ ìƒì—…ì ìœ¼ë¡œ ë˜ëŠ” 마ìŒê» ë°°í¬í• ìˆ˜ 있다는 ê²ƒì„ ì˜ë¯¸í•œë‹¤. 언제 누구ì—ì˜í•´ì„œë“ ì§€ ProFTPD는 수정ë ìˆ˜ 있으며, ë˜í•œ GNU 기반 하ì—서 ë¼ì´ì„¼ìŠ¤í™”ë¥¼ 할수가 있다.

ProFTPD는 안전하고 설정가능한 FTP 서버를 가지고픈 바램, Apache ì›¹ì„œë²„ì˜ ë§¤ë ¥ì ì¸(?) 관리ì´ìƒìœ¼ë¡œ 성장했다. unix(ë˜ëŠ” 비슷한)ì—서 ìš´ì˜ë˜ëŠ” 매우 ì œí•œëœ ìˆ«ìžì˜ ftp ì„œë²„ë“¤ì´ ìžˆë‹¤. 통ìƒì ìœ¼ë¡œ 사용ë˜ëŠ” 서버는 ê±°ì˜ ëŒ€ë¶€ë¶„ wu-ftpd ì´ë‹¤. wu-ftpdê°€ 훌륭한 ì„±ëŠ¥ì„ ì œê³µí•˜ê³  ì¼ë°˜ì ìœ¼ë¡œëŠ” ì¢‹ì€ ìž‘í’ˆì´ì§€ë§Œ ìµœê·¼ì˜ Win32 FTP 서버들ì—서 보게ë˜ëŠ” 다양한 ê¸°ëŠ¥ë“¤ì´ ì—†ê³  좋지 ì•Šì€ ë³´ì•ˆì—­ì‚¬ë¥¼ 가지고 있다. ê°œì¸ì ìœ¼ë¡œ, 나(ProFTPD 프로ì íŠ¸ë¥¼ 시작한 사람)는 벌레를 잡고 ê¸°ëŠ¥ë“¤ì„ ì¶”ê°€í•˜ê¸° 위해 wu-ftpd를 뜯어보는 ê²ƒì— ë§¤ìš° ë§Žì€ ì‹œê°„ì„ ì†Œë¹„í–ˆë‹¤. 불행히ë„, ì›í•˜ëŠ” 설정성과 ê¸°ëŠ¥ë“¤ì„ êµ¬í˜„í•˜ê¸° 위해서는 완전히 다시 만들어야 한다는 í•„ìš”ì„±ì´ ë„ˆë¬´ë„ ì¼ì° 확연해졌다. ProFTPD는 다른 ì–´ë–¤ ì„œë²„ì˜ ê°œì¡°íŒë„ 아니며, 처ìŒë¶€í„° ë까지 완전히 ë…립ì ì¸ 소스 체계ì´ë‹¤.

ì„¤ì •ì„±ì˜ ëŒ“ê°€ë©´ì—서 wu-ftpd와 ìŒë²½ì„ ì´ë£¨ë©´ì„œ 경량급ì´ê³  안전하게 만들어진 다른 FTP ì„œë²„ë“¤ì´ ìžˆë‹¤. 예를 들ìžë©´, Troll FTP는 wu-ftpd보다 꽤 안전하며 ìžì›ì„ ëœ ìž¡ì•„ë¨¹ëŠ” 훌륭한 FTP ë°ëª¬ì´ë‹¤. 불행히ë„, ì´ë„˜ì€ 기초ì ì¸ FTP 서비스ì—는 ê¼­ 들어맞지만, ë” ë³µìž¡í•œ FTP 사ì´íŠ¸ë“¤ì—서 요구ë˜ëŠ” ê¸°ëŠ¥ë“¤ì„ ì œê³µí•˜ì§€ 않는다.

ProFTPD는 다ìŒì˜ ê¸°ëŠ¥ë“¤ì„ ì œê³µí•œë‹¤( 현재 ì´ë ‡ë‹¤ëŠ” 것ì´ê³  계íšëœ ë” ë§Žì€ ê²ƒë“¤ì´ ê³§!):

Apache 웹 서버를 사용해 본 관리ìžë¼ë©´ 누구나 ì§ê´€ì ìœ¼ë¡œ ì´í•´í•  수 있는 지시ìžì™€ 지시그룹으로 ëœ ë‹¨ í•˜ë‚˜ì˜ ì„¤ì • í™”ì¼.
Apacheì˜ ".htaccess"와 비슷한 ê° ë””ë ‰í† ë¦¬ì˜ ".ftpaccess" 설정.
쉽게 설정할 수 있는 다중 ê°€ìƒ FTP 서버와 anonymous FTP 서비스.
시스템 ë¶€í•˜ì— ë”°ë¼ stand-alone ë˜ëŠ” inetd 중ì—서 골ë¼ì„œ ìš´ì˜ë˜ë„ë¡ ë§Œë“¤ì–´ì§.
anonymous FTPì˜ root 디렉토리ì—는 특별한 디렉토리 구조나 시스템 í™”ì¼ì´ ì—†ì–´ë„ ë¨.
SITE EXEC ëª…ë ¹ì´ ì—†ë‹¤. í˜„ëŒ€ì˜ ì¸í„°ë„· 환경ì—서 그런 ëª…ë ¹ì€ ë³´ì•ˆë©´ì—서 악몽ì´ë‹¤. ProFTPD는 어떠한 경우ì—ë„ ì–´ë–¤ 외부 ëª…ë ¹ë„ ì‹¤í–‰í•˜ì§€ 않는다. 검사를 위해 관리ìžì—게 소스가 제공ëœë‹¤ (í•­ìƒ ì œê³µë  ê²ƒì´ë‹¤).
유닉스 ìŠ¤íƒ€ì¼ í¼ë¯¸ì…˜ì— 기초한 숨겨지는 디렉토리나 í™”ì¼ë“¤ ë˜ëŠ” 유저/그룹 소유권.
"root" ê¶Œí•œì„ ë”°ë‚¼ 수 있는 ê³µê²©ì˜ ê¸°íšŒë¥¼ 줄ì´ê¸° 위해 stand-alone 모드ì—서는 íŠ¹ê¶Œì´ ì—†ëŠ” ìœ ì €ë„ ìš´ì˜ì„ í•  수 있ë„ë¡ ì„¤ì •ê°€ëŠ¥. 주ì˜: ì´ ê¸°ëŠ¥ì€ Unix ì‹œìŠ¤í…œì˜ ëŠ¥ë ¥ì— ê¸°ì´ˆí•œë‹¤.
기ë¡í•˜ê¸°, utmp/wtmp ì§€ì›. 기ë¡í•˜ê¸°ëŠ” wu-ftpd 표준과 호환ì´ë©° í™•ìž¥ëœ ê¸°ë¡í•˜ê¸°ë„ 가능하다.
shadow 암호 ì§€ì›, ë§Œë£Œëœ ê³„ì •ë“¤ ì§€ì› í¬í•¨.
그럼 지금까지 proftpdì— ëŒ€í•œ ê²ƒì„ ì•Œê²Œë˜ì—ˆê³  ì´ì œ ftp서버를 관리하는 proftpd.conf íŒŒì¼ ì„¤ì •ì„ ì•Œì•„ë³´ë„ë¡ í•˜ìž. ìš°ì„  proftpdê°€ 깔려있는지 확ì¸ì„ 한다..없으면 CD-ROMì´ë‚˜ ê° ë°°í¬íŒì˜ FTPì—서 RPM으로 다운로드하든지
http://www.profrpd.org, ftp://linux.sarang.net/ì— ì ‘ì†í•´ì„œ 소스나 RPM으로 다운로드하여 설치 하ë„ë¡ í•œë‹¤. 설치가 다 ë˜ì—ˆìœ¼ë©´ ì´ì œ 본격ì ì¸ proftpd 설정 파ì¼ë“¤ì„ 보기로 한다.

# cd /etc

#vi proftpd.conf

ServerName "Accel Linux Default Installation"

# ServerTypeì€ Server를 standalone mode로 할것ì¸ì§€ inet mode로 할것
# ì¸ì§€ë¥¼ 정한다. standalone mode는 ì´ë¯¸ ìƒì„±ëœ 프로쎄스를 복사해서 ìžì‹ 프로세스를 ìƒì„±í•˜ëŠ”

#ì´ë‹¤. inet mode는 ì•„ 예 처ìŒë¶€í„° 프로쎄스를 ìƒì„±í•œë‹¤. default로 inetd mode로 한다. standalone #mode í•  경우 아래 MaxInstances 지시ìžì˜ 주ì„ì„ í•´ì œ 한다.
# inetd mode로 ìž‘ë™ì„ í•  경우ì—는 /etc/inetd.conf중ì—서
# ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a
# í–‰ì„ ì•„ëž˜ì™€ ê°™ì´
# ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd
# ìˆ˜ì •ì„ í•´ 주고 Inet demonì„ ìž¬ 실행 í•´ 줘야 한다. Inet demonì€ ë³´í†µ 센드메ì¼, 아파치 웹서버는 #inet ìŠˆí¼ ì„œë²„ì˜ ê´€ë¦¬ë¥¼ 받지 않고 ë…립ì ìœ¼ë¡œ 실행ëœë‹¤. 왜ëƒí•˜ë©´, ì´ë“¤ì˜ 서비스는 매우 빈번하게

#요청ë˜ë¯€ë¡œ ë°˜ì‘ì‹œê°„ì´ ë¹¨ë¼ì•¼ 한다. 사실, inetdìŠˆí¼ ì„œë²„ë¥¼ 거치는 서비스는 ë…립형 서버

#실행방법보다 ë°˜ì‘ì‹œê°„ì´ ëŠë¦¬ë‹¤. 그러나 ìžêµ¬ 사용하지 않는 서비스 ë°ëª¬ì„ ê³„ì† ë„어놓는 ê²ƒì€ ë‚­ë¹„#ì´ë‹¤. inetdì—관리하는 ì„œë²„ë“¤ì€ ëŒ€ë¶€ë¶„ in.ì´ë¼ëŠ” ì´ë¦„으로 시작하는 파ì¼ëª…ì„ ê°€ì§€ë©°,

#/usr/sbin ë””ë ‰í† ë¦¬ì— ìœ„ì¹˜ 한다

ServerType standalone
DefaultServer on

# ServerTypeì´ standaloneì´ë©´ ì´ í•­ëª©ì˜ ì£¼ì„ì„ í’€ì–´ 줘야 한다.
# inetd로 ìž‘ë™ì„ 시킬시ì—는 /etc/servicesì—서 port를 지정한다.
Port 21

# root loginì„ í—ˆë½í• ì§€ì˜ 여부를 지정한다. PAM modules를 사용한다면
# 먼저 /etc/proftpd/conf/ftpusersì—서 root를 삭제해야 한다. 왜ëƒë©´ root는 모든 권한으로 다 ë˜ì—ˆê¸° ##ë•Œë¬¸ì— root로 들어와 ìžë£Œë¥¼ 삭제할 수가 있어서 root user를 제거한다.
#

RootLogin off

# Global sectionì€ proftpdì˜ ì „ì²´ì ì¸ ì„¤ì •ì— ëª¨ë‘ ì ìš©ì‹œí‚¨ë‹¤.
<Global>
# groupê³¼ world writable로 부터 새로운 dirê³¼ fileë“¤ì„ ìƒì„±í•˜ëŠ” 것ì„
# 막기위하여 기본ì ìœ¼ë¡œ umask는 022로 ì„¤ì •ì„ í•œë‹¤.
#umask는 새로 ìƒì„±ëœ 디렉토리나 파ì¼ì— 대해서 í¼ë¯¸ì…˜ì„ 기본ì ìœ¼ë¡œ ì ìš©ì‹œí‚¨ë‹¤. 즉 Globalì—서 #umask 022로 설정ë˜ì–´ 있으므로 Anonymous ê°€ ì ‘ì†í•˜ì—¬ 새로 ìƒì„±ì‹œí‚¬ 수 있는 ë””ë ‰í† ë¦¬ì— ëŒ€í•´ì„œ #755í¼ë¯¸ì…˜, 그리구 파ì¼ì— 대해서는 644ì˜ í¼ë¯¸ì…˜ì„ 준다. ìž ê¹ ë””ë ‰í† ë¦¬ì˜ ì†Œìœ ìžì— 관해서ë„

#ìƒê°í•´ë³´ìž. Anonymousê°€ 새로 ìƒì„±ëœ 디렉토리가 755ì´ë¯€ë¡œ ì´ ë””ë ‰í† ë¦¬ì˜ ì†Œìœ ìžëŠ” root나 다른 #userê°€ 아니고 "ftp"소유ìžê°€ ëœë‹¤. 즉 UserAlias Anonymous ftpì´ë¯€ë¡œ 모든 Anonymousì— ëŒ€í•´ì„œ

#다른 Anonymosê°€ ìƒì„±ì‹œí‚¨ 디렉토리나 파ì¼ì„ 지우거나 바꿀 수 있다.

Umask 022

# PAM module 사용여부 (/etc/pam.d/ftp가 필요하다)
# /usr/doc/proftpd-1.2.0pre5/README.PAM 를 참조하ë¼
#
#AuthPAMAuthoritative on
</Global>

# íšŒì„ ì˜ Bandwidth를 특정 ì†ë„로 ì œí•œì„ í•œë‹¤.
#RateReadBPS 256
#RateReadFreeBytes 5120
#RateReadHardBPS on


# ì ‘ì† ëŒ€ê¸° ì‹œê°„ì„ ì„¤ì •í•œë‹¤. user ê°€ ì ‘ì†í›„ 아무 ìž‘ë™ë„ 안할때 ì¼ì • 시간후ì—
# ì ‘ì†ì´ 종료ë˜ê²Œ 한다.ì‹œê°„ì€ ì´ˆë¡œ 계산한다.
TimeoutIdle 300

# DeferWelcome 는 clientê°€ ì¸ì¦ì„ 하기 ì „ì— servernameì„ display하는
# ê²ƒì„ ë°©ì§€í•œë‹¤.
DeferWelcome off

# 'welcome.msg는 loginì‹œì— ë³´ì—¬ì§€ê³ , 'message'는 ê° í•˜ìœ„ ë””ë ‰í† ë¦¬ì— ì ‘ì†
# í–ˆì„때 보여지게 ëœë‹¤.


# *메시지 파ì¼ì— í¬í•¨ë˜ëŠ” Magic Cookie 문ìžì—´ ( 참고사항) #

cookies
ì˜ ë¯¸

%C
í˜„ìž¬ì˜ ìž‘ì—… 디렉토리

%E
Ftpaccessì— ì •ì˜ ëœ ë©”ì¸íŠ¸ë„ŒìŠ¤ 담당ìžì˜ e-mail주소

%F
CWD íŒŒí‹°ì…˜ì˜ ì—¬ìœ  공간(Kilobytes)

%L
로컬 호스트명

%M
ì´ í´ëž˜ìФì—서 í—ˆê°€ëœ ìµœëŒ€ 사용ìžìˆ˜

%N
ì´ í´ëž˜ìŠ¤ì˜ í˜„ìž¬ 사용ìžìˆ˜

%R
ì›ê²© 호스트명

%T
지역 시간(Thu Nov 15 17:12:42 1990 형ì‹)

%u
RFC 931 ì¸ì¦(authentication)ì„ í†µí•´ ê²°ì •ëœ ì‚¬ìš©ìžëª…

%U
로그ì¸ì‹œì— 주어진 사용ìžëª…


DisplayLogin welcome.msg
DisplayFirstChdir .message

# DoS ê³µê²©ì„ ë§‰ê¸° 위해, ìžì‹ processì˜ maximun number를 30으로 설정한다.
# 만약 30ì´ìƒì˜ ì ‘ì†ì„ í—ˆë½í•  필요가 있다면 간단하게 ì´ ì¹˜ìˆ˜ë¥¼ ì¦ê°€ì‹œí‚¤ë„ë¡
# 한다. ì´ê²ƒì€ ì˜¤ì§ standalone modeì—서만 가능하다. inetd modeì—서는
# service 당 maximun number를 제한 하는 ê²ƒì„ í—ˆë½í•˜ëŠ” inetd serverì—서
# ì„¤ì •ì„ í•´ì•¼ 한다.(xintd 역시 마찬가지 ì´ë‹¤)
# MaxInstances 30

User nobody
Group nobody

# ì¼ë°˜ì ìœ¼ë¡œ fileë“¤ì„ overwrite를 가능하게 한다.
<Directory /*>
AllowOverwrite on
</Directory>

# ls ëª…ë ¹ì–´ì˜ -a option으로 hidden fileì„ ë³¼ìˆ˜ 있게 한다.
# LsDefaultOptions "-a"
#Anonymous user로 ë“¤ì–´ì˜¨ëŠ ì„¤ì •ë¶€ë¶„
<Anonymous ~ftp>
User ftp
Group ftp

# Anonymous userê°€ ftp로 접근하여 shellì˜ ê¶Œí•œì„ ì–»ëŠ” 것ì„
# 방지한다.
RequireValidShell off

# Anonymous ì ‘ê·¼ì„ í• ë•Œ 특정 password를 지정할수 있다.
# 단 ìœ„ì˜ User 지시ìžì˜ nameì´ passwd fileì— ë“±ë¡ì´ ë˜ì–´ì ¸
# 있어야 한다. ì´ ì§€ì‹œìžê°€ onì¼ ê²½ìš° ì´ë©”ì¼ ì£¼ì†Œë¡œ loginì„
# 할수 없다.
# AnonRequirePassword on
#
#ShowSymlink==>심벌릭 ë§í¬ë¥¼ 보여주는 설정ì´ë‹¤. ê¸°ë³¸ì„¤ì •ì€ Anonymousê°€ ì ‘ì†í•œ 경우ì—는 off로 ë˜ì–´ 있고, 기타계정 사용ìžê°€ ì ‘ì†í• ë•ŒëŠ” on으로 설정ë˜ì–´ 있다. ì „ì²´ì— í—ˆìš©í•˜ê³  on으로 한다..

#ShowSymlinks off
# User name "ftp"로 anonymous loginì„ í• ìˆ˜ 있ë„ë¡ í•œë‹¤
UserAlias anonymous ftp

<Limit LOGIN>


AllowAll
</Limit>
# anonumous로 user로 들어오는 ftpì„œë²„ì˜ ë©”ì‹œì§€ë¥¼ 보여주는 ê³³ì´ë‹¤..ìœ—ì— ì°¸ê³ ì‚¬í•­ 참고한다.
DisplayLogin welcome.msg
DisplayFirstChdir .message

# 최대 ì ‘ì† ì¸ì›ìˆ˜ë¥¼ 지정한다.(임으로 지정할 수 ê°€ 있다.)
MaxClients 10

# í•˜ë‚˜ì˜ í˜¸ìŠ¤íŠ¸ë¡œ 부터 ë™ì‹œì— 접근할수 있는 수를 지정한다.
# ì•„ëž˜ì˜ ê¸°ë³¸ 설정으로는 í•˜ë‚˜ì˜ í˜¸ìŠ¤íŠ¸ì—서 í•œë²ˆì˜ ì ‘ê·¼ë§Œ 허용한다.
MaxClientsPerHost 3 "Sorry, one connection allow per one host"

# ì†Œìœ ê¶Œì´ rootì¸ fileì´ë‚˜ directoryë“¤ì„ ë³´ì—¬ì£¼ì§€ 않는다
#HideUser root

# ê·¸ë£¹ê¶Œí•œì´ rootì¸ fileì´ë‚˜ directoryë“¤ì„ ë³´ì—¬ì£¼ì§€ 않는다
#HideGroup root
# upload/download ë¹„ìœ¨ì„ ì§€ì›í•œë‹¤.
# /usr/doc/proftpd-1.2pre7/mod_ratio.c를 참조하ë¼
#
# Ratios on
# HostRatio foobar.net 100 10 5 100000

<Limit WRITE>
DenyAll
</Limit>

# Upload directory, allow upload and mkdir, deny download.
# Upload directory 설정ì´ë‹¤. upload와 mkdirì€ í—ˆë½í•˜ë©°,
# download는 거절한다
#
<Directory incoming>
AllowStoreRestart on ===>í´ë¼ì´ì–¸íЏì—서 서버로 íŒŒì¼ ì „ì†¡
AllowRetrieveRestart on ==>서버ì—서 í´ë¼ì´ì–¸íŠ¸ë¡œ 파ì¼ì „송
==>ì„¤ì •ì„ on으로 하면 ì´ì–´ë°›ê¸°ê°€ ëœë‹¤.

<Limit READ>
DenyALL
</Limit>
<Limit STOR MKD>
AllowALL
</Limit>
</Directory>
# 사용ìžê°€ 접근하기를 ì›í•˜ì§€ 않는 private directory
# <Directory logs>
# <Limit READ WRITE DIRS>
# DenyAll
# </Limit>
# </Directory>

</Anonymous>

#ê°€ìƒ ì„œë²„ FTP만드는 ì„¤ì •ì„ í•˜ê² ë‹¤. VirtualHost ì˜ ì£¼ì†ŒëŠ” 네임서버ì—서 지정해주어야 한다.

<VirtualHost ftp.virtual.com>

ServerName "Virtual.com's FTP Server"

#들어오는 ì¸ì› 제한

MaxClients 10

#로깅 ì‹œë„ íšŸìˆ˜

MaxLoginAttempts 1

#DeferWelcome on

#guest loginë§Œ í—ˆë½í•˜ê¸°ë¥¼ 위하여

#nomail user loginì„ ì œí•œí•œë‹¤.

<Limit LOGIN>

DenyALL

</Limit>

##홈디렉토리 ë°–ì— ì›€ì§ì´ì§€ 못한다.모든계정ìžì—서 !adminì€ admin 그룹ì„제외하고는 홈디렉토ì—서만 움ì§ì¸ë‹¤.
DefaultRoot ~ !admin



#다ìŒ, ìžì‹ ë“¤ì˜ web siteë“±ì— ê°œì¸ì ìœ¼ë¡œ 접근하기 위한 customerì— ì˜í•´ 사용ë˜ëŠ” "guest"ê³„ì •ì„ ë§Œ#든다. 여기서 useradd로 등ë¡í•œ cust1ì˜ ê³„ì •ì„ ì„¤ì •í•˜ëŠ” 부분ì´ë‹¤.


<Anonymous ~cust1>

User cust1

Group cust1

#패스워드를 확ì¸í•œë‹¤.

AnonRequirePassword on

<Limit LOGIN>

AllowAll

</Limit>

#숨기고ìží•˜ëŠ” 사용ìžì™€ 그룹

HideUser root

HideGroup root

#사용ìžê°€ 접근하기를 ì›í•˜ì§€ 않는 private directory

<Directory logs>

<Limit READ WRITE DIRS>

DenyAll

</Limit>

</Directory

</Anonymous>

</virtualHost>

#primary addressì—서 ìž‘ë™ì„ 하지만 port는 4000ë²ˆì„ ì‚¬ìš©í•˜ëŠ” ë˜ ë‹¤ë¥¸ ê°€ìƒ í˜¸ìŠ¤íŠ¸ì´ë‹¤. acess는 하#ë‚˜ì˜ anonymous loginë§Œ ëœë‹¤.

<virtualHost our.ip.address>

ServerName "Our private FTP server"

Port 4000

Umask 027

<Limit LOGIN>

DenyAll

</Limit>

<Anonymous /usr/local/ftp/vitual/a_customer>

User ftp

Group ftp

UserAlias anonymous ftp

<Limit LOGIN>

AllowALL

</Limit>

<Limit WRITE>

DenyAll

<Limit>

<Directory incoming>

<Limit WRITE>

AllowAll

</Limit>

</Directory>

<Anonymous>
</VirtualHost>

:wq!





ìŒ ì´ì œ proftpd.conf 파ì¼ë“¤ì„ 보았다..사용ìžì˜ ìž…ë§›ì— ë§›ì— ìˆ˜ì •í•˜ì˜€ìœ¼ë©´ ê¼­ proftpdë°ëª¬ì„ ê¼­ 재실행 해야한다..

# etc/rc.d/init.d/proftpd restart

ì´ì œ proftpd.conf파ì¼ë“¤ì„ 보았다.그러면 ì´ì œ ftp서버를 관리하는 ë¶€ë¶„ì„ ë³´ë„ë¡ í•˜ìž.

ftpë„ ë³´ì•ˆì„ ìœ„í•´ì„œëŠ” ì¼ì •한 모니터ë§ì´ 피요하고, ê·¸ê²ƒì˜ ê°€ìž¥ 단순하고 유용한 ìž‘ì—…ì€ ë¡œê·¸ 파ì¼ì„ ì½ëŠ” 것과 í˜„ìž¬ì˜ ì ‘ì† ìƒíƒœë¥¼ ì ê²€í•´ 보는 것ì´ë‹¤. 그러므로 ftp서버를 관리하기 위한 ëª…ë ¹ì–´ë“±ì„ ì•Œì•„ë³´ê¸°ë¡œ 한다.

[proftpì˜ ì¤‘ìš” 파ì¼ë“¤]

/usr/sbin/proftpd : proftpd는 전문ì ì¸ File Transfer Protocol (FTP) server daemonì´ë‹¤. server는 FTP serviceê°€ ì´ë£¨ì–´ì§€ê¸° 위해 ì ‘ì† ë  ë•Œë§ˆë‹¤, ë˜ëŠ” stand-alone daemon으로서 실행ë˜ëŠ” ê²ƒì„ ëŒ€ì²´ë¡œ ë  ë–„, Internet "super-server" inetdì— ì˜í•˜ì—¬ 시작ëœë‹¤. proftp ê°€ standalone mode로 ìž‘ë™í•  때, 그리고 SIGHUP를 ë°›ì„ ë–„ proftp는 config fileì„ ë‹¤ì‹œì½ì„ 것ì´ë‹¤.
/usr/sbin/ftpwho : ì´ ëª…ë ¹ì„ ë‚´ë¦¬ë©´ ftpìœ ì €ë“¤ì˜ í˜„ìž¬ process정보를 보여준다. 그래서 모든 proftpdì— ì—°ê²°ë˜ì–´ 있는 processì˜ ì •ë³´ë¥¼ 보야주며, ê° serverì˜ ì ‘ì†ë˜ì–´ 있는 수를 보여준다. inetd로부터 ìƒì„±ëœ proftpd sessionë“¤ì€ standalone serverì— ì˜í•´ ìƒì„±ëœ 것들과는 구분하여 countëœë‹¤.
/usr/bin/ftpcount : ì´ê²ƒì€ ê° proftpd serverì„¤ì •ì— ì ‘ì†ë˜ì–´ 있는 userì˜ ìˆ˜ë¥¼ 보여준다. ì´ê²ƒì€ proftpd.conf fileì— ì •ì˜ ë˜ì–´ 있는 ê° server와 virtualhost/anonymos ì„¤ì •ì— ì ‘ì†í•´ 있는 현재 숫ìžë¥¼ 보여준다. inetdì— ì˜í•´ ìƒì„±ëœ ì ‘ì†ì€ proftpd standalone serverì— ì˜í•´ ìƒì„±ëœ 것들로부터 구분ë˜ì–´ 카운트ëœë‹¤.
/usr/sbin/ftpshut : ì§€ 정한 ì‹œê°„ì— ëª¨ë“  proftp serverë“¤ì„ shutdown한다. ì´ ëª…ë ¹ì€ ìžë™ìœ¼ë¡œ shutdown ì§„í–‰ì„ ì¤€ë¹„í•˜ê³ ,ìžë™ìœ¼ë¡œ 현재 proftpd connectionì„ ëŠì„ 수 있으면 ìƒˆë¡œì€ ì—°ê²°ì„ ê±°ë¶€í•˜ë„ë¡ í•  수 있다. ëª…ë ¹ì€ shutdownì´ ìž„ë°•í•¨ì„ proftpd processì— ì•Œë¦¬ê¸° 위하여 /etc/shutmsg와 ê°™ì€ ì»¨íŠ¸ë¡¤ì„ ì‚¬ìš©í•  수 있다. 주ì˜í• ì ì€ proftpd server는 master demonì´ standalone mode로 ë™ìž‘í•  때 ftpshutì„ í†µí•´ì„œë§Œ shutdownì„ í•  수가 있다.Serverê°€ inetd mode로 ì‹¤í–‰ì´ ëœë‹¤ë©´ ftpshutì— ì˜í•´ ìƒì„±ëœ shutdown message fileì„ ì‚¬ìš©í•  수 있다.하지만 현재 ë™ìž‘ì¤‘ì¸ server는 chrootë  ê²ƒì´ë©´ , shutdown message control fileì„ ì½ì§€ 못한다.
/var/log/xferlog : xferlog fileì€ FTP server daemon(ftpd(8))ì˜ logging 정보를 í¬í•¨í•œë‹¤. ì´ fileì€ ë³´í†µ /usr/admì—서 ë³¼ 수 있으나, ftpd(8)ì˜ optionì„ ì‚¬ìš©í•¨ì— ë”°ë¼ ì–´ë””ë“ ì§€ ìœ„ì¹˜ë  ìˆ˜ 있다.실제로그 파ì¼ì˜ 예를 들겠다.
SUN NOV 14 00:27:54 2000 0 166.104.37.130 3495 /usr/local/apache/htdocs/h3.htm a_ir webmaster ftp 0 *

Mon Nov 15 20:42:19 2000 0 166.104.53.121 304422 /home/xenus/a.zip b_ir xenus ftp 0 *

설명: Mon Nov 15 20:42:19 2000 =>current-time : "DDD MMM dd hh:mm:ss YYYY"형ì‹ì˜ local시간ì´ë‹¤. DDD는 ì£¼ì¤‘ì˜ ìš”ì¼ì„ ,MMMì€ ì›”ì„,dd는 날짜를, hh는 시를,mm ì€ ë¶„ì„, ss는 초를 ,그리고 YYYY는 ì—°ë„를 나타낸다.

0 => transfer-time : ì „ì†¡ì„ ìœ„í•œ ì´ ì‹œê°„ì„ ë§í•˜ë©° ì´ˆ 단위로 표시한다.

166.104.37.130=> ì›ê²©hostì´ë¦„ì´ë‹¤.

304422 => byte ë‹¨ìœ„ì˜ ì „ì†¡ëœ file sizeì´ë‹¤.

/home/xenus/a.zip=> ì „ì†¡ëœ íŒŒì¼ ì´ë¦„ì´ë‹¤.

a 는 ascii ,b는 binary전송들 뜻한다.

special-action-flag : ì–´ë–¤ 특정한 actionì´ ë°œìƒí•˜ëŠ” ê²ƒì„ ë‚˜íƒ€ë‚´ëŠ” 하나 ë˜ëŠ” ê·¸ ì´ìƒì˜ character flag ì´ë‹¤. ì•„ëž˜ì— ë‚˜ì—´ëœ ê²ƒ ì¤‘ì˜ í•˜ë‚˜ ë˜ëŠ” ê·¸ ì´ìƒìœ¼ë¡œ 사용할 수 있다.

C file ì€ ì••ì¶•ë˜ì–´ 있다. U fileì€ ì••ì¶•ì´ ë˜ì–´ 있지 않다. T fileì´ tar로 묶여 있다. _ 아무런 ë™ìž‘ì´ ë°œìƒí•˜ì§€ 않았다.

direction ì „ì†¡ì˜ ì§€ì‹œë‹¤.


posted at 2007ë…„ 03ì›” 28ì¼ 15시 14ë¶„ | temp... | Trackback0 | Comment

2007ë…„ 03ì›” 26ì¼ 17시 12ë¶„
by 히스피

í¬ì•ˆí•œ 알람시계들.!34


ì‚¬ìš©ìž ì‚½ìž… ì´ë¯¸ì§€
ì‚¬ìš©ìž ì‚½ìž… ì´ë¯¸ì§€

ë‚˜ë„ í•˜ë‚˜ë§Œ 사죠 -_-;;
 



posted at 2007ë…„ 03ì›” 26ì¼ 17시 12ë¶„ | Etc... | Trackback0 | Comment

2007ë…„ 03ì›” 26ì¼ 16시 31ë¶„
by 히스피

진짜와 ê°€ì§œì˜ ì°¨ì´..30



가짜 : ì±…ìƒì— 온통 책으로 ë®ì—¬ìžˆë‹¤. ìžì„¸ížˆ ë³´ë©´ 웹부터 시스템 프로그래ë°ê¹Œì§€ ë™ë„¤ ì„œì  ê°™ë‹¤.  그런 ìžê¸° ì±…ìƒì„ ë³´ë©° ìžëž‘스러워 한다.
ì§„ì§œ : ì±…ìƒì— 담배재와 ìž¡ë™ì‚¬ë‹ˆë§Œ 굴러 다닌다.

가짜 : 모르는 ê²ƒì´ ìžˆì„ ë•ŒëŠ” 여기저기 관련 사ì´íŠ¸ì— Q&Aì— ì§ˆë¬¸ì„ ì˜¬ë¦¬ê³  ë‹µë³€ì„ ê¸°ë‹¤ë¦°ë‹¤.
ì§„ì§œ : 모르는 ê²ƒì´ ìžˆì„ ë•ŒëŠ” Q&A를 뒤져보고 없으면 깡으로 만든다.

가짜 : ì§œ 본 것보다 아는 게 ë” ë§Žë‹¤.
ì§„ì§œ : 아는 것보다 ì§œ 본 게 ë” ë§Žë‹¤.

가짜 : ì§ì—…ì„ ë¬¼ì–´ë³´ë©´ 프로그래머ë¼ê³  당당하게 ë§í•œë‹¤.
ì§„ì§œ : ì§ì—…ì„ ë¬¼ì–´ë³´ë©´ ìƒëŒ€ì— ë”°ë¼ '컴퓨터 하는 사람','소프트웨어 쪽 하는사람'  
    ìžê¾¸ ìžì„¸ížˆ 물어보면 '프로그램 짜는 사람' 등 프로그래머ë¼ëŠ” ë§ì„ 피한다.

가짜 : ë¶€íƒí•˜ë©´ ë­ë“ ì§€ 한다. 물론 ë까지 한다는 ë³´ìž¥ì€ ì—†ë‹¤.
ì§„ì§œ : ë¶€íƒí•˜ë©´ 곤란한 í‘œì •ì„ ì§“ëŠ”ë‹¤. ì–´ì©” 수 ì—†ì´ í•˜ê²Œ ë˜ë©´ 수단과 ë°©ë²•ì„ ì•ˆê°€ë¦¬ê³  ëì„ ë³¸ë‹¤.

가짜 : 컴퓨터 ê´€ë ¨ì€ ë­ë“ ì§€ 물어보면 모르는 게 없다. 아주 성ì˜ìžˆê²Œ 요목조목 설명해 준다.
ì§„ì§œ : 물어보면 아는 게 없다. 중요한 질문ì´ë‚˜ 확실히 아는 것만 간단하게 ë§í•œë‹¤.

가짜 : ë‹¤ë¥¸ì‚¬ëžŒì´ ìž˜ 공부하지 않는 분야를 ìµížˆë©´ ìžì‹ ì´ ê·¸ 분야 전문가가 ëœ ì¤„ 안다.

         그러나 ê¸°ìˆ ì„ ì œëŒ€ë¡œ ì¨ ë³´ì§€ëŠ” 못한다.
ì§„ì§œ : ë‹¤ë¥¸ì‚¬ëžŒì´ ìž˜ 공부하지 않는 분야는 쓸모가 없기 때문ì´ê¸°ì— ë°°ìš°ì§€ 않는다.

         반드시 필요하면 대강 배워서 ì“°ê³  잊어버린다.

가짜 : 시간만 나면 관련 ê²Œì‹œíŒ TIPì´ë‚˜ 강좌를 ì½ìœ¼ë©´ì„œ ì™¸ê³µì„ ì—°ë§ˆí•˜ì—¬ ìžëž‘하고 다닌다.
ì§„ì§œ : 시간 나면 ê°€ë”씩 ìžë£Œêµ¬ì¡°,알고리즘,ì¸ê³µì§€ëŠ¥í•™, ì˜ìƒì²˜ë¦¬í•™ë“± 개론서를 í›ì–´ 보면서

         ë‚´ê³µì„ ì—°ë§ˆí•œë‹¤. 누가 물어보면 논다고 한다.

가짜 : í´ëž˜ìŠ¤ë§Œ ì“°ë©´ OOP프로그램ì¸ì¤„ 안다.
ì§„ì§œ : 마ìŒë§Œ 먹으면 í”„ë¡œê·¸ëž¨ì„ ë¹„ì§€ì˜¤ë¡œë„ ì§¤ 수 있다.

가짜 : 100ë§Œí¼ ë°°ì›Œì„œ 10ë§Œí¼ ì“´ë‹¤.(C/C++/API/MFC/VB ë°”ì´ë¸”ì„ ì“¸ 수 ìžˆì„ ì •ë„로 알고

         ìžˆì–´ë„ í”„ë¡œê·¸ëž¨ì€ 1000줄ì´ìƒ 못짠다.)
ì§„ì§œ : 10ë§Œí¼ ë°°ì›Œì„œ 1000ë§Œí¼ ì“´ë‹¤.( if문만 ë°°ì›Œë„ ë§Œë“ ë‹¤.)

가짜 : ìžì‹ ì´ 프로그래ë°ì— ì†Œì§ˆì´ ìžˆë‹¤ê³  ìƒê°í•œë‹¤.
ì§„ì§œ : ìžì‹ ì€ 프로그래ë°ì— ì†Œì§ˆì´ ì—†ë‹¤ê³  ìƒê°í•œë‹¤.

         (입버릇처럼 때려 치울 ê±°ë¼ê³  하면서 부지런히 짠다.)

가짜 : 코딩할 때 타ìžì†ë„ê°€ 600타 ì´ìƒ 나오며 부지런히 친다.
ì§„ì§œ : 한참 담배피다 300타 ì´í•˜ ì†ë„로 ëª‡ìž ì¹˜ê³  ë˜ ë‹´ë°°í•€ë‹¤.

가짜 : 마지막 10%가 고비다.
ì§„ì§œ : ì²˜ìŒ 10%ê°€ 고비다.

가짜 : 빌게ì´ì¸ ,리누스,잡스등 IT유명ì¸ë“¤ì— ê´€ì‹¬ì´ ë§Žê³  때론 ë™ê²½í•œë‹¤.
진짜 : 아무 관심없다.

가짜 : 언제나 최신 ì»´í“¨í„°ì— ìµœê³ ê¸‰ 사양으로 유지하고 잡다한 부품ì´ë‚˜ 오버í´ëŸ­ 등ì—

         ê´€ì‹¬ì´ ë§Žë‹¤.
ì§„ì§œ : 컴파ì¼ëŸ¬ê°€ ëœ¨ëŠ”ë° ì§€ìž¥ 없으면 컴퓨터ì—는 관심 없다. 스피커ì—ë§Œ ê´€ì‹¬ì„ ê°€ì§„ë‹¤.

가짜 : 최ì ì— 작업 í™˜ê²½ì„ ìš”êµ¬í•œë‹¤. (조용하고, ë‚¨ì˜ ì‹œì„ ì´ ì•ˆë‹¿ê³  구ì„ì§„ ê³³ 등등..)
진짜 : 컴퓨터만 있으면 작업한다.

가짜 : 알고 있는 모든 í”„ë¡œê·¸ëž¨ì´ ë‹¤ 깔려있다. 깔면 다 사용할 수 있다고 ìƒê°í•œë‹¤.

         물론 ë‚˜ê°€ì„œë„ ê·¸ë ‡ê²Œ ë§í•˜ê³  다닌다. 윈ë„ìš° 테마나 바탕화면 ë“±ì— ì‹ ê²½ì„ ë§Žì´ ì“´ë‹¤.
진짜 : 아무 관심없다.

가짜 : 심심하면 ì¸í„°ë„·ì—서 특ì´í•œ í…Œí¬ë‹‰ 소스나 ì™„ì„±ëœ í”„ë¡œê·¸ëž¨ 소스를 구해서 구경하고

         누가 물어보면 ìžì‹ ì´ 짰다고 ë§í•œë‹¤.
ì§„ì§œ : 필요하지 않다면 ë‚¨ì˜ ì†ŒìŠ¤ì— ê´€ì‹¬ 없다.

가짜 : 가능한 한 ë‚¨ì´ ëª» 알아 보게 짠다. 물론 주ì„ë„ ì•ˆë‹¨ë‹¤.
ì§„ì§œ : 가능한 한 ë‚¨ì´ ì•Œì•„ë³´ê¸° 쉽게 짠다. 주ì„ì€ ê°€ë”씩 단다

가짜 : Q&A게시íŒì—서 조금ì´ë¼ë„ 들어 본 ì§ˆë¬¸ì´ ì˜¬ë¼ì˜¤ë©´ 다 아는듯 ë‹µë³€ì„ ë‹¨ë‹¤.
ì§„ì§œ : 게시íŒì„ 잘 ì´ìš©í•˜ì§€ 않는다.

가짜 : 온갓 유명 컴퓨터 서ì ê³¼ 잡지를 부지런히 사다 모ì€ë‹¤.
ì§„ì§œ : ê°€ë”씩 잡지나 한번씩 사고, ì ˆíŒë˜ì—ˆê±°ë‚˜ ì ˆíŒ ì§ì „ ì±…ì„ ì–´ë µê²Œ 구해다 본다.

가짜 : ì±…ì˜ ëª©ì°¨ì™€ ì•žì˜ ëª‡ 페ì´ì§€ë§Œ 본다. 그러면 ê·¸ ì±…ì„ ë‹¤ë´¤ë‹¤ê³  ìƒê°í•œë‹¤.
ì§„ì§œ : ëª©ì°¨ë„ ë³´ì§€ 않는다. ê°€ë”씩 ë’¤ì˜ ìƒ‰ì¸ë§Œ 살핀다.

가짜 : 가짜들 ë¼ë¦¬ 모ì´ë©´ 잘 ë  ì¤„ 안다.
ì§„ì§œ : 진짜들 ë¼ë¦¬ 모ì´ë©´ 잘 안ëœë‹¤.(가짜가 좀 ë¼ì–´ìžˆì–´ì•¼ 한다.)

가짜 : 가짜가 하는 ëª¨ìŠµì„ ë™ê²½í•˜ê³  ë”°ë¼í•˜ë ¤ê³  한다.
진짜 : 가짜처럼 살려고 노력한다.

가짜: ìžì‹ ì´ ì§„ì§œì¸ì¤„ 알고, ì§„ì§œë¼ê³  ë§í•œë‹¤.
ì§„ì§œ: ìžì‹ ì´ 가짜ì¸ì¤„ 알고, 조용히 있는다.


진짜와 가짜가 만나서 í”„ë¡œê·¸ëž˜ë° ì´ì•¼ê¸°ë¥¼ 하면....

가짜 : 입으로 í”„ë¡œê·¸ëž¨ì„ ì§ ë‹¤. (현란한 ì²¨ë‹¨ê¸°ìˆ ì€ ë‹¤ì¨ì„œ)
ì§„ì§œ : 머리로 다짜고 컴파ì¼ì‹œì¼œì„œ 컴파ì¼ëœ 결과만 ë§í•œë‹¤. ( if/forë§Œ ì¨ì„œ)

가짜 : VC를 조금ì´ë¼ë„ 하면 VB하는 ì‚¬ëžŒì€ ë‹¤ ìžê¸°ë³´ë‹¤ 프로그램 못 짜는 줄 안다.
ì§„ì§œ : 프로ì íŠ¸ì— ìµœì ì˜ 언어를 ì„ íƒí•œ 후 개발한다.(주특기는 있지만 특정 언어만 ì“°ì§€ 않는다.)

가짜 : 왠만하면 VC로 짠다. VB로 프로그램 짜고 있는 ì‚¬ëžŒì„ ë³´ë©´ VC몰ë¼ì„œ VB로 짜는 줄 안다.
진짜 : 왠만하면 VC 안쓰려고 노력한다.

가짜 : DirectX를 다 ìµížˆë©´ 게임 만들 수 ìžˆì„ ì¤„ 안다.
ì§„ì§œ : DirectX를 다 모른다. 그러나 필요하면 ê²Œìž„ì€ ë§Œë“ ë‹¤.
 

출처 : Tong - cjy1126ë‹˜ì˜ ìœ ë¨¸/엽기통


posted at 2007ë…„ 03ì›” 26ì¼ 16시 31ë¶„ | In Life.. | Trackback0 | Comment

2007ë…„ 03ì›” 26ì¼ 14시 22ë¶„
by 히스피

debian kernel update하기.11


debian 설치후를 보면
high memory ê°€ 꺼져있어서 1G ì´ìƒì„ ì¸ì‹ 못한다.
고로 몇가지 세팅하고 ì»¤ë„ ì—…ë°ì´íŠ¸ë¥¼..


netinst로 설치했ì„때 최소만 ê¹”ë ¤ìžˆê¸°ë•Œë¬¸ì— ì—¬ëŸ¬ê°€ì§€ íˆ´ì„ ì„¤ì¹˜í•´ì•¼.한다. (심지여gccë„..)
# apt-get install vim ssh kernel-source-2.6.8 make gcc kernel-package libncurses5-dev


보면 kernel-sources 가 /usr/src/로 다운받아져있다
ì••ì¶•ì„ í’€ê³  컴파ì¼ì„ 위해 ë§í¬ë¥¼ 건다.
#cd /usr/src
#tar xvjf kernel-source-2.6.8.tar.bz2
#ln -s kernel-source-2.6.8 linux
#cd linux



netinst ì— ì“°ë˜ kernel 2.6.8-2 ê³¼ ê±°ì˜ ë™ì¼ 커ë„ì„ ê¹”ê¸°ë•Œë¬¸ì—
config 를 고대로 쓰기로 하였다. 그리고 ì›í•˜ëŠ”ëŒ€ë¡œ íŒ¨ì¹˜ë° ëª¨ë“ˆì„
#cp /boot/config-2.6.8-2-386 ./.config
#make menuconfig


ì»¤ë„ ë©”ë‰´ë¥¼ 다 설정하고나서 ë°ë¹„안 ë°”ì´ë„ˆë¦¬ íŒŒì¼ ( = ì»´íŒŒì¼ ) 한다.
컴파ì¼ì´ ë나고 나면 revision대로 /usr/src/ì— header 와 imageê°€ 저장ëœë‹¤.
설치를 한다.
#make-kpkg --revision=1 binary-arch
hisfy:/usr/src# ls /usr/src | grep deb
kernel-headers-2.6.8_64_i386.deb
kernel-image-2.6.8_64_i386.deb
hisfy:/usr/src# dpkg -i kernel-headers-2.6.8_1_i386.deb
hisfy:/usr/src# dpkg -i kernel-image-2.6.8_1_i386.deb


설치하고 나면 lilo ì„¤ì •ì— ëŒ€í•´ ë‚˜ì˜¤ëŠ”ë° ì œëŒ€ë¡œ 안ë˜ëŠ”ë“¯..
그래서 수ë™ìœ¼ë¡œ 만들어줬다
# mkinitrd -o /boot/initrd.img-2.6.8_1 2.6.8_1
# ln -s /boot/initrd.img-2.6.8 /initrd.img


lilo ì„¤ì •ì„ í•´ì£¼ì—ˆë‹¤. 혹시모를 패닉ìƒíƒœë¥¼ 위해 delay와 timeoutì„ ì„ ì¶”ê°€í•˜ê³ 
확ì¸ì„ 위해 liloì •ë³´ 갱신하였다.

#vi /etc/lilo.conf
# lilo
Added Linux *
Added LinuxOLD

# reboot

..ë..


posted at 2007ë…„ 03ì›” 26ì¼ 14시 22ë¶„ | In Linux.. | Trackback0 | Comment

2007ë…„ 03ì›” 23ì¼ 00시 05ë¶„
by 히스피

개발ìžë¼ë©°?. 213


ì‚¬ìš©ìž ì‚½ìž… ì´ë¯¸ì§€


posted at 2007ë…„ 03ì›” 23ì¼ 00시 05ë¶„ | In Life.. | Trackback0 | Comment

2007ë…„ 03ì›” 21ì¼ 17시 41ë¶„
by 히스피

Custom Debian installer with Areca suport18


ë°ë¹„안ì—서 custom Debian netinst 만들기!

> PDF문서 <


posted at 2007ë…„ 03ì›” 21ì¼ 17시 41ë¶„ | temp... | Trackback0 | Comment

2007ë…„ 03ì›” 21ì¼ 15시 11ë¶„
by 히스피

Debian GNU Linux ì—서 Kernel compile19




1. ì»¤ë„ êµ¬í•˜ê¸°

   -
ftp.kernel.comì—서 /pub/linux/kernel ì—서 받고 ì‹¶ì€ ë²„ì ¼ì„ ë°›ìŒ.
     ì••ì¶• í¬ë©§ì€ tar.gz ì´ë‚˜ tar.bz2 í¬ë©§ìœ¼ë¡œ 다운 ë°›ìŒ.
   - /usr/src 디렉토리 아래ì—서 ì••ì¶•ì„ í’€ì–´ 놓ìŒ.
     tar.bz2ì€ tar xjvf kernel-source-x.x.x.tar.bz2
     tar.gzì€ tar zxvf kernel-source-x.x.x.tar.gz
   - ì••ì¶•ì´ í’€ë¦¬ë©´ ì••ì¶•ì´ í’€ë¦° 디렉토리를 /usr/src/linux 로 심볼릭 ë§í¬ë¥¼ 걸어 ì¤ë‹ˆë‹¤.

 

2. ë°ë¹„안ì—서 ì»¤ë„ ì»´íŒŒì¼ì„ 하기 위한 패키지 설치

   - kernel-package : 커ë„ì„ ë°ë¹„안ì‹ìœ¼ë¡œ ì»´íŒŒì¼ í•˜ì—¬ 패키지 형태로 ë§Œë“œëŠ”ë° í•„ìš”í•œ

                               프로그램 ë° ìŠ¤í¬ë¦½íŠ¸ë“±ì˜ íŒ¨í‚¤ì§€ ìž„.

   - libncurses[버전명]-dev : make menuconfig를 ì´ìš©í•˜ì—¬ ì»¤ë„ ì„¤ì •ì„ í•  수 있는 패키지

   * ìœ„ì˜ íŒ¨í‚¤ì§€ë¥¼ dselect ë“±ì„ ì´ìš©í•˜ì—¬ 설치함.


3. ì»¤ë„ ë§Œë“¤ê¸°

   - ì•„ëž˜ì˜ ëª…ë ¹ì„ ìˆœì„œ 대로 실행 함.

     # make-kpkg clean  --> 기존 컴파ì¼ì„ 초기화

     # make menuconfig  --> ì»¤ë„ ì˜µì…˜ë“±ì„ ì„¤ì • 함 (다른 ìžë£Œ 참조 바람)

     # make-kpkg --revision=x.x binary-arch  --> ê°™ì€ ì»¤ë„ì´ë¼ë„ 여러번 ì»´íŒŒì¼ í•  수 있ìŒ

                                                                     으로 리비젼 번호를 주면 좋ìŒ.

        여기ì—서 ë°ë¹„안 패키지 형ì‹ìœ¼ë¡œ 커ë„ì´ ë˜ë‹ˆê¹Œ ì•„ëž˜ì˜ í™”ì¼ì„ 확ì¸í•¨.

        /usr/src/kernel-headers-x.x.x_i386.deb

        /usr/src/kernel-image-x.x.x_i386.deb

        * x.x.x í•´ ë†“ì€ ê²ƒì€ kernel ë²„ì „ì„ ì´ì•¼ê¸° 함.


4. ë°ë¹„안 패키지 ì»¤ë„ ì„¤ì¹˜

   - /usr/src 디렉토리ì—서 ì•„ëž˜ì˜ ëª…ë ¹ì„ ì‹¤í–‰í•¨.

     # dpkg -i kernel-headers-x.x.x_i386.deb

     # dpkg -i kernel-image-x.x.x_i386.deb

  - lilo ì ìš©

     lilo ì ìš©ì„ 묻는 메뉴가 나오면 ì ìš©ì„ 하게 ë˜ë©´ ì´ì „ì˜ ì»¤ë„ì€ LinuxOLD로 lilo ë¼ë²¨ì´

     ë¶™ì„ ê²ƒìž„.

     ì´ë•Œ 반드시 /etc/lilo.conf 파ì¼ì„ 확ì¸í•˜ì—¬ ì •ìƒì ìœ¼ë¡œ ì„¤ì •ì´ ë˜ì—ˆëŠ”ì§€ 확ì¸í•˜ê³ , 기존ì˜

     커ë„ë¡œë„ ë¶€íŒ…ì„ í•  수 있ë„ë¡ í•˜ì—¬ ì»¤ë„ ì»´íŒŒì¼ì— 문제가 ìžˆì„ ì§€ë¼ë„ ê¸°ì¡´ì˜ ì»¤ë„로 부팅

     í•  수 있ë„ë¡ í•˜ê¸° 바람.

 

5. 마지막 리부팅

   - lilo.conf 파ì¼ì„ í™•ì¸ ì™„ë£Œ 하였으면 ì•„ëž˜ì˜ ëª…ë ¹ì„ ë‚´ë ¤ì„œ 리부팅 합니다.

     # lilo  --> 반드시 한 번 실행 해주는 게 안전 함.

     # sync

     # shutdown -r now


6. 리부팅 후 과정

   - ì •ìƒì ìœ¼ë¡œ ë¶€íŒ…ì´ ë˜ì§€ 않으면 lilo ì—서 기존 커ë„로 부팅 하여 ìœ„ì˜ ìˆœì„œë¥¼ 반복 하면

     ë ê±°ë¼ ìƒê°ì´ ë¨.

   - module 확ì¸

     # lsmod  --> êµ¬ë™ ì¤‘ì¸ ëª¨ë“ˆ í™•ì¸ í•¨.

     # modconf  --> ëª¨ë“ˆì„ ì˜¬ë¦¬ê³  내리고 í•  수 있는 툴임.

     ëžœì¹´ë“œë“±ì˜ ìž¥ì¹˜ë¥¼ 주로 모듈로 처리 함으로 잘 í™•ì¸ í•˜ì—¬ 부팅시 ì˜¬ë¼ ê°ˆ 수 있ë„ë¡ ì¡°ì •

     하면 ë¨.


7. 작성 후기

   - 리눅스ì—서 ì»¤ë„ ì»´íŒŒì¼ì€ 잘 ì•ˆë  ê²½ìš°ëŠ” ê³„ì† ì ì¸ 컴파ì¼ê³¼ 반복으로 ì¸í•˜ì—¬ 지겨울 수

     있으나 효율ì ì¸ 커ë„ê³¼ 새로운 ì»¤ë„ ì°¨ì›ì˜ ë³´ì•ˆì„ ì§€ì› í•˜ë ¤ë©´ ê¼­ 필요한 과정 임으로 기타

     다른 ìžë£Œë„ 충분히 참조하여 완벽히 ë°©ë²™ì„ í„°ë“í•´ 놓으면 리눅스 서버 관리 í•˜ëŠ”ë° ë§Žì€

     ë„ì›€ì´ ë˜ë¦¬ë¼ ìƒê° 합니다.

     추가로 í•„ìš” 하다고 ìƒê° ë˜ëŠ” ë‚´ìš© 있으면 ë§ê¸€ 남겨 주시구요... ì €ë„ ë˜í•œ 새롭게 경함 하는

     ë‚´ìš©ì´ ìžˆìœ¼ë©´ 수정하여 올리 ë„ë¡ í•˜ê² ìŠµë‹ˆë‹¤.


작성 : 마그마(필명) putter@naver.com
출처 :
http://blog.naver.com/putter/13648237


posted at 2007ë…„ 03ì›” 21ì¼ 15시 11ë¶„ | temp... | Trackback1 | Comment

2007ë…„ 03ì›” 20ì¼ 19시 10ë¶„
by 히스피

개발ìžë¼ë©°?11


ì‚¬ìš©ìž ì‚½ìž… ì´ë¯¸ì§€
..?


posted at 2007ë…„ 03ì›” 20ì¼ 19시 10ë¶„ | In Life.. | Trackback0 | Comment

2007ë…„ 03ì›” 20ì¼ 18시 13ë¶„
by 히스피

Installing Debian sarge on IBM x206m Server with SAS drives19


Filed under: ? jimmy @ 9:50 am

UPDATE! (27.10.2006)
It seems that the initrd (initial ramdisk) has to be recreated before rebooting. Otherwise the adp94xx module is missing. I was sure that I checked this before posting this HowTo, but a second test and some comments from other users showed me, that it doesn’t work this way. Thus I added the necessary steps.
I also found out, that there are problems with S-ATA drives. If you follow my HowTo it works, but when using grml-0.8 or ubuntu 6.06 LTS Server Edition it can not access the S-ATA drives. Well, ubuntu uses another driver version but grml-0.8 uses exactly the same driver, built from the same source. I couldn’t find out what’s wrong, maybe a side effect from other parts in the kernel code?

Some of the newer IBm servers have SAS (serial attached SCSI) Controllers onboard. The driver is not in the linux kernel but you can get the source on the IBM site. Since grml 0.8 we support the SAS driver so if you want to install debian, you can boot with grml and run debootstrap. Another way is to use the sarge installer and load the kernel module before partitioning harddisks. This way is described here:

  • Download the precompiled kernel module for the sarge kernel and copy it to a usb-stick (The modified source code is also available)
  • Boot the server with the debian sarge installer cd
  • Make all steps as usual until the installer fails because no partitionable media was found
  • Switch to the console with <Alt-F2> and hit enter to activate it
  • Plugin your usb-stick and run “modprobe sd-modâ€. With “dmesg |tail†you will see an entry which tells you the device node of the stick
  • Run “mkdir /usbstick†and mount it, e.g. “mount /dev/scsi/host0/bus0/target0/lun0/part1 /ubsstickâ€
    (/dev/scsi/… is the device node, that you saw before in the output of dmesg)
  • Now copy the kernel module with “cp /usbstick/adp94xx.ko /lib/modules/2.6.8-2-386/kernel/drivers/scsi†and run “depmodâ€
  • Run “umount /usbstick†and unplug the usb-stick. Run “modprobe -r sd-modâ€. This steps make sure, that the SAS drive(s) will be named /dev/sda, /dev/sdb, etc. Otherwise /dev/sda would be assigned to the usb-stick.
  • Now load the kernel module: “modprobe adp94xx†and “modprobe sd-modâ€, to load the support for scsi disks, again.
  • Watch the output of “dmesgâ€. The SAS drive(s) and the controller should be detected
  • Go back to the installer screen with <Alt-F1> and repeat the partitioning

UPDATE! (26.10.2006)
The following steps are required to recreate the initrd:

  • Continue with the installation up to the last step, when the installer asks you to remove any media and to reboot.
  • Switch back to the console (<Alt-F2>)
  • Copy the adp94xx module to the recently installed kernel: “cp /lib/modules/2.6.8-2-386/kernel/drivers/scsi/adp94xx.ko /target/lib/modules/2.6.8-2-386/kernel/drivers/scsi/â€.
  • Now chroot to the installed system which is mounted on /target: “chroot /targetâ€.
  • We need the proc filesystem, so run: “mount /procâ€.
  • Run depmod: “depmodâ€.
  • Create a new initial ramdisk: “mkinitrd -o /boot/initrd.img-2.6.8-2-386 2.6.8-2-386″.
  • Exit from the chroot by hitting Ctrl-D or typing “exitâ€.
  • Go back to the installer screen with <Alt-F1> and complete the final installation step.

from http://www.jimmy.co.at/weblog/?p=71

• TAG http://www.jimmy.co.at/weblog/?p=71

posted at 2007ë…„ 03ì›” 20ì¼ 18시 13ë¶„ | temp... | Trackback0 | Comment

2007ë…„ 03ì›” 20ì¼ 16시 19ë¶„
by 히스피

테스트입니다.21


테스트입니다. ^^


posted at 2007ë…„ 03ì›” 20ì¼ 16시 19ë¶„ | In Life.. | Trackback0 | Comment

<<prev   1   next >>