Windows2009. 8. 31. 12:21

 요즘은 윈도우를 사용 하시는 대부분분들이 최적화(?)된 윈도우를 사용 한다

   

예를 들어 snoopy xp, 블랙에디션 xp 등등

   

내 경우도 처음에는 저런 최적화는 찝찝하다고 아무런 튜닝이 되어 있지 않은 순수버전을 선호 했다

   

하지만 윈도우를 설치 시 시디키 치는 것 조차 귀찮아서 지금은 최적화 된 윈도우를 사용한다

   

뭐 지금은 저것조차 귀찮아서 고스트까지 사용하지만 ㅋ

   

아무튼 최적화된 윈도우를 설치를 하면 대부분 계정이 Administrator로 되어 있는 것을 볼 수 있다

   

보통 순수버전을 설치 시 Administrator 계정은 사용을 못하게 되어 있다

   

그럼 순수버전에서는 Administrator을 사용 못하는 것일까?

   

이미 설치된 윈도우에서 하는 방법도 있지만

   

지금 설치 시 Administrator 계정을 사용 하는 방법을 알아보겠다

   

이게 훨 쉽기 때문에 ㅎㅎ

   

각자의 능력으로 윈도우 XP 순수버전을 구해서 설치를 한다

   

여기서 팁을 준다면 윈도우 XP MSDN판 파일명은 보통

   

ko_windows_xp_professional_k_with_service_pack_3_x86_cd_vl_x14-87427

   

이거 일 것이다. 용량은 634MB

   

여기서 MSDN은 Microsoft Developer Network으로 MS프로그램 개발자 네트워크에 가입된

   

사람들의 편의상 웹 상에서 다운을 받을 수 있는 버전이다

   

MS에서 직접 받은 거니 윈도우에 아무 짓(?)도 안되어 있는 순수버전인 것이다

   

아무튼 자세한 거는 검색 해보면 쭉 나올 듯

   



윈도우를 쭉 설치 하다가 사용자 계정을 넣는 곳에서

   

SYSTEM 혹은 SERVICE로 치면 Administrator 계정을 사용 할 수 있을 것이다 (소문자도 됨)

   

혹은

위에서 나오는 화면에서 사용자계정 쳐야 한다 이전에 나오는 사용자계정 물어보는곳은 아니다

   

설치가 완료가 되면 계정이 Administrator으로 된것을 볼 수 있다

   

보너스로 윈도우 정품확인 방법은 시작 - 실행 - oobe/msoobe /a 치면 나온다

MSDN버전으로 설치 해서 그런지 정품인지 되어 있었다

   

업데이트를 하고 재부팅을 하니 이런것이 +_+

   

동의함 체크 하고 설치를 해보자

   

이제 저런 메세지는 안나온다

   

업데이트를 모두 해보고 다시 업데이트를 해보니

   

내가 설치 하지 않은 익스8만 나온다 업데이트도 잘 된다!!

Posted by 샤키
Computer2009. 8. 20. 11:46

예전에 프로젝트 보고서 작성 했을때 사용했다가 최근에 사용 해보려니 생각이 안나서

   

블로그에서 포스팅 해두고 까묵으면 볼 수 있도록 (근데 왜 이렇게 기억력이 안좋냐 ㅜㅜ)

   

샘플은 V3Lite를 이용 했다 (괜히 저작권 문제 되지는 않겠지 ;;;)

   

먼저 포토샵으로 이미지 2개를 불러 온다

   

포토샵 왼쪽에 위와 선택할 모양을 선택 한다

   

확대 할 부분 지정 한다

그후 일반적인 복사방식 Ctrl+C를 한번 누르고 Ctrl+V를 해서 붙여 놓는다

   

동그란 부분만 복사가 된것을 볼 수 있다

   

저 아이콘을 클릭 후

   

복사할 대상을 마우스 왼쪽으로 드래그해서 복사할 곳으로 옮긴다

   

그러면 복사대상이 위 그림처럼 넘어가는것을 볼 수 있다

   

여기서 Ctrl+T를 누르면 저런 사각형이 생긴다

   

   

마우스로 늘려준다 그후 엔터를 눌러준다

   

확대 시킨 이미지의 테두리를 만들기 위해

edit -> Stoke 눌러준다

   

Width : 말그대로 테두리 두께

Color : 테두리 색깔

   

3px의 검은색으로 만들면 위처럼 됩니다

   

