솔라리스에서 시스템 시간 맞추기..
시간이 너무 차이가 많이날때, 간단하게 시간과 날짜를 업데이트 하는 방법이 있다.
rdate 명령으로 표준시간에 맞출수 있다.
사용방법은
#rdate time.nist.gov
뒷쪽은 타임서버.
시간이 너무 차이가 많이날때, 간단하게 시간과 날짜를 업데이트 하는 방법이 있다.
rdate 명령으로 표준시간에 맞출수 있다.
사용방법은
#rdate time.nist.gov
뒷쪽은 타임서버.
smpatch ?
솔라리스에서 패치를 다운로드, 추가, 삭제할 수 있는 유틸리티..
이것을 이용하기 위해서는 PatchPro를 설치해야만 한다.
PatchPro를 설치한후
/usr/sadm/bin/smpatch [analyze | download | add | remove]
만약 SMC서버가 실행되어 있지 않는다는 메시지가 나온다면,
# /etc/init.d/init.wbem start
이렇게하면 솔라리스 패치관리는 거의 자동수준이 된다.
준비가 다 되었다면, 다음 명령으로 패치를 다운로드 받는다.
#/usr/sadm/bin/smpatch download -d /var/sadm/spool
(-d 옵션을 주지 않았다면 /var/sadm/spool 이 default 디렉토리가 된다. )
패치리스트 화일을 만든다(리스트화일을 받을 수 있는 방법이 있는지는 모르겠다. 아시는 분 있으면 댓글..)
#cd /var/sadm/spool
#ls -1 > patch_list
#/usr/sadm/bin/smpatch add -x idlist=patch_list
결과는? 실패다.. 패치들이 의존성검사(?)를 하는 모양이다.
1. Qmail 설치전에 할 일…
컴파일 환경을 갖춘다. cc 또는 gcc를 설치하며, 관련 라이브러리들을 설치하면 된다. 다음으로 필요한 화일들을 다운로드 받는다.
2.Qmail을 컴파일 하기 전에 Ucspi-TCP를 설치해야한다. Qmail이 이것을 이용한다(tcpserver를 이용함).
Ucspi-TCP(UNIX Client-Server Program Interface)는 tcpserver, tcpclient 처럼 작은 프로그램들로 구성된 커맨드라인 인터페이스 클라이언트서버 통신 툴이다. 이것은 xinetd나 inetd를 대체할 수 있는 프로그램 정도로 생각하면 된다.
먼저, source화일을 다운로드 받는다.
http://cr.yp.to/ucspi-tcp.html 다운로드가 가능하다.
source를 풀고, conf-home 화일에서 설치 디렉토리를 변경할 수 있다.(그냥 컴파일 설치하면 /usr/local/bin에 화일들이 설치됨) conf-cc에서 컴파일러 옵션을 변경할 수 있다.
다음에 , (설치디렉토리를 변경하지 않았다면)
make
make setup check
chmod 0510 /usr/local/bin/tcpserver
chmod 0510 /usr/local/bin/tcpclient
별 에러가 없다면 설치가 성공적으로 이루어진 것이다.
2. Qmail 설치.
http://qmail.org/netqmail-1.05.tar.gz (source 화일을 다운로드 받는다.)
패치를 해야하는데, solaris용 gnu patch를 구할 수 없어서 컴파일 해서 설치했지만, 제대로 인식을 하지 못했다. 그래서, 리눅스머신에서 collate.sh를 실행해서 패치한후 패치한 소스를 가져왔다.
컴파일전에 Qmail을 실행하기위한 사용자와 그룹을 만들어준다. qmail은 root권한으로 실행되지 않는다.
# groupadd -g 81 nofiles > /dev/null 2>&1 || :
# groupadd -g 82 qmail > /dev/null 2>&1 || :
# useradd -c “Qmail server” -d /var/qmail -g 81 -s /bin/false -u 81 qmaild > /dev/null 2>&1 || :
# useradd -c “Qmail server” -d /var/qmail/alias -g 81 -s /bin/false -u 82 alias > /dev/null 2>&1 || :
# useradd -c “Qmail server” -d /var/qmail -g 82 -s /bin/false -u 83 qmailq > /dev/null 2>&1 || :
# useradd -c “Qmail server” -d /var/qmail -g 82 -s /bin/false -u 84 qmailr > /dev/null 2>&1 || :
# useradd -c “Qmail server” -d /var/qmail -g 82 -s /bin/false -u 85 qmails > /dev/null 2>&1 || :
# useradd -c “Qmail server” -d /var/qmail -g 81 -s /bin/false -u 86 qmaill > /dev/null 2>&1 || :
# useradd -c “Qmail server” -d /var/qmail -g 81 -s /bin/false -u 87 qmailp > /dev/null 2>&1 || :
홈디렉토리를 만들어준다.
# mkdir /var/qmail
# chown 0:qmail /var/qmail
# mkdir -p /etc/qmail/alias
# mkdir -p /etc/qmail/control
# mkdir -p /etc/qmail/users
# ln -sf /etc/qmail/alias /var/qmail
# ln -sf /etc/qmail/control /var/qmail
# ln -sf /etc/qmail/users /var/qmail
# ln -sf /usr/bin /var/qmail/bin
# ln -sf /usr/share/man /var/qmail/man
소스화일이 있는 디렉토리로 이동후
cc-conf를 열어 자신의 컴파일 환경에 맞게 변경한다.
cc -O2를
-O3 -m64 -fno-omit-frame-pointer
로 변경했다.
SMTP_AUTH를 사용하기위해서 qmail-smtp-auth를 설치한다.
http://members.elysium.pl/brush/qmail-smtpd-auth/ 에서 다운로드한다.
qmail-smtpd-auth-0.31.tar.gz 를 풀고
# cp auth.patch /usr/local/source/netqmail-1.05/netqmail-1.05/
# cp base64.c /usr/local/source/netqmail-1.05/netqmail-1.05/
# cp base64.h /usr/local/source/netqmail-1.05/netqmail-1.05
(/usr/local/source/netqmail-1.05/netqmail-1.05에 qmail 소스화일이 있다).
load 에서 cc 를 찾을수 없다는 에러
화일열어서 cc를 gcc로 변경
에러..
make: warning: Clock skew detected. Your build may be incomplete.
이것은 load파일을 수정했을 경우 나타나는 에러다.
find ./ -name “[Mm]akeFile” -exec touch \{\} \;
안됨..
해결방안.
gcc를 cc에 심볼릭 링크..
#make
#make setup check
sendmail 라이브러리를 사용하는 프로그램들을 위해서 심볼릭 링크를 걸어준다.
#ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
# ln -sf /var/qmail/bin/qmail-qread /usr/bin/mailq
# rm -rf /var/qmail/boot/
# rm -rf /var/qmail/doc/
# maildirmake /etc/skel/Maildir
./config
Your hostname is smtp.
hard error
Sorry, I couldn’t find your host’s canonical name in DNS.
You will have to set up control/me yourself.
You’ll have to run the config-fast script located in the same source directory as follows:
./config-fast smtp.domain.com
Here I assume that your domain is domain.com and the hostname of your computer is smtp.
postmaster, mailer-daemon, root를 위한 alias를 설정함.(bash 셸로)
# echo sysadmin > .qmail-postmaster
# echo sysadmin > .qmail-mailer-daemon
# echo sysadmin > .qmail-root
# chmod 644 .qmail-*
# chown root:nofiles .qmail-*
사용자들은 홈디렉토리에 Maildir 을 만들어주기 위해서
# maildirmake $HOME/Maildir
이렇게 하면 홈디렉토리에 Maildir이 생성된다.
여기까지 성공했다면 qmail의 컴파일 설치는 끝이다.
3. qmail 설정하기.
qmail의 모든 설정 화일은 /etc/qmail/control 에 위치한다.
/etc/qmail/control/me –> 도메인이 저장되어 있으며 설치시 정확한 정보를 입력했다면 변경할 필요가 없다.
/etc/qmail/control/locals –>로컬호스트가 메일을 처리할 도메인들의 리스트.
(sendmail의 local-host-names와 비슷한 듯 하다.)
/etc/qmail/control/rcpthosts –> qmail 서버 사용이 허락된 도메인들의 리스트. 여기에 리스트가 없으면 메일을 받지 않는다(?)
이 화일은 가상메일호스팅(virtual mail hosting)과 관련되어 있다.
/etc/qmail/control/defaultdomain –>qmail이 사용하는 도메인 네임이 들어가는 화일이다. (호스트네임은 필요없다)
/etc/qmail/control/plusdomain –>역시 도메인 네임이 들어가는데, 아직 용도는 잘 모르겠다.(아시는분 리플좀…)
4. checkpassword 설치
source 화일을다운로드 한다.
http://cr.yp.to/checkpwd/checkpassword-0.90.tar.gz
압축을 풀고,
#make
#make setup check
5. 테스트
qmail 데몬을 tcpserver를 이용하여 구동한다.
#tcpserver -p -c 1024 -DRHl localhost 0.0.0.0 25 /usr/bin/tcp-env \
tcp-env /usr/bin/qmail-smtpd /bin/checkpassword /bin/true &
# /usr/local/bin/tcpserver -c 1024 -DRHl localhost 0.0.0.0 110 /usr/bin/qmail-popup \
`hostname ` /bin/checkpassword /usr/bin/qmail-pop3d Maildir &
# /usr/local/bin/perl -MCPAN -e shell
cpan shell — CPAN exploration and modules installation (v1.61)
ReadLine support available (try ‘install Bundle::CPAN’)
cpan> install Bundle:CPAN
perl CPAN모듈을 이렇게 설치하는건가?
CC: 사용할 컴파일러의 이름(e.g. ‘gcc’)
CXX: 사용할 C++ 컴파일러의 이름(e.g. ‘CC’)
CFLAGS: C코드를 컴파일하기위한 컴파일러 플래그(e.g. ‘-g -O2′)
CXXFLAGS: C++코드를 컴파일하기위한 컴파일러 플래그(e.g. ‘-g -O2′)CPPFLAGS: 헤더화일을 찾기위한 인클루드 패스(-I/somedir)
LDFLAGS: 라이브러리를 찾기위한 라이브러리 패스 (-L/somedir)
run-patch 라이브러리의 개념을 지원하는 시스템들은 런타임시 공유라이브러리를 찾기위해 추가적인 아규먼트들을 필요로 한다.
솔라리스 링커는 ‘-R/somedir’의 아규먼트가 필요하고, 어떤 리눅스 시스템들은 ‘-rpath /somedir’을 필요로 한다.
LIBS: 링크에 필요한 기타라이브러리(-lsomelib)
Powered by WordPress | Aeros Theme | TheBuckmaker.com WordPress Themes
Bad Behavior has blocked 75 access attempts in the last 7 days.