Search Results for '프로그래밍'
1208 posts related to '프로그래밍'
- 2010/08/18 요일, 시간마다 다른 CSS 제어
- 2010/08/18 GET 인지 POST 인지 알아내기
- 2010/08/18 AjaxPlorer Ver 2.55 한글 업로드 및 다운로드
- 2010/08/18 MY-SQL 유저 생성, 권한 부여
- 2010/08/18 startssl 자동실행
- 2010/08/18 아파치 보안 팁 [외부에서 아파치정보 못 보게하기]
- 2010/08/18 추천 css 압축기
- 2010/08/18 CSS 프레임워크를 이용한 홈페이지 디자인
- 2010/08/18 vsftp port 변경
- 2010/08/18 euc-kr 을 utf-8 파일로 일괄 변환하는 쉘 스크립트
- 2010/08/18 pause 함수
- 2010/08/18 자바스크립트 팁 (고급 팁)
- 2010/08/18 iframe내의 id셀렉터
- 2010/08/18 폼의 첫번째 입력박스에 포커스 주기
- 2010/08/18 jquery 오른쪽 마우스금지 1
- 2010/08/18 mircosoft에서 jquery cdn 호스팅을 이용하기
- 2010/08/18 [CSS] 레이어 중앙으로 정렬
- 2010/08/18 [TIP] 퀵메뉴 스크립트
- 2010/08/18 flash 자동 컴파일 프로젝트, 구글에서 검색한 결과 괜찮은 자료가 있어서 링크 합니다.
- 2010/08/09 Daum Open Editor - Daum에서 진행하는 오픈소스 프로젝트 입니다.
- 2010/08/09 Server Utility Tools 1
- 2010/08/09 WebLogic 10.3 + 이클립스 설치 + MS SQL 2008
- 2010/08/09 MS - SQL Server 2008 Express 외부 원격 연결 설정 방법
- 2010/08/01 [Linux] 이메일 포워딩 방법 두 가지
- 2010/08/01 rsync + ssh 원격백업
- 2010/08/01 [리눅스] proftpd.conf 파일 설명
- 2010/08/01 [윈도우서버] Windows Server 2003 설치후 해줘야 할일들
- 2010/08/01 리눅스 quota 설정
- 2010/08/01 [리눅스] rsync
- 2010/08/01 [리눅스] 언어설정
<?
$hour=date('G');
$day=date('w');
?>
date('G')는 현재 시간을 0~24로 나타나게 해주며
w는 요일을 일요일을 0으로 출력합니다.
(토요일은 6이 되겠죠. 0~6까지 출력)
.day1 {width:40px;}
.day2 {width:100px;}
라고 CSS를 간단하게 정의해보겠습니다.
<div id="layout" class="day<?=$day?>">
가장 바깥부분에 정의하면 됩니다. id인 layout에는 공통 CSS만 집어넣어주면 됩니다.
변수 day를 출력하면 월요일의 경우 1이라고 출력되므로 class명은 day1이 됩니다.
이렇게 사용하면 요일마다 다른 class를 출력할 수 있게 됩니다.
(매일 바꿀 수도 있겠지만, 이건 좀 아니겠죠..)
요일, 시간에 따라 다른 CSS를 제어하는 문구의 예시입니다.
오후 5시~아침 7시까지는 night라는 class를 출력합니다.
<div id="layout" class="day<?=$day?>"><?if($hour>=17||$hour<=7 echo(" night");?>
if($_SERVER[REQUEST_METHOD]!='POST') {
?>
<script>
alert("잘못된 접근방식입니다.");
history.back();
</script>
<?}?>
AjaxPlorer 2.55 한글 업로드 및 다운로드 가능토록 수정
Ajaxplorer
1. /server/conf/conf.php
$default_language="en" =>> $default_language="ko" 로변경
2. server/classes/class.SystemTextEncoding.php
function getEncoding(){
...
}
함수 내에 setlocale(LC_CTYPE, 'ko_KR.eucKR'); 추가
ex)
function getEncoding(){
global $_SESSION;
// Check if the session get an assigned charset encoding (it's the case for remote SSH for example)
if (isset($_SESSION["AJXP_CHARSET"]) && strlen($_SESSION["AJXP_CHARSET"])) return $_SESSION["AJXP_CHARSET"];
// Get the current locale (expecting the filesystem is in the same locale, as the standard says)
setlocale(LC_CTYPE, 'ko_KR.eucKR');
return SystemTextEncoding::parseCharset(setlocale(LC_CTYPE, 0));
}
setlocale에 대한 자세한 사항은 아래 php.net 참조
http://kr.php.net/manual/kr/function.setlocale.php
위 수정만으로 한글 파일 업로드 및 다운로드 가능합니다.
GRANT USAGE ON *.* TO root@'111.222.333.444' IDENTIFIED BY "password"
2. 권한 부여
GRANT ALL PRIVILEGES ON *.* TO root@'111.222.333.444'
3. 권한 로드
FLUSH PRIVILEGES
찾아보면 기본값은 SSLPassPhraseDialog builtin으로 설정되어있을겁니다.
builtin은 상호대화방식으로 startssl로 시작시 패스워드 어구를
물어보게되어있습니다.
그부분을 exec:실행파일명 형식으로 적어주시고
(SSLPassPhraseDialog exec:/usr/sbin/ssl_pass)
그 실행파일을 다음과 같이 만들고
#!/bin/sh
echo password
-------------------
아파치를 시작하면 됩니다.
하면 패스워드 어구를 물어보지 않고 아파치가 실행됩니다.
http://www.modssl.org/docs/2.8/ssl_reference.html#ToC2
#개요:
아파치는 리눅스에서 가장 많이 사용하는 웹서버 입니다. 또한 버전마다 보안등 특징들이 공개되어 누구나 보안상황을 볼 수 있습니다.
# 문제점:
상당수 웹서버는 제때 업데이트를 하지 않고 있습니다. 따라서 외부에서 특정 서버의 아파치 서버 정보 (버전정보등 포함...) 를 볼 수 있다는것은 보안상에 문제가 됩니다. 따라서 이것을 막아야 합니다.
# 막는 방법 :
1) /etc/httpd/conf/httpd.conf 혹 /usr/local/httpd/conf/httpd.conf 파일을 열어서 ServerSignature 및 ServerTokens를 아래처럼 변경하여 줍니다. 첫번째는 서버버전 정보를 숨기고 2번째는 서버정보는 단지 "Apache" 만 표시되게 하는것입니다.
ServerSignature Off2) 다음에 아파치를 재 시작하여 줍니다.
ServerTokens Prod
[root@mbkang ~]# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
[root@mbkang ~]#
열심히 찾다가 찾은 보배같은 사이트!
여기 정말 좋은 것 같아요. 자기 용도에 맞게 설정도 할 수 있고..
http://cleancss.com/
css 를 이용해 레이아웃을 잡기위한 삽질을 줄여주는 프레임워크들이 있습니다.
http://nettuts.com/html-css-techniques/which-css-grid-framework-should-you-use-for-web-design/
위 링크에 가보면 css 프레임워크 종류 및 소개가 있습니다.
http://www.blueprintcss.org/
그중 blueprintcss를 추천합니다.
자세한건 구글신께;;
http://www.google.co.kr/search?hl=ko&client=firefox-a&rls=org.mozilla%3Ako%3Aofficial&hs=52g&newwindow=1&q=blueprintcss&btnG=%EA%B2%80%EC%83%89&lr=lang_ko&aq=f&oq=
기본 사용법 링크1 참조
ftp를 이용한 해킹을 막기 위해서 해외 접속 ftp에 대한 ip를 모두 차단할 수도 있지만
(GeoIP라는 거를 쓰면 됨) 간단하게 ftp port만 바꿔버릴 수도 있습니다.
vsftp의 경우 /etc/vsftpd/vsftpd.conf 에서 아래 라인을 추가 합니다.
그리고 가끔씩 ftp port를 바꿔서 해킹을 헷갈리게 하는거죠.
이거는 공용서버에서는 할 수 없겠죠? ㅎㅎ
# vsftp access port
listen=YES
listen_port=15231
#!/bin/bash
iconv -c -f euc-kr -t utf-8 $1 > $1.tmp && mv $1.tmp $1
$> for i in `find . \( -name '*.php' -o -name '*.htm' -o -name '*.html' -o -name '*.css' -o -name '*.js' -o -name '*.sql' -o -name '*.txt' \) -print` ; do ./e2u.sh $i ; done
쉘에서 이 명령을 실행하면 하위 폴더까지 전부 charset 을 변환한다.
{
var date=new Date();
curDate=null;
do{var curDate=new Date();}
while( curDate - date < ms);
};
ㅇ try catch문
사용할때 : 보통 자바스크립트로 작업하다 보면 정말 어떨때는 구문에서 틀리지도 않았는데,
브라우저 버젼에 따라 에러가 발생하기도 하고, 정말 몇달간 디버깅에 지칠때도 있다.
대부분 열심히하면 나타나는데, 다음의 try catch문을 사용하면 편리하다.
사용예 :
try
{
// 실제 실행시킬부분
var a = opener.location.href;
}
catch (e)
{
// 위의 "실행시킬부분"에서 에러가 났을때 처리해줄 부분
alert ("opener를 찾을수 없습니다.");
}
finally
{
// 에러가 나든 나지 않든 무조건 실행시키는 부분
window.status = "opener.locatoin.href 부분 실행되었음";
}
ㅇ typeof문
사용할때 : 보통 데이터나 오브젝트 타입등을 검사할때 많이 사용하는데.
만약 "undefined"이면 인식을 못한거고 "unknown"이 나올때가
있다.. 만약 부모창에서 새창을 열고 부모창을 닫았는지 새창에서 검사할때
if (typeof (opener) == "unknown") 이면 으로 검사할때 유용하다~ㅇ
ㅇ regExp (정규표현식)
사용할때 : 만약 <textarea name="taContent"></textarea>에 사용자가 입력한 value값중에서
"/아싸1/" ~ "/아싸10/" 까지를 다 "/호호1/" ~ "/호호10/" 까지로 바꿀려면 어케할까?
var sTaContent = taContent.value;
for (var nI = 1; nI <= 10; nI++)
{
var expTest = new RegExp("/아싸" + nI + "/", "ig"); // i는 대소문자 구분없고, g는 중복되어도 다처리
sTaContent = sTaContent.replace (expTest, "/호호" + nI + "/");
}
taContent.value = sTaContent;
하면 된다~ㅇ
위의 expTest의 메소드들도 몇개있으므로 알아두면 많이 도움이 된다~ㅇ
또한, 게시판의 글보기에 나오는 글들에 자동링크 걸때도 사용한다~ㅇ
ㅇ var a="08", b="09"일때
parseInt (a)나 parseInt (b)의 값은 0 이다
Number (a)나 Number (b)값을 해야 제대로 8과 9의 값이 나온다~ㅇ
한번 고생한적이 있어서여~ㅇ 다른분들에게 도움이 되었으면...
ㅇ <img name="pic1" src="">
<img name="pic2" src="">
<img name="pic3" src="">
위와 같이 있고 javascript에서 pic1 ~ pic3의 src주소값을 바꾸고자 할때
for (var nI = 1; nI <= 3; nI ++)
{
eval("document.pic" + nI + ".src ='http://image.aaa.com/p" + nI + ".gif'");
}
위와 같이 eval을 넣어주어야 되더라구여~ㅇ
ㅇ 현재의 html파일을 다른이름을로 저장할때 뜨는 dialog박스를 열어서 저장하고 싶을때
그냥 다음한줄을 실행시키면 저장 dialog박스가 뜨는걸로 뭐하는지 알겁니다~ㅇ
document.execCommand("SaveAs", null, "a.html")
다르게하면 다음의 한줄을 넣고
<iframe name="ID_LOG" style="display:none"></iframe>가 body에 있다고 하고
var sHTML = "<center>Testing...</center>";
document.all.ID_LOG.document.close ();
document.all.ID_LOG.document.write (sHTML);
document.all.ID_LOG.document.execCommand("SaveAs", null, sFileName);
하면 Testing가 찍히는 html문서를 저장할수 있져~ㅇ 그런데 이거는 IE 5.5이상에서만 됩니다.
5.0에서는
var sHTML = "<input type='button' value='저장' onClick=\"window.document.execCommand('SaveAs', null, 'a.html')\">";
sHTML += "<br><center> Testing..</center>";
var oLogWin = window.open ("", "popLog", "어쩌구...");
oLogWin.document.write (sHTML);
해서 새창띄워서 클릭하게 하면 됩니다~ㅇ
ㅇ 그리고 Javascript에서 name이나 id값이 같은것이 있으면 Array로 변하더군요...
Javascript많이 사용하다보면 많이 접하셨을겁니다~ㅇ
동적으로 name이나 id값이 1나 1이상을로 늘어날때에
<span id="ID_A"></span>
<span id="ID_A"></span>
이 있다고 할때
Javascript 안에서 에서
var oID_A = document.all.ID_A;
if (typeof (oID_A [0]) != "undefined")) // 1개 이상일때
{
}
else // 1개만 있을경우
{
}
물론 "ID_A" id값을 가지고 있는것이 있는지 먼저 검사하면 좋져~ㅇ
ㅇ 만약 a와 b와 c의 값을 구분자 ","로 구분하는 String (a,b,c)을 만들고 싶을때
var oTmpArray = new Array ("a", "b", "c");
var sValue = oTmpArray.join (",");
ㅇ javascript 연관배열
var oMethod = {
"ALERT" : goAlert,
"MSG" : goMsg
}
oMethod ["ALERT"] 는
goAlert가 됩니다.
ㅇ onLoad, onClick, onMousewheel... 등등의 이벤트를 붙이거나 떼기
window.attachEvent ("onscroll", procScroll);
하면 onscroll이벤트 발생시 procScroll함수 실행
window.detachEvent ("onscroll", procScroll);
하면 onscroll이벤트 떼기
ㅇ 움직이는 gif이미지를 key이벤트나 등등 이벤트사용하면 움직이던 gif이미지가 멈추어버립니다.
알고보니 return값땜시 "event.returnValue = 'false'" 해주면 되더라구여~ㅇ
ㅇ ActiveX를 사용시 ActiveX클라이언트가 ActiveX를 다운 받았는지 확인할때는
<object name=AX1 id=AX1></object> 가 있을때
var bnResult = typeof (AX1.proc) == "unknown")? true : false;
proc는 AX1의 method입니다~ㅇ
이렇게 확인하면 되더라구여~ㅇ
ㅇ F5번 누를때 경고창(confirm같은것)띄워서 새로고침 할건지 물어보기
window.onbeforeunload = hoho ();
function hoho ()
{
var sMsg = "새로고침을 정말로 정말로 정말로 할꺼예여?";
return (sMsg);
}
물론 F5번 눌렀을때를 key Event로 잡아서 함수안에서 실행해도 됩니다~ㅇ
ㅇ VBscript에만 있는줄 알았던 with 많이 쓰일때가 있더군요 switch문을 안에다가 사용하면 정말 깔끔!
with (window)
{
onload = pageOnLoad;
onunload = pageUnload;
}
전 이걸 몰라서 헤멨는데 다른분은 다 아시고 계신건가요?
alert("오른쪽마우스금지입니다.");
return false;
});
<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.js" type="text/javascript"></script>
구글꺼
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
</div>
하지만, IE 전용이라는거;
<!-- 퀵메뉴스크립트 -->
<style type="text/css">
<!--
#floater {position:absolute; visibility:visible}
-->
</style>
<script language="Javascript">
<!--
self.onError=null;
currentX = currentY = 0;
whichIt = null;
lastScrollX = 0; lastScrollY = 0;
NS = (document.layers) ? 1 : 0;
IE = (document.all) ? 1: 0;
<!-- STALKER CODE -->
function heartBeat() {
if(IE) {
diffY = document.body.scrollTop;
diffX = 0;
}
if(NS) { diffY = self.pageYOffset; diffX = self.pageXOffset; }
if(diffY != lastScrollY) {
percent = .1 * (diffY - lastScrollY);
if(percent > 0) percent = Math.ceil(percent);
else percent = Math.floor(percent);
if(IE) document.all.floater.style.pixelTop += percent;
if(NS) document.floater.top += percent;
lastScrollY = lastScrollY + percent;
}
if(diffX != lastScrollX) {
percent = .1 * (diffX - lastScrollX);
if(percent > 0) percent = Math.ceil(percent);
else percent = Math.floor(percent);
if(IE) document.all.floater.style.pixelRight += percent;
if(NS) document.floater.top += percent;
lastScrollY = lastScrollY + percent;
}
}
if(NS || IE) action = window.setInterval("heartBeat()",1);
//-->
</script>
<!-- 퀵메뉴스크립트여기까지 -->
<!-- 레이어 삽입-->
<div id=floater style="top:140px; width:83px; height:532px; z-index:10"><퀵메뉴></div>
flash auto compile using jsfl
jsfl same like mecro ...script
core file : compileProject.jstl, compile_schma.txt
flash 자동 컴파일 프로젝트, 구글에서 검색한 결과 괜찮은 자료가 있어서 링크 합니다.
다음에서 공용 FTP 를 이용해 Cent OS 를 설치 했습니다. 속도가 무지 빠르고 좋네요.
아래 링크 따라 들어 가시면 [ 공용 FTP 지원] 메뉴가 있습니다.
Daum에서 진행하는 오픈소스 프로젝트 입니다.
Daum Open Editor
Daum Open Editor는 Daum 에서 개발된 WYSIWYG기반의 오픈 웹 에디터로 독립적이고 확장에 유연하도록 설계 되었습니다. 주요 브라우저의 크로스브라우징을 지원하며, Daum에서 서비스되고 있는 Daum Editor와 함께 업데이트 될 예정입니다. 상세한 설명은 여기에서 참고해 주세요.
다음오픈에디터의 라이센스는 GNU LGPL(Lesser General Public License) 으로 오픈되어 있는 소스이므로 저작권료 없이 사용이 가능하며, 목적에 맞게 수정하여 사용할 수 있으십니다. 또한 LGPL에는 수정한 부분의 소스공개를 권장하고 있으나, 강제 사항은 아니므로 공개하지 않으셔도 무방합니다. 다만 사용하시는 소스 상단 부분에 다음오픈에디터를 사용하였음을 명시해 주시길 권장합니다.
IE 5.5+ 지원 (safari 3.2 + , chrome 1, ff 2+, opera 9.64+)
[다운로드]
- Windows Installer 3.0 Redistributable - Windows Installer 3.0 버젼. msi 배포시 필요.
- Windows Script 5.6 - Windows 2003용 Windows Script 5.6 버젼
- Windows Script 5.6 - Windows 2000,XP용 Windows Script 5.6 버젼
- Microsoft Network Monitor 3 패킷분석기
- SyncBack Freeware - Freeware 파일 백업/동기화 유틸
- Reflector for .NET - 닷넷디컴파일러
- Sourceforge Project - Clam AntiVirus - 실시간 바이러스DB 업데이트 제공
- Sourceforge Project - Packetyzer - 패킷분석기
- Microsoft Data Access Components (MDAC) 2.8 한글
- Microsoft .NET Framework 2.0 베타 2(x86)
- Microsoft .NET Framework 1.1 Redistributable 한글
- WMI Code Creator v1.0
- WMI Administrative Tools
- Debug Diagnostic Tool v1.1 디버깅툴
- Debugging Tools for Windows - WinDbg 디버깅툴
- Sysinternals - Diskmon v2.01 - HDD 작동상태 모니터링
- Sysinternals - Filemon v7.02 - 실시간 파일시스템 모니터링
- Sysinternals - Junction 1.032 - NTFS 심볼릭 링크 생성
- Sysinternals - PsTools v2.24 - 프로세스관리툴 모음
- Sysinternals - Autoruns v8.31 - Autorun 관리툴
- Sysinternals - RootkitRevealer - 루트킷 검색툴
- Sysinternals - Tokenmon - 토큰모니터
- Sysinternals - TDIMon - TCP/IP 실시간 모니터
- Sysinternals - Process Explorer - 프로세스탐색기
- Sysinternals - Portmon for Windows NT/9x - 네트워크포트 모니터
- Sysinternals - Regmon for Windows NT/9x - 레지스트리 모니터
- Sysinternals - CPUMon - CPU 모니터
- Sysinternals - Filemon for Windows - 파일 모니터
- Sysinternals - BlueScreen Screen Saver - 블루스크린 세이버
Windows Server
- Web Application Stress Tool
- Windows Server™ 2003 Performance Advisor
- Windows Server 2003 Resource Kit Tools
- IIS 5.0 Process Recycling Tool - IIS 5 재생을 통해 가용성을 높이는 툴
- User Profile Hive Cleanup Service(EventlogID:1000..)
- Internet Information Services (IIS) 6.0 Resource Kit Tools
- IIS Diagnostics Toolkit (x86)
- Urlscan 2.5 Install Package
- IIS Crash/Hang Agent & IIS Dump
- Active Directory Migration Tool v3.0 한글
SQL Server
- SQL Server Web Data Administrator
- SQL Server Express Utility
- SQL Server Health and History Tool (SQLH2)
- Best Practices Analyzer Tool for Microsoft SQL Server 2000 1.0
- Microsoft SQL Server Report Pack for Internet Information Services (IIS Logs)
Exchange Server
- Exchange 지능형 메시지 필터 - Exchange Server 2003 버젼용
- Exchange Server Stress and Performance 2003
- Microsoft Exchange Server 2003 Load Simulator (LoadSim)
- Microsoft Exchange Server User Monitor
- Microsoft Exchange Server Mailbox Merge Wizard (ExMerge)
- Exchange Server 2003 Exchange 배포 도구
- Exchange Server Performance Troubleshooting Analyzer Tool v1.0
- Exchange Server Best Practices Analyzer Tool 한글
WebLogic 10.3 + 이클립스 설치 + MS SQL 2008
1) JDK1.6버전 설치
2) 웹로직을 설치
2-1) 배치에서 웹사이트 경로 설정
2-2) 서비스 데이타소스에서 JDBC경로 설정
이름 :: DS명
JNDI 이름 :: JNDI 명
데이타베이스 유형 :: MS-SQL서버
데이타 베이스 드라이버 :: Microsoft's MS SQL Server Driver(type4) Versions 2005,2008
2-3) JDBC설정
2-3-1) MS SQL사에서 sqljdbc4.jar를 다운받는다
2-3-2) jdbc jar파일을 C:\Oracle\Middleware\wlserver_10.3\server\lib\sqljdbc4.jar에 놓는다
2-3-3) jdbc jar패스 설정
C:\Oracle\Middleware\user_projects\domains\base_domain\bin\setDomainEnv.cmd
파일안에 경로설정
set PRE_CLASSPATH=C:\Oracle\Middleware\wlserver_10.3\server\lib\sqljdbc4.jar
3) 이클립스 설치
3-1) 갈릴레오 JEE버전 설치
3-2) 환경수정및 OverWrite
( 이클립스 실행시 버전 1.5 어쩌구 저쩌구 Error시 )
eclipse.ini파일을 수정및 기존 eclipse내용으로 변경
3-3) 이클립스 실행
3-4) 웹서버 설정
3-4-1) File / New / Other/ Server에서 해당 Web로직버전이 없는 경우
3-4-2) Download additionna server adapters를 클릭하여 버전 Import!
( 1~3분정도 기다려야 함)
3-4-5) 해당 정보가 뜨면
Oracle / Oracle Weblogic Server 11gR1 PatchSet2를 선택
(웹로직 버전에 따라 틀림)
3-4-6) Workspace설정
c:\Workspace
3-4-7) Project설정(반드시 web project를 선택해야 함)
3-4-7-1) File / New / Project선택
3-4-7-2) Web / Dynamic Web Project를 선택함
Project명 :: CSMS/work/webapp 혹은
:: work/webapp
3-4-8) Library(JAR정보 설정)
3-4-8-1) Project명을 선택 / 오른쪽 마우스 클릭 / 속성클릭
3-4-8-2) Java Build Path선택
3-4-8-3) Libraries를 선택 / Add Jars버튼 선택하여
Lib폴더에 있는 Jar파일들을 선택한다
3-4-9) Java 컴파일 경로설정
3-4-9-1) Project명을 선택 / 오른쪽 마우스 클릭 / 속성클릭
3-4-9-2) Java Build Path선택
3-4-9-3) Source를 선택 Java Source경로 지정한 후
하단의 Default output folder항목에 클래스 경로를 지정
:: source 경로 :: CSMS/src
:: 클래스 경로 :: CSMS/work/webapp/WEB-INF/classes
3-4-8) 화면 하단에 server탭이 보이지 않는 경우
window/ Show View/ Server를 선택한다
4) 웹로직 환경설정
4-1) Console실행
4-2) Batch경로(WebSite)설정 :: 배치 / Web Root경로설정
-> JSP를 수정없이 올릴려면 :: xxx를 체크한다
4-3) JDBC설정
4-3-1) MS SQL사에서 sqljdbc4.jar를 다운받는다
4-3-2) jdbc jar파일을 C:\Oracle\Middleware\wlserver_10.3\server\lib\sqljdbc4.jar에 놓는다
4-3-3) jdbc jar패스 설정
C:\Oracle\Middleware\user_projects\domains\base_domain\bin\setDomainEnv.cmd
파일안에 경로설정
set PRE_CLASSPATH=C:\Oracle\Middleware\wlserver_10.3\server\lib\sqljdbc4.jar
4-4) 이클립스의 클래스 패스 지정
4-4-1) C:\Oracle\Middleware\user_projects\domains\base_domain\bin\
startWeblogic.cmd에 클래스 패스 경로설정
ex) set QIS_HOME=c:\workspace\csms
set CLASSPATH=%CLASSPATH%;%QIS_HOME%\work\webapp\WEB-INF\classes
set CLASSPATH=%CLASSPATH%;%QIS_HOME%\lib\activation.jar
set CLASSPATH=%CLASSPATH%;%QIS_HOME%\lib\ant.jar
set CLASSPATH=%CLASSPATH%;%QIS_HOME%\lib\weblogic.jar
4-4-2) weblogic.jar를 Copy하여 위에서 지정한 곳에 Paste한다
ex) C:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic.jar
--> c:\workspace\CSMS\lib
4-4-3) env환경설정(환경에 따라 틀림??)
c:workspace/CSMS/env/env.xml에 JDBC경로 및 파일서버 경로지정한다
<driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver>
<url>jdbc:sqlserver://ip주소:포트번호;databaseName=DB명</url>
<user>userName</user>
<password>비밀번호
개인용 테스트 DB를 사용할때 덩치큰 유료 MS SQL Server 를 이용하는거 보단 MS SQL Server Express 버전을 사용하는게 훨씬 유용할때가 있습니다. 개인이 테스트용으로 사용하는데 굳이 돈을 지불하고 사용할수도 없고 사용한다 해도 거의 대부분은 불법으로 사용하기 때문에 Express 버전을 사용하는게 훨씬 용이 할것입니다.
그런데 MS SQL Server 2008 Express 버전을 사용하면 한가지 문제가 생깁니다. 로컬에서선 DB 연결이 자연스럽게 되나 외부에서 접속하려 하면 되지 않습니다. 이 부분은 Express 의 특징으로 설정을 외부에서도 접속할수 있게끔 만들어 줘야 사용할수 있습니다.
그럼 MS SQL Server 2008 Express 버전에서 외부 원견 연결 설정 방법을 알아 보도록 하겠습니다.
먼저 [시작]->[모든 프로그램] 에서 MS SQL Server 2008 Express 버전 단축 아이콘 폴더가 모여 있는 곳으로 이동하여 [구성도구] 폴더에서 [SQL Server 구성 관리자] 를 클릭 합니다.
SQL Server 구성 관리자 화면이 뜨는데 왼쪽 화면에서 [SQLEXPRESS에 대한 프로토콜]을 클릭하여 오른쪽에 있는 [명명된 파이프]와 [TCP/IP] 항목의 상태를 [사용]으로 변경해 주면 됩니다.
이렇게 하면 기본적인 외부 연결을 위한 설정은 마무리가 됩니다. 로컬이 아닌 외부에서 접속을 시도해 보시기 바랍니다. 아마 잘 될것이라 생각합니다.그런데 만약 이렇게 했는데도 접속이 이루어 지지 않는다면 방화벽을 한번 의심해 보시기 바랍니다. Express 버전이 설치된 컴퓨터의 방화벽에서 MS SQL 의 포트인 1433을 열어 주시고 다시 한번 외부 원격 연결을 시도해 보시기 바랍니다.
가령 info@aaa.co.kr이란 계정이 있습니다.
이 계정으로 오는 메일을 방사장@aaa.co.kr과 퇴직녀@aaa.co.kr이 받고 있었습니다.
그런데 퇴직녀의 계정으로 왔던 info메일을 삭제하고
방사장@aaa.co.kr과 관리녀@aaa.co.kr로 포워딩을 하고 싶은데요.
책을 찾아보니까 root\info)vi. forward에서
방사장@aaa.co.kr
관리녀@aaa.co.kr
이렇게 편집을 하고 저장을 하고 나온 후 재부팅을 하면 된다고 합니다.
맞습니까? ㅜ.ㅜ
또한 그렇게 했을 경우 관리녀의 아웃룩에서 전자메일계정을 (- info 계정이겠죠) 추가해야 하나요?
추가 안하면 root모드에서 포워딩을 했어도 멜이 안오는겁니까?
정말 하나도 모르겠씸미다.
도와주셔요. ㅠㅠ
[질문자 채택답변] 참고하세요
비공개 님이 2003-12-16 10:59 작성
안녕하세요 sendmail을 쓰신다면 메일포워딩 기능을 쓰지마시고 aliases 기능을 쓰십시오.
info@test.co.kr 라는 계정이 없어도 aliases 에서 가능합니다.
우선 vi /etc/aliases 라는 파일을 여신후
====================================
newsadm: news
newsadmin: news
usenet: news
ftpadm: ftp
ftpadmin: ftp
ftp-adm: ftp
ftp-admin: ftp
# trap decode to catch security attacks
decode: root
# Person who should get root's mail
root: jkkim, kim@hanmail.net
webmaster: biz
info: 방사장@aaa.co.kr, 관리녀@aaa.co.kr
================================================
메일링 리스트(info@aaa.co.kr)로 오는 메일을 [최종 목적지]에 설정된 사용자 또는 메일 주소로 포워
딩 합니다.
info을 추가 하신후 aliases 파일을 저장하시고 newaliases 라는 명령을 쳐주시기 바랍니다.
[root@test /home]# newaliases
다시 설명하자면,
info계정으로 오는 메일은 방사장 or 관리녀 메일로 들어갑니다.
아웃룩에서는 방사장으로 배달을 누르시면 info메일도 들어옵니다.
- 데이터를 백업할 곳은 ssh 클라이언트 및 rsync 설치.
- rsyn가 설치되어 있고, ssh 클라이언트가 설치되어 있으면,
원격백업 가능함.
- 호스트1은 백업할서버, 호스트 2는 데이터 서버 라고 가정할 경우.
rsync -avPz --delete --stats -l -t -e ssh root@호스트2의 서버 아피:/백업할 디렉토리/ /데이터를 저장할 호스트2 서버의 디렉토리.
예제) 호스트1의 home디렉토리 전체를 호스트2의 backup 디렉토리로
백업을 할 경우. (호스트2에서 호스트1의 ssh서버를 접근해야 함)
rsync -avPz --delete --stats -l -t -e ssh root@호스트1의아피:/home/ /backup
- 저렇게 할 경우 압축을 하고, 퍼미션 및 소유권은 그대로 유지하며, 심벌릭 링크는 심벌릭 링크 그대로 백업하고, 전송 속도 및 시간을 출력해주고, 마지막에 전송된 상태를 출력 해줌.
--delete는 옵션은 원본에는 없지만 그 전에 받은 백업본에 있을 경우 삭제해줌.
그래서, 원본과 항상 똑같이 백업이 되도록 함.
주의사항)
백업 할 곳의 디렉토리를 적을땐,
항상 /home/ 식으로 끝에 슬래쉬를 적어 줘야 함.
만약 /home이라고 할 경우 디렉토리 생성만 되고, 그 안에 있는 데이터는
백업이 되지 않음.
그리고, 위의 같이 명령어를 입력할 경우 그냥 ssh접속할때 처럼
루트의 비밀번호를 물어봄.
루트의 비번을 입력해주면, 바로 백업을 해준다.
루트의 비번을 입력하기가 귀찮을 경우는
두가지 방법이 있음.
첫번째는 인증키를 생성해서 해당 서버에 저장하면,
비밀번호를 물어보지 않음.
인증키 생성하는 방법은
ssh-keygen -d
이라고 할 경우
~/.ssh/id_dsa.pub 라는 파일이 생성됨.
이걸 원본 데이터가 있는 서버에 저장해줌.
방법은
scp -p .ssh/id_dsa.pub root@호스트명:~/.ssh/authorized_keys2
라고 하면 됨.
두번째 방법은 스크립트로 돌리는 방법이 있음.
#!/usr/bin/expect -f
log_user 0
spawn rsync -avPz --delete --stats -l -t -e ssh root@호스트1의 아피:/home /backup
expect "password: "
send "루트의 비번\n"
log_user 1
interact
저렇게 할경우 루트의 비번을 입력하지 않아도 루트의 비번을 전송해줌.
이상 rsync+ssh에 의한 미러 백업에 대한 방법론이었습니다...^^
----------------------------------------------------------------
ServerName "ProFTPD Default Installation"
FTP 에 접속 했을때 보여주는 문자열 입니다.
ServerType inetd
proftpd 를 작동하는 서버 모드는 두가지가 있는데 하나는 standalone 이고 하나는 inetd 방식입니다.
Standalone 방식은 proftpd 데몬이 프로세스상에 항상 떠 있으면서 접속을 대기 하고 있어 빠른 속도를 보이는 반면에 시스템자원을 차지하는 단점이 있으며
inetd 방식은 접속 요청이 있을때만 반응하므로 시스템자원을 차지하지 않지만 속도가 Standalone 방식보다 떨어질 수 있습니다.
DefaultServer on
한개의 FTP 서버에 여러개의 아이피 주소가 존재할 경우 이들 주소에 대해 접속요청이 있을때 기본 서버로 작동할 것인가를 결정해 줍니다.
Port 21
FTP 데몬의 포트번호를 지정해 줍니다.
Umask 022
주어진 콘텍스트에서 새로 만들어진 파일과 디렉토리 퍼미션에 적용될 마스크를 지정해 주는 지시자입니다.
MaxInstances 30
Standalone 방식으로 작동할때 생성될 수 있는 자식 프로세스 (child process) 의 최대 갯수를 설정해 줍니다. inetd 모드로 작동될 경우 이 옵션은 필요가 없습니다.
User nobody
Group nobody
데몬을 실행하는 사용자와 그룹의 소유권을 지정해 줍니다.
#DefaultRoot ~
유저들이 로그인 했을때 자신의 홈디렉토리 상위로 이동하지 못하도록 설정하는 옵션입니다. 틸드(~) 표시 뒤에는 그룹이름이 들어가도록 되어 있습니다.
사용예 )
#DefaultRoot ~ !root
위와같이 설정 하면 일반 유저들은 자신의 홈디렉토리의 상위 디렉토리로 이동하지 못합니다. 웹호스팅 서버에서 사용자들끼리 서로 다른 디렉토리에 옮겨다니지 않도록 하는 필수 설정 사항입니다.
<Directory />
AllowOverwrite on
</Directory>
<Directory /> </Directory> 지시자를 이용해서 디렉토리의 설정을 할 수 있습니다.
AllowOverwrite on
이것은 기존 파일에 똑같은 이름의 파일을 덮어 쓸 수 있게 하는 옵션이며 off 로 설정 하면 덮어쓰기가 금지됩니다.
<Anonymous ~ftp>
User ftp
Group ftp
UserAlias anonymous ftp
MaxClients 10
DisplayLogin welcome.msg
DisplayFirstChdir .message
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>
anonymous FTP 를 운영하는 옵션입니다. 기본 디렉토리가 ~ftp 로 되어 있는것을 볼 수 있는데 기본적으로 ftp 계정은 /etc/passwd 파일을 보면
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
이렇게 설정 되어 있으므로 기본적으로 anonymous FTP 는 작동하지 않는것이 기본값입니다.
UserAlias anonymous ftp
유저들이 anonymous 외에 ftp 로도 로그인 할 수 있게 하는 옵션입니다.
MaxClients 10
FTP 서버에 접속할 수 있는 최대 클라이언트 수를 지정합니다.
뒤에 메시지를 붙여 주면 클라이언트 수가 초과 될때 접속 차단 메시지를 보여주게 됩니다. %m 으로 최대 접속자 수를 출력할 수 있습니다.
MaxClients 10 “ %m 명까지 접속 할 수 있습니다 “
만일 접속자 수를 제한하지 않으려면 이 값을 none 으로 해 주면 됩니다.
DisplayLogin welcome.msg
클라이언트가 서버에 로그인 하였을때 보여주는 메시지를 설정해 줍니다.
메시지 파일 경로는 절대경로,상대경로 모두 설정 할 수 있으며
상대 경로로 사용하는 경우에는 anonymous FTP 의 기본 디렉토리가 기준이 됩니다.
DisplayFirstChdir .message
클라이언트들이 디렉토리를 이동할때에 보여지게 될 메시지 파일 명을 설정합니다.
다시말해 클라이언트들이 디렉토리를 이동할때에 디렉토리에 .message 파일을 넣어 놓으면 그 내용이 클라이언트들에게 보여지게 됩니다.
메시지 파일에는 특정한 변수를 사용해서 메시지 화면에 여러가지 정보를 보여줄 수 있습니다
%C 현재 작업 디렉토리
%E 서버 관리자의 이메일 주소
%F 사용 가능한 디스크 공간
%L 로컬 호스트 이름
%M 접속 가능한 최대 클라이언트 수
%N 현재 접속 되어 있는 클라이언트 수
%R 원격 호스트 이름
%u ident 프로토콜에 의해 확인된 사용자명
%U 로그인에 사용된 사용자 명
%T 현재시간
<Limit WRITE> DenyAll </Limit>
클라이언트가 명령어를 사용하는데 제한을 두는 옵션이 <LIMIT> 옵션입니다.
위의 설정은 WRITE 를 하지 못하도록 하는 옵션입니다.
이외의 지시자들
AnonRequirePassword on
익명 FTP 접근시 패스워드를 이메일로 넣도록 하는 설정입니다.
TimeoutIdle 900
클라이언트가 900 초간 아무런 명령을 입력하지 않는 경우 접속이 끊어지는 옵션입니다.
TimeoutNoTransfer 900
클라이언트가 900 초간 아무런 전송이 없으면 접속이 끊어지는 옵션입니다.
TimeoutLogin 300
로긴할때 로그인 입력 대시 시간으로 300 초내에 입력하지 않으면 접속이 해제됩니다.
ServerAdmin root@localhost
서버의 관리자 이메일을 설정하는 옵션입니다.
RootLogin off
FTP 로 root 가 로그인 할 수 있는지 여부를 설정하는 옵션입니다.
RateReadBPS 256
클라이언트의 속도를 제한하는 옵션입니다.
다운로드,업로드를 할때 전송 대역폭을 제한하는 지시자입니다.
RateReadFreeBytes 5120
대역폭의 제한없이 전송할 수 있는 바이트 양을 지정합니다.
MaxClientsPerHost 3 "Sorry, %m connection allow per one host"
하나의 호스트 컴퓨터로 부터 동시에 접근할 수 있는 수를 지정합니다.
MaxHostsPerUser 1 "Sorry, %m hosts allow per one user"
하나의 계정 아이디로 동시에 접속 할 수 있는 호스트 컴퓨터 숫자를 설정합니다.
LsDefaultOptions "-a"
ls 명령어의 –a 옵션으로 hidden 파일도 볼 수 있도록 하는 옵션입니다.
UpTime 12 DownTime 18
서버를 시간대 별로 운영하는것을 지정합니다.
위의 예는 오후 12시부터 6시까지 운영하는 설정입니다.
대부분 불편을 느끼는데 이걸 해결하는 방법을 간단히 적어보니 참조 하세요.
여기에 이 팁은 2003 버전을 손쉽게 사용하도록 해주는 기본팁 입니다.
1.시스템 시작시 ctrl+alt+del 안누르기
실행 - gpedit.msc 입력하고 엔터 나오는창에서
컴퓨터구성- windows 설정 -보안설정 - 로컬정책 - 보안옵션 -대화형로그온 ctrl+alt+del 이걸
더블클릭하거나 속성에서 사용으로 하여주고 확인해준다.
2.로그온시 암호 안물어보기 .
실행 - control userpasswords2 이걸 입력하고 나오는창에서 사용자이름과 암호 사용해야 로그인
할수있음 이앞에 체크를 지우고 확인하면 창이 하나 나오는데 여기에 설치시 설정한 암호를 적고
확인하면 된다.
3. 시스템 종료시 이벤트 추적기 표시 안함.
시작 → 실행 → gpedit.msc → 컴퓨터 구성 → 관리 템플릿 → 시스템 를 선택하고, 우측창에서
시스템 종료 이벤트 추적표시 를 더블클릭하여 "사용 안함" 으로 변경하고 확인한다.
4. Audio 서비스 및 Theme 서비스 활성화하기
Windows Audio 및 Theme 서비스를 활성화 시키기위해서는 서비스관리자를 실행시킨다.시작-실행
→ services.msc 입력하고 엔터
메뉴중 theme 를 더블클릭이나 속성에서 자동으로 해주고 적용하면 시작 버튼이 활성화되니
그걸 클릭해서 실행시킨다. 그럼 Theme 가 활성화되서 사용가능하다.
다음에는사운드를 사용하기위해서 windows audio 를 속성에서 자동으로하고 적용하면 시작버튼이
활성화되니 그걸 클릭해서 적용시킨다.
5. 활성화시킨 Theme 및 Audio 사용하기
제어판-디스플레이-설정-고급-문제해결-하드웨어가속을 최대로한다.
제어판-사운드및오디오장치-볼륨-스프커설정-고급-성능-오디오재생 (최대로한다)
샘플전환속도 (최상으로한다)
그리고 오디오 각종 성능을 최적화한다. 볼륨등 각종 시작음 종료음등..
6. 다이렉트 x 활성화하기
시작-실행에 dxdiag 입력하고 엔터 나오는창에서 디스플레이 이항목에서 가속을 최대로하고
3 가지 3 D 항목이 사용안함으로 되어 있는걸 사용으로 하여준다.
Directdraw 사용으로변경
Direct3d 사용으로 변경
agp 질감가속 사용으로 변경
소리에서 DirectX 기능 에 하드웨어 소리가속을 최대로한다.
7. 시스템 설정
내컴퓨터-속성-고급-시작및복구-설정-디버깅정보쓰기를 작은메모리덤프(64KB)로한다.
내컴퓨터-속성-고급-성능-설정-고급-아래위 두곳에 시스템으로 설정된 프로세서와 메모리
사용계획을 두곳다 프로그램으로 하여준다.
8. 인터넷 옵션 설정
도구-인터넷옵션-보안에서 보안을 보통으로 하여준다. 방법은
제어판-프로그램 추가/제거-windows 구성요소 추가/제거-Internet Exporer 보안강화구성-
이걸클릭후에 체크해제하고 밑에 자세히를클릭해서 연다-그럼 안에 관리자구성 과 기타사용자그룹
이렇게 두개가 보이는데 여기에 체크해제를한다. 그런다음에 확인하고나서 밑에 다음을 클릭
하면 된다. 그러면 잠시 작업후에 비활성화되는데 인터넷옵션 보안에는 보통으로 된다.
9. 메뉴팝업속도를 빠르게 하기
메뉴창이 열리는 속도가 느린것을 감지할수 있는데 빠르게 하는 방법이다.
시작 -> 실행창에서 regedit를 입력하여 레지스트리 편집창을 뛰운후
HKEY_CURRENT_USER\ControlPanel\desktop에서 MenuShowDelay항목의 값이 기본 400으
로 셋팅되어있느데 이걸 1~8 사이로 하여준다.
10. xp 처럼 디스플레이 사용하기
xp 처럼 바탕화면 아이콘이나 모양을 사용하려면 내컴퓨터-속성-고급-성능-설정-시각효과
여기서 두번째 최적모양으로설정 이걸 선택하고 확인해준다.
11. 스케너나 디지탈 카메라를 사용하려면.
관리도구-서비스-Windows Image Acquisition(WIA) 여기에 속성에서 자동으로 하여준다.
그후에 드라이버를 설치하거나 usb 로 설치하면 된다.
12. 내문서나 미디어플레이어 사용후에 흔적 지우기.
이팁은 기본이 아니지만 서비스 차원에서 제공한다. 익스창이나 미플 이나
내문서등 윈도에서 사용된 각종 흔적을 지우는 법이다.
실행-gpedit.msc 입력하고 엔터 나오는창에서
사용자구성-관리템플릿-작업표시줄및시작매뉴-여기에서 우측창에 다음 두가지를
더블클릭이나 속성에서 사용으로 하여준다. 재부팅후에 작동한다.
종료시 최근에 사용한문서 기록지우기 하고
최근에 사용한 문서 기록을 보관안함. 이두개를 설정하면된다. `
uname -a
Linux home.kuc.or.kr 2.4.20-8smp #1 SMP Thu Mar 13 17:45:54 EST 2003 i686 i686 i386 GNU/Linux
[root@ns home]# cat /var/log/dmesg | grep quota
VFS: Disk quotas vdquot_6.5.1
1) /etc/fstab 파일을 수정한다.
vi /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
LABEL=/home /home ext3 defaults 1 2
우선 home 을 쿼터를 걸려고 했으니 그 부분을 이렇게 수정함
LABEL=/home /home ext3 defaults,usrquota 1 2
usrquota 가 추가되었음 ^^;
/etc/fstab 파일을 수정한 후, 설정을 반영하기 위해서 시스템을 다시 부팅시키거나 파일 시스템을 다시 마운트(remount) 시킨다.
[root@ns home]# mount -o remount /home
[root@ns home]# mount
/dev/cciss/c0d0p5 on / type ext3 (rw)
none on /proc type proc (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/cciss/c0d0p1 on /boot type ext3 (rw)
/dev/cciss/c0d0p7 on /home type ext3 (rw,usrquota)
none on /dev/shm type tmpfs (rw)
/dev/cciss/c0d0p3 on /usr type ext3 (rw)
/dev/cciss/c0d0p2 on /var type ext3 (rw)
2) Quota 기록파일인 quota.user(또는 quota.group) 파일을 만든다.
[root@ns home]# touch /home/quota.user
[root@ns home]# chmod 600 quota.user
[root@ns home]# convertquota -u /home/
위 명령어 쳤는데 에러 뜨면 리붓 하번 해주면 됨 안되면 말고
그리고 ls -al 로 해서 대충 보면
aquota.user 이란 파일 하나 더 생김~
3) 디스크 사용 상태를 체크한다. 실행하여 이러한 작업을 할 수 있다.
[root@ns home]# quotacheck -avug
quotacheck: Cannot remount filesystem mounted on /home read-only so counted values might not be right.
Please stop all programs writing to filesystem or use -m flag to force checking.
위처럼 에러 뜨면 밑에처럼 하면 됨 안되면 역시나 말고
[root@ns home]# quotacheck -avugm
quotacheck: Scanning /dev/cciss/c0d0p7 [/home] done
quotacheck: Checked 4124 directories and 40103 files
4) Quota 시작하기
[root@ns home]# quotaon /home1
계정 용량 할당 하기
[root@ns home]# edquota bresting
Disk quotas for user bresting (uid 510):
Filesystem blocks soft hard inodes soft hard
/dev/cciss/c0d0p7 3126776 0 0 598 0 0
그러면 저런 화면이 뜸
block(soft = 0, hard=0)
block 은 지금 사용하고 있는 총 용량
soft 는 용량의 제한을 둬서 그걸 넘으면 에러 메세지를 보냄
hard 는 그 용량 되면 더이상 못씀
inodes (soft =0, hard=0)
이건 파일 게수를 뜻한 역시나 위와 같음
예를 들자면
Disk quotas for user bresting (uid 510):
Filesystem blocks soft hard inodes soft hard
/dev/cciss/c0d0p7 50 51200 56320 10 1500 1550
50 메가 넘으면 경고 메세지 보냄
55 메가 넘으면 더이상 못씀
1500 게 파일 넘으면 경고 메세지
1550 게 파일 넘으면 더이상 못씀
유예 기간
[root@ns home]# edquota -t
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/cciss/c0d0p7 7days 7days
쿼터 설정 상태
[root@ns home]# repquota -a
*** Report for user quotas on device /dev/cciss/c0d0p7
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 1216 0 0 141 0 0
nobody -- 37960 0 0 825 0 0
vpopmail -- 1688 0 0 181 0 0
bresting -- 3126776 0 0 598 0 0
fellen -- 26592228 0 0 1150 0 0
mysql -- 20 0 0 5 0 0
photo -- 24 0 0 6 0 0
my2pc -- 332756 0 0 2394 0 0
kang0927 -- 1410648 0 0 2713 0 0
down -- 6820940 0 0 1632 0 0
jhs1013 -- 2646524 0 0 1644 0 0
infoftp -- 9556676 0 0 1213 0 0
bibichu -- 4675392 0 0 4668 0 0
moriya -- 9892968 9900000 9950000 13858 0 0
heyworld -- 24 0 0 6 0 0
heyoh -- 8223824 0 0 75 0 0
issey -- 2285488 0 0 10063 0 0
hayan -- 1176884 0 0 1903 0 0
club -- 5672 0 0 748 0 0
쿼터 설정을 다른 사용자와 동일하게 설정 하기
edquota -p bresting bresting1 bresting2
bresting 의 환경을 bresting1 bresting2 에게 같이 적용
다중 사용자의 쿼터 적용
edquota -p bresting `awk -F: '$3 > 500 {print $1}' /etc/passwd`
awk 앞에는 숫자1 옆의 ` 그다음은 엔터 옆 ' ' passwd 는 숫자1 `
rsync란
rsync란 서로 다른 두 컴퓨터에 들어 있는 정보를 서로 동기화 시킬때 사용한다. 동일한 소스가 두군데 존재하고 한쪽을 편집했을때, 다른 한쪽에 편집한 부분을 업데이트 시켜줘야한다. 이때 모든 소스를 옮기게 되면 시간적으로 많은 낭비가 있기 때문에 rsync는 수정된 부분만 비교해서 옮겨 주게 된다. 그리고 anonymous 서버로도 설정할 수 있는등 많은 유용한 기능들이 들어있다.
rsh이나 ssh을 이용하여 전송하기
이것은 원격지의 호스트에 계정이 있고 rsync의 서버 데몬이 설정되어 있지 않을 경우 사용한다. 간단히 로컬에서도 cp 대신 사용할 수도 있다. ssh를 이용하면 안전하게 복사할 수 있다. 아래의 방법대로 하면 간단히 원격지로 복사할 수 있다.
shell> rsync -arvu -e ssh /from/directory/ to.hostname.com:/to/direcotry
클라이언트에서 실행
shell> rsync -avz -e ssh 210.222.18.105:/backup /backup
여기서 디렉토리를 써 줄경우 마지막 부분의 /가 중요한 의미를 가진다. 마직막에 /가 있을 경우는 그 디렉토리 내의 모든 파일을 의미하고 /가 없을 경우는 그 디렉토리 자체를 말하는 것이다. -arvu는 아래 부분을 참조하기 바란다.
원격지 서버 설정하기
먼저 리눅스 최신본을 설치하면 기본적으로 rsync가 설치된다. 그러나 xinetd를 이용하여 서버로 설정은 되어 있지 않기 때문에 서버로 사용할 수 있도록 설정을 해 주어야 한다.
xinetd.d에 rsync파일 추가하기
/etc/xinetd.d디렉토리에 rsync라는 파일을 만들고, 아래와 같은 내용을 입력한뒤, 저장한다.
service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}
/etc/services파일에도 아래와 갈은 내용이 없으면 추가해 주도록 한다.
rsync 873/tcp # rsync
rsync 873/udp # rsync
그리고 /etc/rc.d/init.d/디렉토리에서 xinetd를 restart 시켜준다.
shell> /etc/rc.d/init.d/xinetd restart
rsyncd.conf 파일 생성
/etc디렉토리에 rsync.conf라는 파일을 생성한다.
#motd = /etc/rsync.motd # file : message of the day
uid = nobody
gid = nobody
use chroot = no
max connections = 4
syslog facility = local5
pid file = /var/run/rsyncd.pid
[www.wangsy]
path = /somewhere/in/remote/host
comment = www.wangsy.com homepage
read only = false
uid = apache
gid = apache
auth users = wangsy
secrets file = /etc/rsyncd.secrets
위 파일과 함께 /etc디렉토리에 rsyncd.secrets파일도 함께 생성한다.
name:password
그리고 /etc/rsyncd.secrets파일의 permission을 rw-------로 해주는 것을 잊지 말도록 한다.
client에서 접근하기
서버 내용 내려받기
다음 명령을 통해서 서버의 내용을 다운 받을 수 있다.
shell> rsync -avz home.inzoo.co.kr::www.wangsy target_dir/
그리고 아래 명령을 통해서 로컬에서 수정된 파일을 서버에 반영할 수 있다.
shell> rsync -avz target_dir/ home.inzoo.co.kr::www.wangsy
위에서 -avz의 의미는 각각 다음과 같다. 자세한 사항은 rsync 홈페이지의 메뉴얼에서 확인할 수 있다.
-a, --archive archive mode
-v, --verbose increase verbosity
-z, --compress compress file data
-u, --update update only (don't overwrite newer files)
약간의 문제
client의 ip와 hostname이 lookup되지 않으면 remote호스트에서 접근을 허용하지 않는 문제가 있다. 이는 ADSL로 접속할 경우 연결이 되지 않게 되는 문제가 발생한다. 서버로 바로 접속하는 것 보다는 위 처음 방식인 ssh를 통한 접속 방법이 좀더 보안상 안전하기 때문에 이방법을 이용하는것이 좋을듯 하다.
깨지는 현상은 텍스트 모드에서 한글로 선택했을경우 생기는
부분이네요 ,,,,
해결방법은
#export LANG=c ----- 영문
#export LANG=ko ----- 한글
#cd /etc/sysconfig
여기서 sysconfig 디렉토리안의 내용을 볼께요.
#ls sysconfig
그러면 파일내용이 보일겁니다. 여기에 i18n이 있습니다.
그리고 여기서 i18n을 편집해야 합니다.
#vi i18n
편집하려면 i 혹은 a를 눌루면 insert 모드로 됩니다.
여기서 LANG="en_US"를 LANG="ko_KR" 혹은 LANG="ko_KR.eucKR"로 바꾸세요.
그다음에는 ESC키를 눌러 insert모드를 빠져나옵니다.
그런 후 :wq!라고 쳐서 저장하고 나옵니다.
그다음은 다시 부팅하세요.
LANG="ko_KR.eucKR"
SUPPORTED="ko_KR.eucKR:ko_KR:ko"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"