이번에는 포토샵에서 화살표를 그리기 위해 위의 그림을 클릭한다

   

빨간칸을 먼저 클릭후

weight은 화살표의 굵기

Color은 말 그대로 색깔

start는 시작되는 화살표 모양

end는 끝날때 화살표 모양 (이거는 직접 해보면 이해가 됨)

   

위와 같이 화살표 모양이 되고 클릭하면 돋보기가 확대가 된것처럼 보여준다

(동그라미가 너무 커서 ㅜㅜ)

   

완료된 그림을 전체화면으로 본 모습

뭔가 어설프지만 내가 안 까묵으려고 하는거니 ㅋ

 

Posted by 샤키
Computer2009. 8. 17. 14:04

 순수버전(?)으로 XP3나 VISTA를 설치를 하였다면

바탕화면에 인터넷 익플로러가 없는것을 볼 수 있을것이다

   

정확한 이유는 생각이 안나는데 바탕화면에만 없는걸로 알고 있다

   

   

서비스팩2에만 해도 위와 같이 화탕화면 항목에 Internet Explorer 항목이 있는것을 볼 수 있다

   

서비스팩3에는 항목 자체가 없다 +_+

   



왜 이렇게 바뀌었는지... 암튼 수동으로 인터넷 익스플로러를 추가 시켜야 한다

   

바탕화면에 새폴더를 하나를 만들고

   

아무런 폴더에다가 폴더 이름을

Internet Explorer.{871C5380-42A0-1069-A2EA-08002B30309D}

와 같이 만든다

   

만드는 즉시 인터넷익플로러 아이콘으로 바뀔 수도 있고...

굳이 안그렇다고 하더라도 위에 만든 폴더를 바탕화면으로 드래그 한다

   

 





VISTA도 같은 방법으로 됩니다~
Posted by 샤키
Linux/Unix2009. 8. 11. 17:29

쉘 스크립트를 작성하려는 프로그래머를 위한 bash 프로그래밍 요약이다. 이 글의 목적은 프로그래밍을 가르치는 데에 있지 않다. 이미 하나의 프로그래밍 언어를 알고 있으면서 bash 스크립팅을 배우려고 하는 사람들을 위한 것이다.

프로그래밍의 기초

모든 bash 스크립트는 반드시 o/s에게 인터프리터로 무엇을 쓸 것이지 알려야 한다. 모든 스크립트의 첫번째 라인은 다음과 같아야 한다:
#!/bin/bash

다음 명령으로bash 스크립트를 실행 가능하게 만들어야 한다.
chmod +x filename

변수

변수를 만들어 값을 대입한다. 변수에는 데이터 타입이 없다(다른 언어에서처럼 변수의 타입을 정의하지 않고도 변수의 값으로 문자열, 숫자 등을 가진다).
varname=value

변수 값에 접근할 때는 변수 이름 앞에 $를 붙인다
echo $varname

명령 라인에서 인자로서 넘겨진 값은 $#를 통해 접근할 수 있다. 여기서 #는 넘겨진 값들의 배열 중 그 값의 인덱스이다. 이 배열은 1부터 시작한다.
command var1 var2 var3 .... varX
$1은 var1이 무엇이든지 그 값을 나타내며, $2는 var2의 값을 나타낸다. 나머지도 마찬가지이다.

내부에 정의된 변수들:

변수

용도

$1-$N

명령 라인으로부터 프로그램에 넘겨진 인자(변수) 저장한다.

$?

마지막 명령이 실행되었을 때의 탈출 값을 저장한다.

$0

입력된 명령의 첫번째 단어( 프로그램의 이름) 저장한다.

$*

