반응형

$ htpasswd -c /etc/apache2/dav_svn.passwd [username]
New password:
Re-type new password:
Adding password for user [username]
$


아파치를 통해 authorization을 할 때, 새로운 사용자 계정을 추가하여 SVN 사용하도록 하려면 위와 같이 추가할 수 있다.
반응형
블로그 이미지

Bryan_

,
반응형
테스트 환경: MS Visual Studio 2005 Professional (다른 버전에서는 작동여부를 알 수 없음)

파이어폭스에서 탭 전환을 하려다가 실수로 비주얼스튜디오에서 단축키를 누르면서 알게 된 몇몇 (왠지 쓸데없어 보이지만ㅋㅋ) 기발한 단축키들을 발견했다.
몇몇 키는 알고 있으면 코드 수정할 때 유용하게 쓰일 수도 있을 듯.. ^^


Ctrl + T:
커서 바로앞의 글자와 바로뒤의 글자 위치를 바꾸고, 커서도 바뀐 곳으로 넘어간다.

예) 1aaaaaaa 라고 입력해 두고, 1 바로 뒤에 커서를 둔 후에
Ctrl + T 를 세 번 누르면, aaa1aaaa 가 된다.


Shift + Ctrl + T:
특수문자(공백 포함)를 사이에 둔 양 옆의 문자열의 위치를 서로 바꾼다.
가장 적절한 용도는 operator를 사이에 두고 양쪽 변수의 위치를 바꾸는 게 아닐까 예상된다.

예) int myVariable = yourVariable ;
위의 구문에서, (맨끝 세미콜론은 제외하고) 밑줄 친 곳의 아무 곳에서나 커서를 두고 Shift + Ctrt + T를 누르면,
int yourVariable = myVariable; 로 바뀐다.

예2) 만약 맨 끝의 세미콜론 뒤에 커서를 두고 단축키를 누르면,
그 아랫줄에 있는 처음 보이는 어떠한 문자열과 위치가 바뀐다.


Ctrl + U:
커서 바로 뒤에 위치한 글자가 대문자인 경우, 소문자로 바꾼다.
커서 바로 뒤의 글자가 영어 대문자가 아닐 경우 아무 변화 없음.


Ctrl + L:
커서가 위치해 있는 라인 전체를 지운다.
이것은 유닉스의 vi에서 입력모드가 아닐 때 "dd"를 누르는 것과 같은 효과.


Ctrl + W:
커서가 위치해 있는 곳에 있는 곳의 '단어'를 선택한다.
기본적으로 공백, 콤마 등으로 구분되는 한 단어를 선택해 준다. 마우스 더블클릭과 같은 기능.
만약 특수문자와 공백의 조합으로만 된 문자열에서 단축키를 누르면, 공백으로 구분되는 특수문자들의 모임을 선택한다.
반응형

'Development' 카테고리의 다른 글

if-else vs. if-return: 코딩 스타일과 가독성의 차이  (1) 2017.03.28
블로그 이미지

Bryan_

,
반응형
OS: Ubuntu 8.04 desktop (AMD64)

64비트 기반의 리눅스(우분투)에서, 실행파일이 존재하는 정확한 위치에 가서도 프로그램을 실행하면 "no such file or directory" 에러가 나면서 실행되지 않을 때가 있다.

이와 관련해서 내가 직접적으로 직면한 문제는 라이센스 관리 프로그램인 "lmgrd"를 64비트 리눅스 서버에서 실행하려고 했을 때였다.

그럴 때는 32비트용으로 컴파일된 프로그램을 실행할 수 있는 라이브러리를 설치해 주면 된다.

$ sudo apt-get install ia32-libs lib32gcc1 lib32stdc++6 libc6-dev-i386 gcc-multilib


반응형
블로그 이미지

Bryan_

,
반응형
(예) user 테이블에 있는 h_id 필드를 home 테이블의 기본키인 home_id와 외래키로 연결하고자 할 때:

mysql> ALTER TABLE user ADD CONSTRAINT
       -> h_id FOREIGN KEY(h_id)
       -> REFERENCES home(home_id) ON DELETE CASCADE ON UPDATE CASCADE;



반응형
블로그 이미지

Bryan_

,
반응형
ns 시뮬레이터 버전: 2.33


ns-2에서 802.11을 사용하는 노드의 transmission range는 default가 아마 250m일 것이다.
라디오 채널을 바꾸면서 간섭의 영향을 받는 경우와 그렇지 않은 경우를 비교할 일이 생겨서, multi-hop path에서 단 하나의 중간 노드만 간섭의 영향을 받도록 아래 그림처럼 디자인을 했었다.

(시나리오 1)
S --- A === B === C --- D
                 ||
                 X
                 Y

위 그림에서 B와 X는 250m 미만이면서 같은 라디오 채널을 써서 서로간에 간섭이 생기도록 되어 있고, A와 C는 X로부터 250m 밖에 있도록 했다.
여기서 S에서 D까지 데이터를 전송하고, X가 Y에게 CBR 트래픽을 발생시키면서 B의 전달을 방해하는 시나리오이다.


이제 간섭의 영향을 받지 않는 환경을 만들었다.
(시나리오 2)
S === A --- B --- C === D
                 ||
                 X
                 Y

여기서 B는 X가 발생시키는 트래픽과 다른 라디오 채널을 쓰기 때문에, X로 인한 간섭 없이 데이터를 전달해 주어야 정상이다.
그런데, 실제로는 위의 명백하게 간섭이 발생하는 경우보다 도리어 결과 (end-to-end throughput)가 더 나쁘게 나왔다. -_-
뭥미...


알고 보니, ns-2에서 RTS/CTS를 주고받는 범위가 데이터의 transmission range와 다르게 정의되어 있었다.
일반적으로 RTS/CTS 등의 메세지로 간섭을 일으키는 범위는 데이터 전송범위의 2배~2.5배 정도 된다고 한다.
그래서 ns-2에서도 그 범위가 500m가 넘게 (정확히 얼마였는지 기억안남 ㅠ) 정의되어 있다는...

결국 A와 C도 알고보니 X의 간섭 범위 안에 들어 있었던 것이다. ㅠ_ㅠ
거리를 재조정해서 A와 X가 RTS/CTS로 인한 영향을 받지 않을 만큼 충분히 거리를 띄워놓았더니 그제서야 기대하던 결과가 나왔다.
나중에 다른 무선 간섭 실험을 할 때도 참고해야겠다..
반응형
블로그 이미지

Bryan_

,