명령 라인에서 입력된 모든 인자들(($1 $2 …) 저장한다.

"$@"

명령 라인에서 입력된 모든 인자들을 개별적으로 따옴표를 씌운 형태("$1" "$2" ...) 저장한다.

인용 부호

보통의 따옴표("like these")는 쉘이 공백 문자를 무시하도록 해서 넘겨진 하나의 인자 또는 사용할 문자열로 생각하게 한다. 하지만 따옴표 안의 특수 문자는 인식한다.

작은 따옴표('like this')는 어떤 문자열이 넘겨지든 간에 쉘이 모든 특수 문자를 무시해서 해석하도록 한다.

역 따옴표(`command`)는 다른 기능을 한다. 한 명령의 결과를 다른 명령에서 사용하고 싶을 때 역 따옴표를 사용한다. 예를 들어, 변수 contents 의 값을 현재 디렉토리 안에 있는 파일의 리스트와 같게 하고 싶다면 다음과 같은 명령을 입력하면 된다: contents=`ls`. ls 프로그램의 결과가 변수 contents에 들어 간다.

논리와 비교

루프에의 입장/탈출 조건을 체크하는 if-then 문장과 같은 조건 연산식의 계산에는 test라 불리는 명령이 사용된다.

test expression
또는
[ expression ]

>

수치 비교

int1 -eq int2

int1 int2 같다면 True 리턴한다.

int1 -ge int2

int1 int2보다 크거나 같으면 True 리턴한다.

int1 -gt int2

int1 int2보다 크면 True 리턴한다.

int1 -le int2

int1 int2보다 작거나 같으면 True 리턴한다.

int1 -lt int2

int1 int2보다 작으면 True 리턴한다.

int1 -ne int2

int1 int2 다르면 True 리턴한다.

 

문자열 비교

str1 = str2

str1 str2 일치하면 True 리턴한다.

str1 != str2

str1 str2 다르면 True 리턴한다.

str

str null 아니면 True 리턴한다.

-n str

str 길이가 0보다 크면 True 리턴한다.

-z str

str 길이가 0 같으면 True 리턴한다.(길이가 0 것은 null 다르다)

 

파일 비교

-d filename

파일 filename 디렉토리면 True 리턴한다.

-f filename

파일 filename 일반적인 파일이면 True 리턴한다.

-r filename

파일 filename 프로세스에 의해 읽혀진다면 True 리턴한다.

-s filename

파일 filename 길이가 0 아니면 True 리턴한다.

-w filename

파일 filename 프로세스에 의해 쓰여질 있다면 True 리턴한다.

-x filename

파일 filename 수행 가능하다면 True 리턴한다.

 

표현식 비교

!expression

expression true 아니면 true 리턴한다.

expr1 -a expr2

expr1 expr2 true이면 true 리턴한다. ( && , and )

expr1 -o expr2

expr1이나 expr2 적어도 하나가 true이면 true 리턴한다. ( ||, or )

 

논리(이어서)

If...then

if [ expression ]
        then
                commands
fi
 

If..then...else

if [ expression ]
        then
                commands
        else
                commands
fi
 

If..then...else If...else

 
if [ expression ]
        then
                commands
elif [ expression2 ]
        then
                commands
else
                commands
fi

Case select

case string1 in
        str1)
                commands;;
        str2)
                commands;;
        *)
                commands;;
esac
 

string1은str1, str2와 비교된다. 만일 이 중 하나가 string1과 일치한다면, 이중 세미콜론이 나올 때까지 commands가 실행된다. 만일 어느 것도 string1과 일치하지 않는다면, *에 해당하는 commands가 실행된다. 이것은 디폴트 경우로, *가 모든 문자열에 해당하기 때문이다.

반복(루프, loop)

 
for var1 in list
do
        commands
done

이것은 list 안의 각 항목에 대해 한번씩 실행된다. 이 list는 공백 문자로 구분된 여러 개의 단어를 담고 있는 변수(ls나 cat 명령의 출력과 같은)일 수 있다. 또는 문장에 직접 입력된 값들의 리스트일 수도 있다. 루프를 돌 때마다, 변수 var1에는 리스트의 항목 중 현재 항목이 대입되는데 마지막 항목에 이를 때까지 계속 반복된다.

 
while [ expression ]
do
        commands
done
 
until [ expression ]
do
        commands
done
 

함수

함수 만드는 법:

fname(){
        commands
}
 

함수를 부를 땐 다음의 문법을 사용한다: fname

인자를 받아들이는 함수 만들기:

fname2 (arg1,arg2...argN){
        commands
}

인자 있는 함수 부르는 법: fname2 arg1 arg2 ... argN

 


오늘은 계속 퍼오기만... 
출처: http://coffeenix.net/doc/shell/bash_cheat.htm
원문: http://www.linuxnewbie.org/nhf/intel/programming/bash_cheat.html
Posted by 샤키
취미2009. 8. 8. 15:14


1. 테스트메뉴 : #7583538324#8378#
GPS Port Map - UARTI의 Device : DM Service
         - DM의 Service : USB DIAG Device



2. QPST와 wmrmake을 통하여 게임넣기
registry.dat : wipi - sys
menu1.dat : wipi - sys -wam
게임 저장하는곳 : wipi -ctn


여기에 필요한 프로그램은 스사모 (http://skysamo.com) 에서...
가끔 게임 넣고 싶을때 까묵어서 이렇게 포스팅을 해놓을려고.. +_+


PS : 혹시나 동영상보고 따라 하시려는분은 KTF, LGT는 안된다고 하네요
   (ex U160K, U160L 모델


출처 : http://cafe.daum.net/u160
Posted by 샤키
Linux/Unix2009. 8. 7. 14:28

오늘 해커스쿨 운동장(?)에서 놀다 보니 2>/dev/null 관련된 문제가 있었다

   

일단 문제는 역시 내 수준하고는..... 너무 어려워 ㅜㅜ

   

암튼 그래서 먼저 풀어 보신분들의 해답(?)등을 참고 하다보니 위에 같은 명령어가 나오길래...

   

/dev/null 알겠는데...

   

1>/dev/null

2>/dev/null

   

은 처음 보는거라 생소 했다.. 그래서 네이버에게 물어보니 이러한 답변이...

   

A.

   

B.

   

C.

   

일단 A와 B은 같은 의미

   

그럼 B와 C의 차이는 뭐냐

   

1의 의미는 STDOUT(standard output)

2의 의미는 STRERR(standard error)

   

STDOUT은 표준출력으로, 정상적인 메시지를 출력하고

STDERR은 표준에러로, 에러메시지를 출력하는것이다

   

다시 말해

B는 표준출력을 /dev/null로 redirection하고 (정상적인 메시지를 null로)

C는 표준에러를 /dev/null로 redirection 한다 (에러메시지를 null로)

   

정상적인 메시지는 안보인다

   

위와 다르게 Permission denied인 에러메시지들은 안보인다

   

   

표준출력, 표준에러 그리고 표준입력도 있는데 이것을 리눅에서는 "파일"이라고 부른다.

   

   



PS: /dev/null 자체를 모르시는 분도 계실듯..

나는 이것을 쉽게 생각해서 "블랙홀"이라고 배웠다

이파일에 쓰는 모든것은 영원히 사라진다는것으로 아무것도 아닌(null) 장치파일이라고 볼수 있다(?)

어떠한 작업의 출력되는 내용을 보고 싶지 않을때, 이곳으로 그 출력을 보내버리면,

아무것도 보여지지 않게 되는것이다. 이럴때 아주 유용하게 쓰이게 된다

파일을 지울때는 rm 명령어로 지우면 되겠지만 텍스트로 이루어진 로그파일이라도

그 로그파일이 시스템에서 사용중일수 있다 그러면 삭제하는것은 위험 하기 때문에

그럴때

"/dev/null > 로그파일.log"

위와 같이 해주면 로그파일의 속(?)을 비워주게 되는것이다.

   

Posted by 샤키
Linux/Unix2009. 8. 6. 12:10

   

Linux 및 Unix 계열 편집기인 vi에서 옆에 숫자 라인 나오게 하려면

   

:set nu를 치면

   

이와 같이 라인이 보인다

   

다시 없애려면 :set nonu를 사용하면 된다

   

다시 없애진것을 볼수 있다

   

자주 까먹는 명령어는 이런식 으로 포스팅 해야 겠음

Posted by 샤키
Linux/Unix2009. 8. 5. 12:06

리눅스를 배포하거나 오픈 소스를 배포 하는곳을 가보면 미러 사이트가 링크 되어 있는것을 볼수 있을것이다

이러한 미러 사이트는 주 사이트의 데이터를 그대로 복사해와 주사이트와 동일한 서비스를 제공 하는 것이다

원격 서버의 데이터를 복사해 와서 원본과 동일한 데이터 상태를 유지하는 것을 미러링(mirroring) 혹은

서버 동기화 (server syncronization)라고 한다

   

이러한 미러링을 가능 하게 해주는 것이 rsync다 쉽게 말해 rsync는 여러 대의 서버들이 동일한 정보를 가질 수 있도록 해주는 서버 동기화 프로그램이라 할수 있는데 원격지 시스템으로의 백업에도 응용할 수 있다

   

패키지가 설치 되어 있는지 확인 한다

CentOS 경우 4.7이상이면 별도 설치 필요 없이 설치가 되어 있을 것이다

   

rsync는 ssh를 사용할수도 있고 임의적으로 873포트를 사용 할 수도 있다

   

873포트는 위와 같이 테스트 해볼 수 있다 포트가 위와 같이 열리지 않았다면

   

chkconfig rsync on을 사용하여 동작을 시킬 수도 있다

하지만 제 경우 보안(?)을 위해 ssh만으로 사용 했다

   

   



사용방법

# rsync [option] [rsync 서버]:[서비스명] [다운로드할 위치]

   

option

-a : archive mode (심볼릭 링크, 속성, 퍼미션, 소유권 등 보존)

-r : 하위 디렉토리 포함

--delete : 서버 동기화 후 rsync 서버에서 파일이 삭제되었으면, 클라이언트도 대상 파일을 삭제하는 옵션

-v : verbose mode (자세한 정보 출력)

-z : compress (전송시 압축)

-e ssh : ssh를 이용한 rsync 동기화

--no-l : 심볼릭링크은 제외하고 동기화

   

동기화를 해본 예... 아래에 속도까지 표시 된다

   

파일을 지우고 동기화를 해보자

   

동기화 하면서 알아서 삭제 해주는 것을 볼수 있다

   

이와 같이 rsync는 백업 하는데 많이 사용한다

Posted by 샤키
Linux/Unix2009. 8. 5. 11:17

밑으로
#! /bin/bash
echo "구구단"
        for((i=2;i<=5;i++))
                do
                for((j=1;j<=9;j++))
                        do
                num=`expr $i \* $j`
                echo " $i X $j = $num "
                        done
                echo ""
                done

2 X 1 = 2
 2 X 2 = 4
 2 X 3 = 6
 2 X 4 = 8
 2 X 5 = 10
 2 X 6 = 12
 2 X 7 = 14
 2 X 8 = 16
 2 X 9 = 18

 3 X 1 = 3
 3 X 2 = 6
 3 X 3 = 9
 3 X 4 = 12
 3 X 5 = 15
 3 X 6 = 18
 3 X 7 = 21
 3 X 8 = 24
 3 X 9 = 27

 4 X 1 = 4
 4 X 2 = 8
 4 X 3 = 12
 4 X 4 = 16
 4 X 5 = 20
 4 X 6 = 24
 4 X 7 = 28
 4 X 8 = 32
 4 X 9 = 36

 5 X 1 = 5
 5 X 2 = 10
 5 X 3 = 15
 5 X 4 = 20
 5 X 5 = 25
 5 X 6 = 30
 5 X 7 = 35
 5 X 8 = 40
 5 X 9 = 45

옆으로
#! /bin/bash
echo "구구단"
        for((i=1;i<=9;i++))
                do
                for((j=2;j<=5;j++))
                        do
                num=`expr $j \* $i`
                echo -n " $j X $i = $num  "
                        done
                echo ""
                done

 2 X 1 = 2   3 X 1 = 3   4 X 1 = 4   5 X 1 = 5 
 2 X 2 = 4   3 X 2 = 6   4 X 2 = 8   5 X 2 = 10 
 2 X 3 = 6   3 X 3 = 9   4 X 3 = 12   5 X 3 = 15 
 2 X 4 = 8   3 X 4 = 12   4 X 4 = 16   5 X 4 = 20 
 2 X 5 = 10   3 X 5 = 15   4 X 5 = 20   5 X 5 = 25 
 2 X 6 = 12   3 X 6 = 18   4 X 6 = 24   5 X 6 = 30 
 2 X 7 = 14   3 X 7 = 21   4 X 7 = 28   5 X 7 = 35 
 2 X 8 = 16   3 X 8 = 24   4 X 8 = 32   5 X 8 = 40 
 2 X 9 = 18   3 X 9 = 27   4 X 9 = 36   5 X 9 = 45

Posted by 샤키
Linux/Unix2009. 8. 5. 11:12

언어 중에 for문을 이해 하는데 별모양 만들기만한게 없을것이다
근데 많은 언어중 shell 이냐면 
요즘 쉘스크립트를 공부중이라 예전 기억을 살려서 C로 해본것을 쉘스크립트로 작성해보는중이다

#! /bin/bash       
                for((i=0;i<9;i++))
                do
                for((j=0;j<i+1;j++))
                        do
                echo -n "*"
                        done
                echo ""
                done

출력
*
**
***
****
*****
******
*******
********
*********


#! /bin/bash

        for((i=9;i>0;i--))
                do
                for((j=1;j<i+1;j++))
                        do
                echo -n "*"
                        done
                echo ""
                done

출력
*********
********
*******
******
*****
****
***
**
*


계속 업데이트 중....

Posted by 샤키