앞의 글에서, Nginx Proxy Manager(이하 npm)의 설치 및 초기 설정에 대해서 다루었다. 여기서는 뒷단 서버로 연결하는 설정을 다룬다.

 

Proxy Host 설정

상단의 Dashboard 탭 > Proxy Hosts를 누르거나, 상단의 Hosts 탭 > Proxy Hosts를 누르면, 도메인별 proxy 설정을 할 수 있다. Add Proxy 버튼을 눌러 다음과 같이 채워준다.

static.example.com를 minio 9000/tcp에 연결하는 예제

  • Domain Names: 사용하고자 하는 domain 이름을 적는다. 도메인 이름을 입력하고 엔터(혹은 탭키)를 입력하여 그림과 같이 전체 이름이 회색 블럭으로 입력되도록 한다.
  • Scheme: SSL termination은 npm이 담당하고, npm과 upstream 간에는 HTTP 통신으로 단순화하려고 하니, http로 유지한다.
  • Forward Hostname / IP: 연결시키고자 하는 호스트이름 혹은 IP주소를 입력한다. 다른 docker container 호스트명(hostname 설정을 별도로 하지 않은 경우, container_name)을 직접 입력해도 된다.
    • 공유기(라우터)의 DHCP가 고정으로 할당하는 IP가 있거나 docker network 내의 IP를 입력해도 좋으나, 공유기 설정이 바뀌거나 docker network가 바뀌는 경우 IP도 같이 바뀔 수 있다. 가급적이면 호스트명을 입력하고, 호스트명으로 해당 container 혹은 서버에 접속할 수 있도록 유지하는 것이 좋다.
  • Forward Port: 연결시키고자 하는 호스트에 접속할 수 있는 포트를 입력한다. 같은 docker network에 있는 다른 container에 접속시키는 경우, 굳이 expose로 container의 포트를 docker host에 노출시키지 않아도 된다. 다만, Forward Hostname / IP 부분에 docker host의 IP를 적었을 경우: docker container의 포트를 expose로 host에 노출시키고, 해당 포트를 적어주어야 한다.
  • Block Common Exploits: 활성화하게 되면, SQL injection, file injection, spam block, 몇몇 crawler를 차단, 그리고 몇가지 공격으로부터 차단하는 기능을 제공한다.
  • 위의 세가지 예제(nginx/apache, minio, notebook)에 맞게 적어보면
    • nginx/apache
      • Domain Names: example.com
      • Scheme: http
      • Forward Hostname / IP: nginx (혹은 apache)
      • Forward Port: 80
    • minio
      • Domain Names: static.example.com
      • Scheme: http
      • Forward Hostname / IP: minio
      • Forward Port: 9000
    • notebook
      • Domain Names: nb.example.com
      • Scheme: http
      • Forward Hostname / IP: notebook
      • Forward Port: 8080

다른 패키지 없이, 공인 IP를 알아낼 필요가 생겼다. 요구사항은 다음과 같다.

  • 다른 패키지를 사용하지 말고 python3의 기본 built-in 패키지만 사용할 것 (python3.11)
  • crontab에 등록하여 사용할 것
  • 여러 네트워크 인터페이스(랜카드)가 사용 가능한 상황에서 특정 네트워크 인터페이스를 사용하도록 할 것
    • 두 개의 랜카드가 eth0, eth1로 인터넷에 접속 가능한 시스템에서, 특정 네트워크 인터페이스를 지정하여 public IP를 받아오는 것

 

 

하나의 서버에서 여러개의 도메인에 대한 요청을 처리하기 위해서는 nginx나 apache등의 도메인별 설정을 이용해서 구현이 가능하다. 최근 보안 이슈로 HTTP만으로 웹서비스를 제공하는 경우는 거의 없기에 HTTPS를 위한 인증서를 같이 제공해야하는데, 이는 Let's encrypt 등의 인증기관을 이용하면 무료로 쉽고 빠르게 설정할 수 있다.

다만, 도메인별 설정과 인증서 설정을 웹UI를 통해 쉽게 설정할 수 있는 패키지가 있으니, Nginx Proxy Manager(이하 npm)가 그것이다.

 

Npm은 Nginx의 Reverse Proxy 기능을 이용해서 뒷단(upstream)에서 제공할 다양한 웹 기반의 서비스들의 첫 출입구를 담당해준다. 특징을 몇가지 적어보면:

  • 여러 도메인들에 대한 설정을 UI를 기반으로 쉽게 설정할 수 있다.
  • SSL termination을 제공하여 뒷단 서버와의 소통을 HTTP만 하게 함으로 뒷단 서버의 설정을 간단하게 할 수 있다.
  • HTTP/2, HSTS를 지원하지 않는 웹서버라도, proxy 단에서 지원한다. 또한, websocket를 지원하는 뒷단 서버에게 websocket을 연결한다.
  • nginx의 server, location 등에 추가해야하는 설정들(proxy_pass, proxy_set_header 등)을 추가로 설정할 수 있다.
  • 설정을 저장할 때마다 nginx reload를 실행하고 online/offline 등 상태를 보여주어 설정을 즉시 적용하고 상태를 확인할 수 있다.
    • 다만, 이것은 단점이 되기도 하는데, 잘못된 설정이 저장되었을 때 그 설정이 바로 적용되어 서비스에 문제가 될 수 있다.
  • Docker로 쉽게 사용할 수 있도록 Dockerfiledocker-compose 예제파일을 제공하며, dockerhub에서도 이미지를 제공(2024/04 기준 167M docker pulls)하고 있다.
    • Docker 이미지는 64비트 아키텍쳐(arm64) 뿐 아니라 M1, M2, M3등 Apple silicon(arm64)을 위한 아키텍쳐도 지원한다.
  • 2024년에 들어서는 버젼 release가 빠른 편은 아니지만, 코드는 자주 업데이트 되는 편이다.

여기서는 집에서 소규모로 작게 운영하는 웹사이트들을 가정하고 설명하기로 한다. 실제 production 환경에서 사용하기 위해서는 더 나은 솔루션(AWS의 경우, WAF + ALB SSL termination 등)이 있기 때문에, 높은 트래픽과 높은 가용성이 필요로 하는 환경보다는 낮은 트래픽에 조금 더 쉽게 사용할 수 있는 운영환경에 초점을 맞추고 있다. 또한, 개인적으로 사용하는 homelab에는 서비스들을 docker container로 운영하고 있지 때문에, 여기서도 docker-compose를 이용하여 docker container로 운영하는 방식을 기준으로 설명한다. Docker container들끼리는 docker network로 통신하면 되므로, 개별 서비스에 직접 접근해야하지 않는 이상 각 서비스의 포트를 호스트에 직접 노출시키지 않아도 된다.

 

네트워크 설정

가정집에서 사용 중인 인터넷 환경을 고려해보면, 대개 다음과 같다.

 

공유기에서 서버로 TCP 80/443 포트가 모두 서버로 향하게 설정하는 것이 필요하다. 또한, 서버에서도 npm이 직접 80과 443번 포트를 점유할 수 있도록 설정해야한다. (사용하는 OS환경에 따라 80/443 포트를 이용하기 위해서는 root 권한이 필요할 수 있다.)

 

서버에서는 HTTP로 통신하는 여러 서비스들이 docker container 위에서 운영 중인 것으로 가정한다.

  • npm과 별개로 웹서비스를 제공하기 위한 nginx 혹은 apache (example.com 80 포트)
  • S3와 호환되는 고성능 스토리지 서비스인 MinIO (static.example.com, 9000 포트)
  • jupyter notebook (nb.example.com, 8080 포트)

 

Docker compose

# docker-compose.yml
version: '3.8'

services:
  npm:
    container_name: npm
    image: jc21/nginx-proxy-manager:2.11.1
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    # MySQL/Maria DB가 준비되어 있지 않다면, 아래 environment항목을 삭제 혹은 comment out
    environment:
      DB_MYSQL_HOST: ${NPM_DB_MYSQL_HOST}
      DB_MYSQL_PORT: ${NPM_DB_MYSQL_PORT}
      DB_MYSQL_USER: ${NPM_DB_MYSQL_USER}
      DB_MYSQL_PASSWORD: ${NPM_DB_MYSQL_PASSWORD}
      DB_MYSQL_NAME: ${NPM_DB_MYSQL_NAME}
    volumes:
      - ./nginx-proxy-manager/data:/data
      - ./nginx-proxy-manager/letsencrypt:/etc/letsencrypt
    healthcheck:
      test: ["CMD", "/bin/check-health"]
      interval: 10s
      timeout: 3s
    networks:
      - default
      # 마찬가지로, MySQL 혹은 Maria DB가 준비되어 있지 않다면, 아래 db-network 부분을 삭제
      - db-network

networks:
  default:
    name: ${NETWORK_NAME}
  # 마찬가지로, MySQL/Maria DB가 준비되어 있지 않다면, 아래 db-network 부분을 삭제
  # MySQL/Maria DB를 사용하고, 해당 서비스가 docker container에서 특성 network를 사용 중인 것을 가정
  db-network:
    name: ${NETWORK_NAME_STORAGE}
    external: true
# .env 파일 - docker-compose.yml에서 사용될 변수들을 정의한다.
NPM_DB_MYSQL_HOST=
NPM_DB_MYSQL_PORT=
NPM_DB_MYSQL_USER=
NPM_DB_MYSQL_PASSWORD=
NPM_DB_MYSQL_NAME=

NETWORK_NAME=
NETWORK_NAME_STORAGE=
  • jc21/nginx-proxy-manager 이미지를 사용한다. (2024년 4월 기준으로 2.11.1이 최신)
  • 80/443 포트는 reverse proxy 자체를 위해서, 81번 포트는 reverse proxy 설정을 위한 관리페이지의 접근을 위해서 열어둔다.
    • 80번 포트를 열기 위해서 root 권한이 필요할 수 있다.
  • volumes 항목에서 nginx-proxy-manager가 사용할 data 디렉토리와 인증서 디렉토리(letsencrypt)를 호스트의 특정 디렉토리를 사용하도록 하고 있다.
  • environment 항목에서는 npm이 여러 도메인에 대한 설정을 MySQL에 저장하도록 하고 있다. 만약 MySQL 등이 준비되어 있지 않다면 아래 항목들을 삭제한다. MySQL를 따로 준비하지 않았다면, 이 docker compose 안에 추가해도 되지만, 없어도 sqlite를 사용해서 잘 동작한다
    • environment 항목 전체를 삭제
    • services > npm > networks > db-network 항목을 삭제
    • networks > db-network 항목 전체를 삭제

준비가 되면, docker compose 명령을 이용해서 서비스를 실행시킨다.

docker compose up -d
# docker 버젼에 따라서는
# docker-compose up -d

 

관리도구 설정

도메인별 proxy 설정을 추가하기 위해서는 81번 관리포트로 접근한다. 80/443, 그리고 81번 포트를 열어두었기 때문에 웹브라우져로 http://<서버 주소>:81 를 통해 접속한다. Mac이나 리눅스 개발 환경에서 직접 설정했을 경우, http://localhost:81 혹은 http://127.0.0.1:81 로 접속한다.

 

처음 로그인 시에는 이메일주소 admin@example.com / 비밀번호 changeme 로 접속한다. 첫 접속 후, 관리자 계정의 이름과 이메일 주소, 비밀번호를 설정한다.

 

다음 글에서는 실제로 proxy 설정하는 방법에 대해서 다루어본다.



제주도 갈때마다 가본다 가본다 하고 못 가보다가 이제서야 가본 서연의 집!

영화 촬영 당시의 건물은 촬영용으로 지어져 안전하지 못 했던데다가 지난해 태풍으로 무너졌다고 한다.


다시 짓는다는 말은 그 전부터 있었는데, 2012년 9월 착공하여 올해 3월 27일에 새로 오픈하였다.




입구에서 맞아주는 까페 안내 문구!





평일이지만, 추석 연휴가 있는 주의 월요일이라 그런지 사람은 많았다.


까페 주변은 그냥 민가이기 때문에, 주변에 거주하시는 분들의 입장에서는 까페 오픈과 더불어 갑작스레 늘어난 유동인구로 정신없진 않을까 걱정되기도 했다.








입구를 지나면 바로

엄태웅과 한가인이 므.. 므흣했던!

아.. 아닙니다..







실외를 보면, 햇빛을 쬐며 바다를 볼 수 있는 비치체어가 마련되어 있다.

근데 아직 햇빛이 너무 강해서 사람들은 많이 없었고 ㅎㅎ





사진에 흰티 입으신 분이 이곳에서 일하시는 분들의 옷을 입고 계신데,

GEUSS......


까페 곳곳에 영화의 디테일을 보여주는 요소가 많이 있다. 예를들면,






입구를 지나면 나오는 우물가

발자국




영화 소품으로 사용된 CD플레이어와 전람회 CD



반사된 면이 있어 조금 아쉽긴 하지만, 승민이 서연에게 준 집 모형





영화를 본 이들에게 승민, 서연보다 더 많이 기억된 납득이





이 집의 매력은 단연 파노라마 창문인데, 역시나 사람들로 가득 차 있어 빈 창문을 찍을 수 없었다.




건물 전경에서도 볼 수 있듯 2층의 기와는 없어졌다.

하지만, 잔디밭은 그대로 있다.




2층 올라가는 계단 벽

(사실 2층에서 1층 내려가는 계단 벽)







2층에도 1층과 마찬가지로 넓은 파노라마 창문이 좋은 채광을 제공하고 있다.







지난 십년보다 앞으로의 십년이 더 빠르게 지나가겠지..









2층 야외 잔디에는 사람들이 들어가지 못하게 줄을 쳐놨다.

(그럼에도 불구하고 들어가서 사진 찍더라.. 제발 하지 말라는건 하지 말아주세요)




영화를 보고 가시는 걸 추천합니다!

곳곳에 마련된 깨알 같은 요소가 더욱 재밌을겁니다!


주차할 공간은 까페와 조금 떨어진 곳에 있습니다.

주차하시고 돌담길을 따라 걸어가시면서 제주 바다를 감상하시는 것도 좋을 것 같습니다!


가격은 일반 까페 수준이며, 바나나 쉐이크, 감귤 쉐이크(탠져린쉐이크?)와 같은 과일 음료 메뉴도 있습니다.


공간은 넓지 않은 편입니다.

여유롭게 쉬는 목적보다는 영화 촬영지를 방문하는 기분으로 가시는 것이 더 좋을 것 같습니다!


위치는 제주의 남쪽에 있는 서귀포(서귀포 이마트, 제주 월드컵경기장 부근)에서 약간 오른쪽에 있습니다.

여행 일정 짜실때 참고하세요~



 
지금은 고쳐서 스샷 찍는게 불가능한데, 윈도우7에서 원격데스크톱 설정이 없어질 때가 있다.

홈에디션의 경우 그 기능이 원래 없다. 그러면 패스.

하지만 나는 홈에디션 이상을 쓰고 있는데, 왜 원격데스크톱 설정이 없을까?

그건 인증을 안해서다.


인증을 하면, 적용된 설정을 위해서 재부팅해야한다고(강제는 안함) 알려준다.

그리고 재부팅하면 브라보! 원격데스크톱 설정이 돌아온다.

어디에도 없는 팁.

아마 윈도우 새로 설치 후 인증이 빠졌을 때 나타나는 증상인 것 같다.

시스템 정보에는 인증이 된거로 나오지만, SLIC 2.1 상에서 인증이고, 실제 인증 과정을 거치지 않으면(XRM-MS 등록 및 시리얼 등록) 이런 증상이 발생하는 것 같다.


테스트 한 PC는 윈7 64bit, 얼티메잇 OEM판. 
#!/bin/bash

A="abcd dcba"
B=A
C=${!B}
echo $C
0. 들어가며

2Byte 문자셋을 사용하는 민족의 서러움은 1Byte로 표시 가능한 문자를 사용하는 영어권 사람들이 개발한 컴퓨터를 사용할때 자주 나타난다. 리눅스에서 iconv와 같은 툴(경험상 100% 완벽하진 않은 것 같다.)이 이러한 문제를 많이 해결해주고 있지만, MP3 태그는 스크립트를 짜거나 파일별로 노가다를 해야할 정도이다.
이번 포스트에서는, 파일명이 트랙번호, 가수, 노래제목을 포함하고 있는 mp3 파일에 대해 태그를 적용하는, 윈도우의 TAG&RENAME과 같은 프로그램의 맥버젼을 소개한다.

1. TriTag

"MP3태그 맥 문자셋"이란 키워드로 검색하던 중, 애플포럼에서 비슷한 고민을 하시는 분의 게시물이 발견되었다.(출처: 애플포럼) 유료프로그램인 MP3 rage와 무료인 TriTag가 언급되었는데, 여기서는 무료프로그램인 TriTag를 사용한다. 위의 제목을 클릭해도 되고, 이곳을 클릭해도 된다. 혹은 http://durl.me/6dmrk

2. 사용법


보자마자 필이 딱 온다. TAG&RENAME과 비슷한 구조. 드랍다운 메뉴인 "MODE"를 클릭하면, 파일이름에서 ID3 태그를 추출할 것인지(Filename -> ID3 Tag), ID3태그를 바탕으로 파일이름을 작성할지(ID3 Tag -> Filename) 결정할 수 있다. 여기서는 파일이름에서 ID3 태그를 추출하여 저장하는 (Filename -> ID3 Tag)로 둔다.

다음 과정으로 파일명에서 어떤 식으로 ID3 태그의 구성요소인 Artist, Track Name, Track Number, Album Name 등을 추출할 것인지 규칙을 정해줘야 한다. Filename pattern 아래의 공란에 그것을 적어주면 되는데, 사용법은 그 아래에 되어 있다.
예를들어, "001 아이유 - 나만 몰랐던 이야기.mp3"와 같은 파일의 경우, "트랙번호 가수 - 노래제목.mp3"의 형태로 트랙번호와 가수, 노래제목을 파일명이 포함하고 있다. 이럴 경우 %n %a - %s와 같이 입력하면, TriTag가 알아서 추출해준다. 그리고, 한번 만든 Filename pattern은 여러 파일에 대해서 적용 가능하다.
이게 어렵다. 나는 예제를 통해 하고 싶다. 하는 사람이 있다면, Pattern Builder라는 것을 써보면 된다. 패턴빌더를 사용하기 전에 예제 파일을 추가해야한다. 


위와 같이 패턴 빌더를 띄우면, 추가된 파일의 제일 위에 있는 파일명을 예제로 꺼내와서 띄워준다. 현재 위의 스크린샷은 "아이유"라는 글자가 있는 곳이 Artist로 채워야할 내용이 있는 곳임을 알려주기 위해 해당 위치를 블럭잡아둔 상황이다. 이제 저 위치가 어떤 값인지 알려주기 위해 아래 Available descriptions 아래 드랍다운 메뉴를 눌러보면,


위와 같이 Artist에 체크가 되어 있지만, 그래도 Artist에 다시 클릭을 해주면, 아이유라는 글자가 파란색으로 바뀐다. 이는 Filename 아래에 필드별로 어떤 색깔로 저장될지 나타내는 범례에도 표시되어 있다. 나머지도 마찬가지로 작업해주면, 아래와 같이 될 것이다.


"001"이 있는 위치는 Track number로 지정되었고, "아이유"라는 글자가 있는 위치, 즉, Track number에서 한칸 띄고, 아이유라는 글자 다음인 '-' 앞까지의 글자는 Artist로 지정되었다. 그리고 '-'에서 한칸 띄고 "나만 몰랐던 이야기"는 Track title로 지정되었다. 여기서 '-' 글자는 아무것도 지정하지 않는다. 그냥 구분자의 역할을 한다.(사실 white space도.)
이제 Close dialog and adopt pattern을 클릭하면 된다. 그리고 메인 창에 돌아와 Apply를 클릭하면, 추가된 모든 파일에 대해 위에서 설정한 pattern 대로 파일명으로부터 ID3 태그를 추출하게 된다.


3. 결과 및 마치며

아주 잘된다. 매우 만족스럽다. 이런 프로그램 너무 필요했는데, 잘됐다. 윈도우판 TAG&RENAME에 버그가는, 게다가 공짜!

증상
전원 버튼을 눌러도 응답이 없고 가끔 전원 LED가 켜졌다가 꺼진다

해결책
참고 : http://support.apple.com/kb/HT3964?viewlocale=ko_KR

SMC 리셋
MC207KH/A의 경우 "사용자가 분리할 수 없는 배터리가 장착된 휴대용 컴퓨터에서 SMC 재설정"을 참고
0. 들어가며

  맥북을 구매한지 꽤 시간이 지났다. 딱히 MAC OSX(이하 OSX)를 사용하면서 불편함을 느낀적은 없으나,
if(BROSWER_NAME=="IE") 천국();
else 지옥();
인 국내 사정상 IE가 꼭 필요한 때가 있다. 물론 패러럴즈로 그 부분을 카바하면서 살았지만, 그래도 완전히 재부팅 하는 것이 나은 상황(예를들면 인강)을 대비해서 부트캠프를 이용하며 OSX와 저번에 학생판으로 구매해둔 윈도우7을 멀티부팅 할 수 있도록 시도했다.



1. 준비물 및 테스트 환경

  • 정품 윈도우CD
  • OSX 설치CD
  현재 필자가 가지고 있는 정품 윈도우CD는 윈도우7 프로페셔널 학생판으로, 윈도우XP나 윈도우비스타가 설치된 환경에서 업그레이드 용으로 사용 가능한 버젼이다. 설치 중간에 꼭 "업그레이드(U)"를 눌러 설치해야할 필요는 없고, "사용자 정의(C)"에서 위에 나열된 윈도우(XP or VISTA)가 설치된 파티션이 하나라도 보인다면 해당 파티션을 포맷하고 다시 설치도 가능하다.
  OSX 설치시디는 SNOW LEOPARD 10.6.1이고, MC207KH/A에 기본으로 포함된 설치CD이다.
  필자는 윈도우 3.1부터 사용했고, 95, 98을 거쳐 NT 기반의 2000시대에서부터 윈도우 간의 멀티부팅, GRUB를 통한 윈도우와 리눅스의 멀티부팅(당시 리눅스는 레드햇7.2) 등을 다수 시도했고, 성공시킨 전력이 있었다. 그럼에도 불구하고 간단하겠지 맥처럼 편하게 잘 해 놨겠지 라는 안일한 생각에 오랜 시간 삽질하였다.



2. 주의사항

  가장 중요한 것은 파티셔닝을 잘 해야 한다는 것이다. 파티션을 다시 잡기 위해서 가급적이면 OSX도 새로 설치하는 과정에 진행하는 것을 추천한다. 파티션을 조정하다가 자칫 잘못하다 OSX의 파티션도 날리게 되고, 그렇게 되면 중요한 자료도 같이 날아갈 수 있기 때문에 이제 막 사용을 시작하려는 새 OSX에 부트캠프를 성공한 뒤에 OSX와 윈도우 환경에 설정 등을 적용하는 것이 낫기 때문이다.



3. 파티션과 윈도우 설치

  키 포인트는 다음과 같다.
  1. OSX 상에서 "응용프로그램"  → "유틸리티"  → "부트캠프 지원"을 찾아 "부트캠프 지원"을 연다.
  2. "부트캠프 지원"으로 적당한 양만큼 윈도우 파티션을 잡는다. 상위 대부분의 용량은 OSX를 위해 남겨두고, 아래 영역을 윈도우 용으로 잡는다.
  3. "부트캠프 지원"에서는 윈도우 파티션을 FAT32로 잡는데, 32GByte를 최대 용량으로 인식하고 32GByte를 프리셋으로 지정해두었다. 검색하던 중에 32GByte까지만 인식한다는 글을 얼핏 스쳐 봤기 때문에 이번 시도에서는 윈도우 파티션을 32GByte만 잡았다. 사실 게임할 건 아니니까.
  4. 윈도우 설치CD를 넣고 재부팅하면 부팅 화면 중에 option(alt)키를 누를 것도 없이 바로 CD로 부팅이 되게 된다.
  5. 아주 중요한 키포인트 첫번째 : 절대로 무인설치나 자동설치를 쓰지 않는다. 설치 과정에서 손대야 할 것들이 몇가지 있기 때문이다.
  6. 윈도우 설치 과정에는 대부분 어느 파티션에 윈도우 설치할래? 라는 문구와 함께 디스크 유틸리티를 준다. 아주 중요한 키포인트 두번째 : "부트캠프 지원"에서 윈도우 용으로 잡았떤 아래쪽 32GByte에 바로 설치라고 누르면 안된다. 또한 볼륨을 삭제해서도 안된다.
  7. 이제 해당 볼륨을 잡고 NTFS나 FAT로 포맷을 해준다. 윈도우 설치 초반에 나오는 디스크 유틸리티에서 설치하고자 하는 파티션을 한번 더 포맷하라는 말이다.
  8. 그리고 나서 윈도우 설치 프로그램이 적절한 설치 파일들을 파티션에 복사하고 나면 재부팅을 하게 되는데, 이때 재부팅이 되지 않는다면 1의 과정을 다시 진행한다. 가끔 에러가 나서 아래쪽에는 이상한 진행바 같은 것이 있고, 위쪽에는 깜빡이는 프롬프트만 뜨는 이상한 상황에 갖히게 되는데, 이 경우 답이 없는 것 같다. 귀찮아서 이것에 대해 다시 찾아보진 않았다. "disk error.\n press any key to restart."에러가 발생할 수도 있다. 이럴 경우 1의 과정을 다시 진행하되, 2의 과정에서 기존에 "부트캠프 지원"에서 만들었던 파티션은 삭제하고 다시 만드는 것이 좋다. 한마디로 새로 하라는 뜻. re re re
  9. 윈도우 설치파일을 파티션에 복사하고 재부팅까지 성공하면 거의다 된거라고 봐도 무방하다.
  10. 잊지말고 윈도우 설치가 완료되자마자 OSX 설치CD를 윈도우 시스템에 넣고 부트캠프 지원 프로그램들(대부분 드라이버)을 설치하는 것이 좋다.
어디든 i386\WINNT.SIF 를 메모장을 열어

[UserData]
    ProductID=

부분에 적힌 씨디키를 받아 둔다.

예를들어, 학생판으로 구매한 윈도우7이 업그레이드 버젼이라 맥북에 부트캠프로 윈도우XP를 깔고 나서야 윈도우7이 깔린다면, 윈도우XP를 까는 와중에 맥북은 ODD를 내뱉지 않으므로 광미디어 표면에 적어둔 씨디키를 적을 수 없으니, 그걸 구웠던 메인 머쉰에서 ISO 이미지를 마운트 해서 해당 파일을 열고 씨디키를 적는다.

뭐 이런 상황이지. 아휴
0. 들어가며

 "고등학교 입학시험을 치른다."라는 말은 이제 오래된 말인 것 같다. 내가 현재 사는 지역이자 고등학교를 나온 지역인 경기도 광명시는 아직도 매년 중3 학생들을 대상으로 고입선발고사인 연합고사를 치고 있다. 고입 전형은 200문제인 연합고사를 100점 만점으로 환산하고, 내신을 200점 만점으로 계산한 뒤 합친 점수를 가지고 진행된다. 기타 자세한 전형방법은 신입생 입학전형 요항(출처: 광명북고)을 참고하면 되겠다.
 12년전 나도 연합고사를 쳤다. 말도 안되게도 광명시 중학교중 유일하게 우리 광남중학교(경기도 광명시 광명동 385-5 소재)는 중3때도 저녁 7시까지 야자를 했다. 학력 수준이 미달되는 중학교였기 때문이다. 그 덕에, '저주받은 이해찬 1세대', '단군이래 최저학력'에 속했던 나는 중3때도 했던 야자를 고1 고2때 안하는 기이한 학교 생활을 했다. 당시의 입시 스트레스는 여러 기사에서도 말했듯 대단했지만, 그래도 이 중학교를 벗어나 내가 저 고등학교에만 들어간다면, 비슷한 수준의 학생들을 만나서 '문제 학생들' 때문에 받는 스트레스 없이 학교를 즐겁게 다닐 수 있을 것 같았고, 실제로도 그랬다. 중학교때는 학기초 매번 진행되던 짐승들의 '풀리그' 스트레스가 있었는데, 고등학교 들어간 이후 주먹다짐 한번 한 적이 없었다.
 이제 이 지역에서도 옛말이 될, 올해 마지막 연합고사일에 고교 평준화에 대해서 몇가지 내 생각을 정리해보고자 한다.


1. 평준화를 찬성하는 입장들

  생각을 정리하기 전에 고교 평준화를 찬성하는 기사나 의견들을 몇가지 찾아봤다. 
  딱히 정치적인 성향을 따질 것 없이 전교조를 포함한 여러 사람들이 고교 평준화를 이야기하는 것 같다. 이유는 대개 비슷한데, 그것들을 몇가지 나열해보면,
  • 고입 스트레스
  • 평준화로 인한 학력저하는 없다.(오히려 상향되었다는 주장도)
  • 사교육비 절감
  • 평등한 교육 기회
등이 될 것 같다. 1974년 고교 평준화가 처음 도입된 이후 36년이 흘렀다. 이에 대해 많은 논란이 있었고 지금도 진행되고 있는 상태다.


2. 전국 900만의 아이들의 머리 속에 모두 똑같은 것만을 집어넣는 교육제도

  평준화를 반대하는 입장의 출발점으로 잡는 것은 학생들의 '수준차이'다. 모든 학생이 같은 수업을 듣는다 하더라도 알아듣는 바가 다르고, 그로 인해 수준차이가 발생하게 된다. '1+1=2'를 가르치면 어떤 학생들은 바로 알아듣고 '1+2=3'을 배울 수 있는가하면, 어떤 학생은 '1+1=2'를 계속해서 반복해줘야한다.
  이러한 분위기 속에서 손해보는 것은 누굴까. 수학능력이 좋은 학생, 뒤쳐지는 학생, 가르치는 선생 모두에게 손해다. 학생을 지도한다는 일에 손해라는 것이 있겠냐만은 효율적이지 못한 시간을 보낸다는 측면에서는 손해라고 불러도 무방하다.(여기에 또 교육에 어찌 효율성만을 따진다고 할 사람이 있을지 모르는데 그렇다면 교육제도는 왜이렇게 자주 바뀌는가. 학교 선생님 수는 왜 학생과 1:1로 맞지 않는가. 결국 효율성 문제)
  이러한 현실적인 문제를 짚고 넘어가지 않을 수 없는 것이 어떤 교육제도 하에서든 잘하는 학생과 뒤쳐지는 학생 사이에 수준차이는 발생하고, 그럼에도 불구하고 모든 학생들에게 똑같은 것을 가르친다는 것이다.


3. 비평준화. 진짜 문제인가?

  첫번째 링크 고입 연합고사 날, 다시 돌아본 고교평준화에 보면 글쓴이는 다음과 같은 논리를 전개한다.
학생의 본연은 공부이지만, 그것에만 충실하는 것은 문제가 된다.
비평준화 지역은 공부에만 충실하지만, 비평준화 지역 학생들은 학업에 대한 부담이 적어 공부 외에 여러가지를 할 수 있다.
그치만 성적은 평준화 이전에 비해 떨어지지 않는다.
뭔가 모순이 있다. 학업에 대한 부담도 적도 학생의 본업인 공부하는 시간이 적음에도 성적은 떨어지지 않는다? 게다가 학교에서 가르치는 내용은 평준화 전이나 후나 같을 것인데, 비평준화 시기에는 주입식 교육만이 강화된다? 심지어 평준화 이전에는 21세기 사회적 트렌드에 맞지 않는 수동적 학생만을 양산한다고 되어있다.
  글쎄.. 공부 잘하는 학생들끼리 모아서 학교를 운영하는 것이 어떻게 21세기 사회적 트렌드와 수동적 학생과 연관이 있는지 비약이 있는 것 같군. 아무래도 글쓴이는 '비평준화=주입식 교육'으로 생각하는 모양이다. 가르치는 내용에는 평준화 전이나 후나 큰 변화가 없는데도.
  또한, 평준화가 교육 기회를 균등하게 부여한다고 했는데, 그래서 강남과 목동, 노원구 등 교육열이 강한 지역과 그렇지 않은 지역이 나뉘게 되는 것인가? 그래서 자녀 교육 때문에 총리 예정자는 청문회에서 '맹부삼천지교'를 시인하게 되고 청와대도 그것을 인정 하는 것인가 말이다.
  물론 학력에 대한 부담감을 덜어주는 것은 사실이다. 왜냐면 딱히 공부 열심히 안해도 고등학교 잘 보내주거든. 하지만 그렇다고 그게 더 큰 스트레스인 대입 수능에 대한 부담감을 줄여주느냐? 그것은 아니다. 연합고사를 본다해도 대입 부담감이 줄어드는 것은 마찬가지로 안니다.

 세번째 링크 학벌철폐] 교복이 낙인이 되는 곳에 보면, 광명시의 이야기가 나와있는데, 광명시에 내 평생 중 첫 6개월과 군대 2년을 제외하고 나머지를 보낸 사람으로서 동네 사정을 잘 반영하지 못하고 현실적이지 못하다. 그저 고입을 까고 들어가는 색안경을 끼고 보기 때문에 그렇다. 게다가 광명시에 있는 학원에서 일도 해보니 더욱이 현실과 다름이 느껴진다.
 같은 글에서 평준화로 인한 학력 저하의 근거는 없다고 하면서, 단지 '좋은' 대학에 진학한 학생 숫자에만 근거한 상향평준화를 이야기하고 있다. 그러면서 사교육비 이야기를 하고 있는데, 그렇다면 저 '좋은' 대학에 진학한 학생들은 사교육을 안받았다는 것인가. 그렇다면 이건 정말 신문기사(<수능 세영역 만점 임수현 양 "학원 한번 안갔죠">)에나 날법한 학생들을 200명 정도 데리고있다는 이야기다. 실로 강남권 아줌마들에게 희소식이 아닐 수 없다.
  또한, 평준화 지역에서는 수능이나 논술을 대비하면서 폭넓게 공부한다고 하는데, 수능이나 논술이 어찌 폭넓은 공부가 된단 말인가. 난 또, 21세기형 트렌드에 맞춘 '봉사하는 학생', '글로벌 인재 육성 과정', '학업 외에 대학 과정의 공부하는 학생', '책을 읽고 독서토론회'등이 이루어진다면 모르겠다. 현실은 어떠한가. 어차피 평준화 지역의 고등학생들도 대입 앞에서는 어쩔수 없다. 앞서 이야기한대로 단지 1년 늦춰지는 것이다.
  고교 평준화를 외치는 부모님들, 그렇게 따지면 고교 평준화보다 중요한 것이 대학교 평준화입니다. 고교 입시보다 더한 스트레스는 대입 스트레스입니다.


4. 잘하는 학생은 더 잘할 수 있도록 면학분위기를 조성해야

  평준화를 반대하고 비평준화를 지향하는 가장 큰 이유는 공부하는 학생들에게 공부하는 면학 분위기를 조성해 주는 것이 교육의 기회를 균등하게 부여하는 것보다 더 중요하다고 생각하기 때문이다. 평준화의 모순은 '모든 학생에게 같은 공부를 시킨다.'에서 출발한다. 하지만 현실은 어떤가. 한 반에서도 같은 수업을 들어도 알아듣는게 다르고 학업 성취능력이 다르다. 그러한 개인차를 무시하고 '모든 학생에게 같은 공부를 시킨다'는 것 자체가 모순 아닌가.
  또한, 모든 학생이 고등학교 졸업 후에도 계속해서 공부를 한다는 착각을 가지고 있다. 요새 추세로는 대부분 대학을 가겠지만, 대학을 가는 과정에서 일부는 지속적인 공부를 하지 않고 다른 진로를 택할 수도 있다.
  만약 고등학교 교육이 대한민국 국민으로서 갖춰야할 기본 소양을 가르치는 교육이라고 한정한다면, 평준화 제도가 말하는 부분은 어느정도 맞을지도 모른다. 허나 현재 고등학교 입시 상황의 주된 목표가 기본 소양 뿐만 아니라 그것을 평가하는 '대학 수학 능력 시험'에 초점을 맞추고 있는 상황에서 모든 학생이 같은 공부를 해서 같은 학업 능력을 보인다면, 무엇으로 변별력을 갖춘단 말인가. 다른 아이들보다 내 자녀는 더 좋은 학업성취를 보이게 하려고 잘 사는 사람들은 더욱 더 사교육을 시키게 된다. 아무리 막아도 어차피 시킬 사람은 시키고, 그 사람들 보고 나머지 사람들도 따라가고, 잘사는 사람은 더 시키는 악순환이 반복되는게 현재 상황이다. 고교 평준화를 포함한 제도적 장치로 사교육비를 경감시킨다는 것은 눈가리고 아웅인게, 어차피 할 사람들은 다 한다. 오히려 진짜 돈 많은 사람만이 할 수 있는 분위기를 조성하게 되어 그로 인해 교육 격차가 나게 할 수도 있다.
  고교 서열화를 통해 위화감이 조성된다고 했는데, 마치 대학에서는 그렇지 않은양, 사회에서는 그렇지 않은양 말한다. 짧지만 30년 조금 부족한 삶을 살아보니 어차피 서열화 되고 위화감과 상대적 박탈감 속에 살아가는 것이 세상살이인 것 같다. 어차피 고등학교 다니면서 모의고사도 칠텐데 한반에 ±4~5등급 정도로 스펙트럼이 나뉠 것이 1~11등급까지 전구간 스펙트럼으로 나뉘게 되면 이 역시 위화감을 조성하는 것 아닌가. 성적에 신경쓰지 않는 학생들에겐 무의미한 숫자에 불과하겠지만, 그렇다면 이런 학생들에게도 1등급의 학생들과 같은 수업을 한다는게 말이 되는 소리냐는 앞의 논점으로 되돌아오게 된다.

  일반 고등학교에서도 특목고 못지 않게 학업 성취도가 높은 학생들이 많이 있다. 이러한 학생들에게도 특목고와 같이 잘하는 학생에게 더 많은 교육의 기회를 주고, 잘하는 학생들끼리 모여 같이 공부하고 열심히 공부하는 면학 분위기를 조성해주는 것이 어른들의 몫이 아닌가 싶다. 이러한 분위기가 한번 형성되고 잘 유지된다면 선생의 역할은 그야말로 대폭 축소될 수 있다. 시키지 않아도 알아서 하는 유토피아적 면학 분위기. 유토피아는 현실에서 존재할 수 없지만, 이러한 면학 분위기는 충분히 조성 가능하다. 실제로 목격도 했고.
  백년대계 교육의 핵심은 단순한 지식의 전달을 넘어, 면학분위기 조성, 그리고 더 나아가 이러한 분위기 속에서 학생이 졸업하고 사회에 나갔을 때, 어느 위치에 있든 자신의 본분에 최선을 다할 수 있는 능력을 키워주는 것이 아닐까. 수동적 학생, 21세기 트렌드에 맞지 않는 학생? 그런 것은 교육 내용 자체에서 문제점을 찾아야지 평준화 비평준화로 따질 문제는 아닌 것 같다.
보통 조리개 우선으로 찍고 가끔 매뉴얼, 야경시에는 벌브로 찍기 때문에 다이얼은 이 3가지만 사용해왔다.
C모드는 내가 알기로 설정값을 저장해놓고 쓸 수 있는 모드로 알고 있는데, 막상 C모드로 돌리면 P모드처럼 작동했다.

어딘가 C모드를 설정하는게 있을텐데..
5D 매뉴얼을 뒤지니 147쪽에(첨부파일 75쪽) 설명이 나와 있었다.

자세한건 아래 첨부파일을 참고!

다시는 유리로 둘러쳐진 건물 따위는 거들떠도 안보겠다고 다짐했는데.. 정자역 가까이에 위치한 NHN 그린팩토리


  길고 긴 NHN의 면접 단계들이 끝나가고 있다. 전공시험, 1차 인성/기술면접에 이어 각자 인터넷을 통해 수행하는 인성 테스트, 그리고 2차 임원면접까지 시험이 많아서인지 유난히 길게 느껴진다. 임원면접이라고는 하지만, 대개 다른 기업들도 부장급이나 팀장급이 면접관으로 나오고, 
NHN 자체가 나이가 많은 기업은 아니기 때문에 큰 부담은 없었다. 사실 부담이 없었다기 보다 부담없이 가는게 좋을 것 같아서 일부러 그러려고 노력한 것도 없지 않고.



최근 We connect you to the world를 잘 하고 있는가에 대해 심각한 도전을 받고 있는 NHN



  NHN하면 네이버라는, 전 세계에서 구글이 유일하게(?) 정복하지 못한 가장 강력한 박힌돌을 운영하는 회사이다. 한게임을 인수해서 게임 사업도 진행하고, 미투데이나 네이버 포탈을 이용해서 많은 다양한 사업을 진행중인 것으로 안다. 태생이 검색엔진이었기 때문에 주요 사업은 검색엔진이라고 할 수 있겠으나, 최근 네이버 검색의 폐쇄성 때문에(관련글: 한국 인터넷에서 잘못 끼워진 첫 단추, 그 이름은 네이버 (NAVER) - 조성문선배님의 블로그, 네이버 검색창의 폐쇄성, 지나치다 못 해 황당깜신의 작은 진료소) 포풍처럼 까이고 있다.
  사실 나부터도 전산실 관리자를 시작하던 2007년 여름부터는 메인 검색엔진이 구글로 정해졌다. 서버 삽질은 대개 영문 검색이 지원되야 하는데, 네이버의 영문검색은 매우 빈약하다. 위의 링크에 달린 글들도 비슷한 내용을 담고 있지만, 네이버 검색 결과는 대부분 자체 컨텐츠인 블로그, 까페, 지식인을 기반으로 한 검색결과를 보여준다. 안에서만 내용이 돌고 돌다보니 잘못된 내용이 수정될 기회를 잃게 되고, 정말 필요한 정보는 광고에 묻혀 뒤로 밀려나게 되는 경우가 많다. 아예 안 띄워주는 경우도 많고.
  문제는 면접 보러 가는 아침에도 그런 트윗을 많이 보면서 갔다는 것이다. 이걸 면접관들한테 해? 말어? 구직자 입장에서 그런 위험한 생각은 큰일이다. 안들어가면 장땡이라고 생각할 수 있지만, 사람이란건 언제 어디서 만날지 모른다. 후에 다시 그분들을 뵈었을 때, '아 당신 저번에 면접보러 와서 앞뒤 안가리고 막 말하던 그 사람이구만?'이라고 한번에 기억해낸다면? 정말 괴로울지도 모른다.



컴퓨터 그래픽으로 렌더링된 것 같은 디자인의 설치조형물!? 저거 다 진짜 책인 것 같았다.


  어쨌든 NHN 사옥 자체는 매우 매력적이었다. 앞서 가본 SKT의 T타워는 새벽같이 도착한지라 1층도 제대로 둘러보지 못해서 아쉬웠는데, 이번에는 그래도 방문증을 가지고 내부를 조금이나마 둘러볼 수 있었다. 내부 사람들에게만 공개되는 공간에서 사진을 찍는 것은 실례가 되는 것 같아 1층에서 안내하시는 분의 동의를 구하고 몇컷 담아왔다. 아쉬운게 있다면 면접을 보는 4층에조차 샤워실이 있다는 거랄까........ 학부때 후배들에게 '대학원 선택할 때, 절대로 샤워 시설이 있는 랩은 가지 마라'고 해놓고 나는 샤워실 있는 연구실도 가고, 샤워실을 잘 갖춘 NHN도 쓰는구나.....



  2차 면접은 3대 3으로 진행됐다. HR에서 한분, 현업 임원 두분과 피면접자 3명이 대면하는 방식이다. 그간의 면접들이 너무 평이해서였을까. 이번 면접은 비교적 압박면접이었다. 피면접자의 답변을 더 뚫고 들어가는 질문이야 예상했지만, 면접관으로부터 질문이 되돌아오는 시간이나 질문의 속도, 그리고 일관성에 관한 질문들이 날카롭게 느껴졌다.  또한 쌩뚱맞는 질문들도 있었는데, 같이 면접실에 들어간 분이 잘 대답해주셔서 무난히 넘어갈 수 있었다. 사실 면접보는데 자기자신의 준비도 중요하겠지만, 누가 같이 들어가느냐는 더 중요한 것 같다. 아무리 준비를 잘해도 앙칼진 목소리로 상대를 까는, 기가 센 피면접자와 같이 면접을 보게 되는 상황에서 자기가 준비한 것을 십분 발휘하기란 정말 어렵기 때문이다. 다행히 3:3에서 피면접자 한명은 참석하지 않았고, 같이 본 분은 무난하게 이끌어가는 능력이 있어 정말 다행이었다.

  생각나는 질문을 몇가지 적어보면,
0. [공통]자기소개를 간단히 해보세요.
1. [나에게]왜 대학원 휴학했는가: 연구가 맞지 않아서, 너무 무난한 것 같아서, 친구들과 무언가 준비하는 것이 있어서 그런 것도 해보고 싶었다.
2. [나에게]무난하고 평탄한 것을 버리고 나왔는데 취직하겠다고 하는 것은 모순된 것 아닌가(시작부터 이런 질문을 받아서 약간 난감했지만): 더 큰 것을 배우고 싶다고 친구들과도 시작할 때 이야기한 상태다. 대학원은 돌아가지 않을 것이다.
3. [또다른 피면접자에게]어학연수를 뉴질랜드로 갔는데 뉴질랜드를 택한 이유는?
4. [또다른 피면접자에게]뉴질랜드에서 추천할만한 여행 장소는?
5. [또다른 피면접자에게]학교를 오래 다녔는데 그 이유는?
6. [공통]NHN에서 필요로하는 인재상은 무엇이라고 생각하며 자신이 그에 얼마나 적합하다고 생각하는지 어필해보세요.
7. [공통]오늘 아침 여기까지 오면서 든 생각을 말해보세요.
8. [공통]타인에게 비쳐지는 자신의 장점과 단점을 말해보세요.
9. [공통]둘 중 한명만 합격시킨다면 누가 됐으면 좋겠는가: [두명이 같이 대답]둘 다 같이 됐으면 좋겠다.
10. [공통]서로 옆을 보면서 서로의 장점과 단점을 하나씩 이야기해보세요.
11. [나에게]집단 내에서 자기 주장을 하는 편인가 아니면 주장을 따르는 편인가: 서로 다른 주장을 잘 융합하려고 노력하는 편이다.

  기타 등등 여러가지 있었지만, 이번에도 마찬가지로 40분이라는 면접 시간이 짧게 느껴질 정도로 후딱 지나가버렸다. 면접비는 많은 편은 아니지만 차비 하기엔 충분하고도 넘쳤다. 정자역이나 서현역이나 모두 공영 환승 주차장이 있어서 주차 문제는 없다고 봐도 무방했다.



  아래는 보너스. 1층에 있는 NHN스토어에서 산 달력.
012

IP 받아올 때 쓰는 DNS 주소를 사용하면, 어떤 영문주소를 nslookup 하든 이상한 IP 결과를 보여준다. 그래서 학교 전산실에서 쓰던 DNS를 설정해서 쓰곤 했는데, 그것 말고 더 좋은 방법이 있다.

211.106.67.221로 DNS를 설정하면 된다.
다른 DNS도 많지만, 넷피아에서 직접 알려주는 거니까 뭐..

출처 : http://www.netpia.com/htm/nxdomain/index.asp
 인생은 길다. 긴 인생 '어찌 살면 좋을까. 무엇을 하면서 살면 좋을까'에 대한 고민은 오래전부터 해왔으나 할때마다 상황도 바뀌고 생각도 바뀌며 답도 조금씩 달라지는 것 같다. 옳고 그름은 없고, 후회가 남느냐 혹은 금전은 얼마나 남느냐 아니면 개인적 성취, 그것도 아니면 만족감이라도 남는 선택을 해야 나중에 땅을 치며 후회하지 않을 것이다. 어쩌면 이미 이만큼 여러가지 선택의 폭을 넓혀본 이상 후회는 필연일지도 모르겠다. 분명 시간이 지나고 이 날을 되돌아보며 후회를 할지도 모르지만.

 어쨌든, 다양한 선택의 기로에 또다시 놓였다. 이번엔 취업이냐 아니면 진학이냐에 대한 본격적인 고민이다. 그간 작게나마 이루어놓은 것(그래봐야 인생 초반 20년간 주위 사람들의 압박에 의해 시키는 대로 성실히 했다는 것의 증거)도 있고, 버리고 나온 것도 있기 때문에 잃을 것이 생겼다는 생각에 더 진지한 고민을 할 수 있었던 것 같다. 좀 더 과감해졌고, 내 자신에 대해 조금 더 생각해보았으며, 무엇보다 주위 사람들의 이야기에 귀를 기울이는 자세 정도는 배울 수 있었다.

 아직 무엇도 결정된 것은 없으고, 그리고 앞으로도 남은 관문들이 있으니 아직 다 끝났다곤 할 수 없겠지만, 그래도 이제 조금은 한시름 놓을 수 있는 상황이 되었다. 뭐 어차피 이것들 때문에 밤새우며 준비하진 않았으나 스트레스는 안받아도 되는 그런 상황이니. 해서 후기를 좀 남겨볼까 한다. 그간의 면접기간 동안 회사 분위기나 면접 과정들, 혹은 분위기나 사람 대하는 방법이 다 달랐으니.



1. SKT 1차면접
 '사람을 생각하는 기업'을 내세우는 SKT이다. 1박 2일간의 면접이고, 어느 면접보다 많은 과제와 스트레스와 부담감으로 압박감을 주지만, 진행요원이나 면접관은 피면접자를 배려하여 편안하게 해주려고 많은 노력을 하는 면접이기도 하다. SKT 최종 합격자를 대상으로 하는 신입사원 연수가 진행되는 이천 FMI에서 진행되며, 밥이 잘나오기로 유명하다. 시설도 콘도급이고, 부대시설도 매우 잘되있는 편이라 합격하게 되면 즐거운 시간(무려 6주? 8주?)을 보낼 수 있을 것 같다. 물론, 통신회사 답게 방마다 무선AP기능이 포함된 모뎀이 있었다.

 SKT 면접에서 가장 중요한 것은 1박 2일동안 다양한 과제를 주고, 해당 과제를 수행하는 전 과정이 평가 대상이 된다는 것이다. 의사소통 과정에서 나타나는 상대방에 대한 배려와 의견 주장, 갈등 해소, 역할분담, 자기 역할 수행 등이 될 것이다. 내가 지원한 경영(인문) 부문의 경우, 결과물도 비중있게 본다는 설(어디까지나 썰)도 있다.

 많은 대기업들이 대개 면접에 앞서 서류로 끊고, 서류 합격자에 한해서 인적성 검사라는 명목의 OMR카드 검사하는 시험을 치루게 한다. 물론 SKT도 마찬가지인데, 내가 이런 인적성 검사에 가장 불만인 것은 '어찌 continuous한 3차원 세상에 살고 있는, 그보다 차원이 훨씬 높고 고도로 복잡한 인간의 인성을, 한낱 몇백개 내지는 몇천개밖에 되지 않는 문제지를 가지고 Quantization하려 드는가?'라는 것이다. 막말로 비슷한 적성 문제를 가지고 연습하면 점수가 더 잘나올 수도 있고, 비슷한 인성문제들을 뽑아 미리 자신의 인성을 만들어서 먼저 푼 다음에 그것을 연습한대로 마킹만해도 '나는 당신들이 원하는 인재요'라고 말할 근거가 될 수 있다.

 SKT 1차 면접은 조금 다르다. 앞서 말한 인적성 검사가 객관식 시험이고, 찍어서 운좋게 시험을 잘 치는 경우가 생길 수 있다면, 여기서는 그런게 쉽사리 통하지 않는다. 왜냐면 직접 면접관이 한 팀당 2명씩 들어와 그것을 '주관식으로' 평가하기 때문이다.(물론 여기에는 면접관 개인의 주관이나 판단 같은 것은 개입되지 않고, 면접관은 공정하다는 전제가 깔려있다.) 뿐만 아니라, 돌발상황도 언제나 준비되어 있고, 다음날 팀장면접은 따로 준비되어 있다. 이 팀장면접이 보통 대기업에서 잠시 하는 바로 그 면접이다.

 여러가지 다양한 방법으로 사람을 본다는 장점이 SKT 1차 면접의 특징이다. 그냥 '스펙만 좋으면' 붙는다기 보다, 스펙도 스펙이지만 정말 SKT라는 '조직이 원하는' 사람을 뽑으려는 의지가 보이는 면접이었다. 보통 스펙만 좋게 하려고, 거기에 자기를 더 포장하고 과장하려고 이것저것 하긴 하는데 그 와중에 이기적인 애들, 자기 의견만 내세워 팀 분위기 해치는 애들, 그런애들 보면 정말 진도 안나가거든. 이런애들 거르기는 정말 좋겠다는 생각을 했다. 물론 1박 2일간 연기 잘 한다면 그건 또 다르겠지만, 그럴 경우 앞으로의 사회 생활도 연기 잘 해주길 바랄 수밖에.

 대기시간은 팀별과제의 경우 없다고 봐도 무방하며, 개인과제의 경우 길면 1시간, 짧은 경우 대기시간은 없다. 팀별과제와 개인과제 모두 면접시간이 부족하지 않으며, 1차면접 전체 과정이 끝났을 때, 아쉬움이 가장 적게 남는 면접이다.

 팀별과제 시간에 면접관은 진행에 관련된 내용을 제외하고는 참여하지 않는다. 팀장(부장급)면접의 경우, 경우에 따라 다르긴 하지만, 그럼에도 불구하고 사람에 대한 평가와 피면접자의 살아온 날들에 대한 이야기를 들어주는 것을 중점으로 한다. 같은 조에 있었던 장교 출신 전역 예정자의 경우 '이처럼 사람 말 잘 들어주는 면접은 처음이네요'라고 할 정도로 인간적으로 이야기를 끝까지 들어준다는 장점이 있다. 이게 얼마나 피면접자로 하여금 마음이 편하게 하는지, 그리고 그것을 통해 결과적으로 더 많은 평가항목을 이끌어 낼 수 있는지는 면접 해보신분들은 아시리라.



2. NHN 1차 면접
 NHN의 채용과정 특징이라면 시험이 많다는 것이다. NHN의 경우 전공을 살려 SW개발직을 지원했는데, 서류 전형을 통과하고 나서 처음 본 시험이 거의 전공시험에 맞먹는, 사실 안배운 과목이 많아 전공시험보다 어려운 시험이었다. 각 과목에 대한 난이도는 낮으나, 4학년 과목으로 도배된, 각 테크트리의 궁극과목들만으로 이루어진 시험이랄까. OS와 DB를 듣지 않은 나에겐 1차 면접의 기술면접에서도 약점을 드러낼 수밖에 없었다.

 이 1차 시험을 통과하면, 1차 면접을 보게 된다. 아.. 서현역.. 개인적으로 서현역에 추억이 많은데, 중3때 담임이셨던 선생님이 중3때 시집을 가셔서 반 애들이 같이 가서 축가도 불러드리고 했는데, 그 선생님이 처음 전근가신 곳이 백현중이었고, 고3때 번지점프하러 간 곳이 율동공원이었으며, 군대가기 전 차타고 이리저리 친구 만나러 다닐 때 한창 워3 같이하던 친구들이 살던 곳도 분당 서현역 근처였다. 안그래도 면접보고 차타고 나오는데, 그때 봤던 베니건스를 다시 보면서 '아.. 그때 밤에 보던 베니건스 낮에 보니 저렇게 생긴 곳이었구나'.. 여하튼 서현역에서 매우(!!!) 가까운 곳에, 심지어 걸어서 10분? 정도 거리에 있는 건물에서 면접이 진행됐다. 건물 찾기는 매우 쉬웠으며(특히 네이버맵 앱을 이용하면 더 쉽다.) 건물도 이쁘장하니 괜찮았다. 면접 대기실이었던 NHN IS(미래에셋플레이스 8층) 분위기는 우드 장식에 미니멀리즘이 느껴지는 단조롭지만 심심하지 않은 깔끔한 분위기였다.

 NHN 1차 면접은 인성면접과 기술면접 두가지로 치루어졌다. 인성면접의 경우 2인 1조로 (면접관수):(지원자수)=3:2 의 면접을 진행하게 되고, 기술면접은 각 개인이 (면접관수):(지원자수)=2:1로 면접을 진행하게 된다. 시간은 각각 정해져있고, 총 2시간이 소요된다. NHN 면접에서 인상적이었던 것은, 면접보는 사람별로 시간을 다르게 공지해 대기시간이 매우 적었다는 것이다. 늦지만 않는다면, 바로 시작해서 1+1=2시간 면접 바로 보고 끝나는대로 바로 집에 갈 수 있다.

 인성면접의 경우, 다른 기업의 면접 질문과 마찬가지로 비슷한 질문을 물어본다. 아무래도 3:2 면접이다보니 같은 질문을 두 피면접자에게 공통으로 하기도 하고, 한명의 피면접자에게 추가질문을 하기도 한다. 면접관이 좀 더 인간적인, 바로 옆 선배 같은 질문을 던져주기도 한다는 특징이 있다. 예를들면, '이러이러 해서 후배랑 사이가 안좋아졌습니다'라는 대답을 피면접자가 했을때, '그래서 그 후배랑은 요새도 연락 하며 지내요?'(웃는 분위기에서) 라는 식의.

 기술면접은 말 그대로 이 사람이 기술적으로 얼마나 알고 있는가. 그리고 이 사람이 그것에 대한 커뮤니케이션 능력은 얼마나 되나를 측정하는 시간인 것 같다. 이 면접을 보고 나오면서 내가 느낀 것은,
1번 '~~~를 구현하시오'.  2번 '1번에서 구현한 ~~~를 ㅁㅁㅁ로 구현하시오'.  3번 '2번에서 구현한 ㅁㅁㅁ를 ㅇㅇㅇ로 구현하시오'.  4번 '그렇다면 ㅁㅇㅁㅇ는 어떨까?'와 같은 식의 대학교 면접이 떠올랐다. 즉, 한 문제를 제시하고, 그 문제에 대한 답을 피면접자가 제시하면, 더 발전한 질문이 이어지며, 그 질문은 피면접자가 응답가능한 수준이다. 또한, 그 과정에서 피면접자와 면접관 사이에 제약조건이나 요구사항 등이 질의응답 가능하며, 답을 설명하는 과정 뿐만 아니라 문제의 조건에 대한 질의응답 역시 하나의 평가과정이 되는 것 같다. '내가 참 학부때 하드트레이닝 되었구나'라는 생각을 하게 한 면접이었다.



3. 한양대
 위의 두 기업과는 어울리지 않기도 하지만, NHN 1차 면접 바로 다음날 본 면접이라 그런지 참으로 대조되는 면이 많았다. 첫째, 불친절하다. 수험표를 뽑아오라고 했는데 나는 어디서 뽑아야될지 몰라서 결국 그날 사진 한장 가져가서 그 자리에서 임시 수험표를 발급받았다. 그런데 항목에 적혀야할 항목도 제대로 적히지 않고, 지원사항에 나의 출신학교와 출신과를 적는 재밌는 상황도 연출되었다. 물론 적으신 분도 나중에 그걸 아시고 우스갯소리로 넘기시기도 한만큼 중요한 것은 아니기도 하다. 둘째, 대기시간이 미친듯이 길다. 미친듯이 미친듯이. 앤 미친듯 이 미친듯이 대기시간이 길다 진짜. 12시 20분까지 오라고 해서 갔더니, 면접은 5시가 다되어서 봤다. 아무것도 안하고. 진짜 아무것도 안하고 ㅋㅋㅋ 아무것도 ㅋㅋ 자는것도 지칠 정도로 그 좁은데 앉아서 아후 진짜 너무 좁았다. 

 의전공부하는 애들 맘에 안드는게 사람 살리고 남을 위해 봉사하겠다고 하는 사람들이 너무 이기적이다. 자기만 알고, 세상을 자기 위주로 돌린다. 아직 뭐 어리니까. 이제 막 대학 졸업하는 애들이 대부분이니까. 군대도 안갔다 왔으니까. 아참, 이 집단이 내가 여태 속해본 집단 중에 가장 이기적이기도 하지만, 가장 여성 비율이 높은 집단이기도 하다. 둘의 연관성은? 학원 다니는 동안 선생님들이 계속해서 봉사하고 남을 위해 헌신하는 마음을 가지고 더불어 살아가는 마음을 가지라고 강조하는 이유가 바로 여기 있는 것 같다. 여하튼 이기적이다. 내가 이미 내 자리에 앉았을 때는 나는 책 하나 필 공간 없이 양쪽에 앉은 사람들이 내 자리까지 침범해둔 상태였다. 난 처음에 저기가 내 자리라고 하길래 '어? 어디?'라고 했을 정도니.. 이건 한양대 측에서 제공한 장소가 앉는 자리가 좁은 장소이기도 하지만(27동 제2공학관. 소위 '27다시' 라고 불리우는 건물) 양 옆에 애들이 지 공부한다고 그 좁은데서 책을 잔뜩 펴둔 게 이유이기도 하다. 잠깐 눈 좀 붙일라고 엎어졌는데, 지 가져온거 책장 넘기면서 툭툭 치는건 이미 예사. 아 뭐 근데 이런애들 학원 다니면서 진짜 진절머리 나게 봐와서. 이런 애들이랑 같은 집단에 속한다는 것 자체가 기분이 나쁘기도 하다. 의전 가고 싶은 마음이 떨어지는 이유 중 하나기도 하고.

 4시간반~5시간 가량 아무것도 안한채 막상 면접에 들어가서 교수님 3분 앞에서 면접을 봤을 때, 한분은 압박+짜증, 한분은 Neutral, 한분은 친절하셨는데, 이 압박 하시는 분이 좀 오랜 면접에 지치신 모양이다. 아니 어떻게 7명씩 30분동안 면접을 4~5시간동안 보게 할 수 있지. 아무리 15분 쉬고 15분 면접하는 거라고 해도 사람이 얼만데. 아 물론 교수님이 부족한건 알겠는데 그럼 일정을 나누던가 이틀로. 너무 피면접자를 배려하지 않고, 그냥 행정으로 몰아부치는 것 같아 씁쓸했다. 4시간반에서 5시간 가량 기다린 끝에 15분 면접보고 끝나다니.

게다가 면접자와 피면접자 사이의 거리도 여태 본 면접 중 가장 멀었다. 세상에나 이건 거의 내가 대학 입학할때 봤던 면접처럼 '난 교수 넌 학생 따라서 우리 사이엔 요단강만큼의 거리가 존재해'라고 선을 긋듯이 말이다. 아니 혹시 의대 교수님들이 공중위생 생각해서 많은 학생들을 대면하는 것을 염려해 일부러 거리를 띄우신건가.

 아참, 오랜 기다림을 위로하기 위해 학교 측에서 떡 한박스 돌린건 적어야겠군. 그치만, 면접 끝나면 바로 집에갈 수 있다는 점에서 가장 먼저 면접본 사람과 가장 마지막에 면접본 사람의 시간차는 약 4시간이라는거. 뭐 물론, 문제는 고정되어 있고, 유출되면 안되니까 같은 장소에 모여 휴대폰도 다 걷고, 나가지 못하게 통제하는 것은 이해하겠다. 그리고 시간차를 두고 도착하게 하는 것도 불가능한 것도 이해하겠어. 하지만 이건 시간차가 너무 나잖아. 계속 앉아서 공부하는 것도 지치고, 나처럼 아무것도 없이 계속 쳐 자다가 시계만 보는 것도 정말 스트레스라고. 나 정말 그 자리에서 '10만원 돌려줘! 필요없어 그냥 면접 안볼래!'라고 외치고 그냥 뛰쳐나오고 싶다는 생각을 한 23번은 한거 같아. 그 자체가 벌써 불공평한거 아닌가? 사람 지칠대로 지치게 해놓고 면접보는 거랑, 오자마자 말랑말랑한 머리로 시험치게 하는거랑. 같을 수가 있냐고. 목소리도 내가 내 목소리 들으니 지친 목소리가 나오더만.




결론
가끔 보면 SKT는 면접으로 마케팅을 한다는 사람이 있을 정도로 대기업들은 면접에 신경을 많이 쓰는 것 같다. 그만큼 좋은 사람 뽑으려고 노력하는 것 같기도 하고. 특히, SKT의 1차 면접처럼 다방면으로 사람을 평가하려는 시도는 상당히 높게 평가받아 마땅하다. 반면에, 행정위주로 돌아가고, 그냥 성적 줄세우기만으로 사람 뽑겠다는 면접방법은 시행착오라는 것과 개선이라는 것과는 거리가 먼, 그냥 제자리에 머물러 있겠다는 의지를 느끼게 한다. 진짜 의사를 뽑겠다면, 사람을 살리는 사람을 양성하겠다면, 히포크라테스 선서를 문제로 내는 것 뿐만 아니라, 선서 한 사람이 그 의지를 먼저 보여주고, 앞으로 그 선서를 이어갈 사람을 뽑아야 하지 않을까. 물론 나는 성적이 부족하기 때문에 안될꺼지만 말이다. 적어도 이 사회를 위해서는 그래야하지 않을까?
For those who wants to access the icon files directly, the full location is:
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources

If you get into it with Finder, you'll see the icons. But if you're quite familiar with working on terminal and the names of the icon you need, you can easily copy them to the location you want thru terminal.
Intro

If you utilize iPhone as a Voice Recorder frequently like me, you might have experienced a bug which results in NOT playable output file. It seems this happens with iOS4 when the recording time is long enough. - like 1hrs~ -


Cause
The phenomenon started after upgrading to iOS4 because of the MULTITASKING SUPPORT. When you record voice, iPhone internally write the data in ".mov" file, which is QuickTime Movie file. As you know, what you get when you sync your iPhone with your computer is ".m4a" file. That means iPhone converts the ".mov" file into ".m4a" file in real time.


I found this when I experienced this voice memo error.  In the Voice Memo app, the item I recorded shows "0 sec".


As I wrote above, it happens in long recordingAfter you've recorded for like less than an hour, you click on the stop button. Shortly after touching stop button, following HOME BUTTON occurs the error.



It seems something is being processed but never played back.

Because iPhone couldn't convert the ".mov" file into ".m4a", the files
remain incomplete in your iPhone. The MULTITASKING SUPPORT on iOS4 made this bug, because everytime you push HOME, current status is restored in some stack - even iPhone was converting something thru Voice Memo. That's why the converting cannot be completed.


Recovering the ruined voice memo

To recover this hopeless situation, use iPhone Explorer. You can easily find them and copy them out.


If you get single ".m4a" file, that's fully converted complete file. But as you see if you get 2 files in same name but different extension, copy the ".mov" file - the original. The left ".m4a" file is incomplete you don't neet it. Once you get the original ".mov" file, you can edit them with any audio editor you have like Adobe SoundBooth.
Notice that if you open ".mov" file with only playable player, it plays like 12 secs only.

<Click the image above to enlarge>

There's one more problem here. After you copy them, and restore it, the files still remain on the Phone. Though you delete the "0 sec" item on Voice Memo, it just delete incomplete ".m4a" file, which means the original ".mov" file still remain. So, to stay away from storage waste, you need to delete them manually with iPhone Explorer.


This is the screen shot after deleting a bunch of "0 sec .m4a" items on Voice Memo.



Conclusion

DO NOT push HOME BUTTON shortly after stopping the recording on voice memo, especially when you finished long record. yeah, still there's a way that we can recover, but cumbersome.
아이폰의 음성메모 기능 덕분에 강의를 잘 듣고 있었다. 어느날과 다르게 아이튠즈에서 싱크를 하려는데 이게 왠일? 싱크가 전혀 되지 않고 있는 것을 확인했다.
아이폰 상에서 음성메모에 들어가 확인한 결과 1시간 2시간짜리 녹음이 0초 이렇게 표시되고 재생조차 되지 않는 것이다.

무슨일인가 하고 구글신과 네이버친구의 도움으로 몇군데 뒤져보니, 애플포럼에 관련된 내용이 하나 있었다.(관련링크)
iPhone Explorer란 프로그램을 이용하여 내부를 뒤져서 루트 아래 음성메모(Recordins)라는 디렉토리에서 db파일을 삭제하니 해결되었다는 보고였다.

헌데 실제로는 그렇게 해결되지 않았다.
막상 그곳을 열었을 때는, 같은 파일이름을 가진, 확장자만 .m4a(원래 음성메모 녹음파일 결과물)과 .mov인 파일들이 같이 있는 것들과 .m4a만 있는 것들이 있었다.
KMPlayer나 다음 팟플레이어 등으로 재생했을 때는, .mov 파일은 12초 정도만 재생되고 끝났으며, .m4a 파일은 재생 자체가 불가능한 것들이 대부분이었다.

뭔가 낌새 이상한 걸 느꼈다.. '아! 혹시 .mov 파일이 raw 파일이고, 이걸 실시간으로 .m4a파일로 인코딩 하는건가?'

뭐 혼자 야밤에 하는 삽질이겠지만, 대충 그렇다고 느껴지는 단서가 몇개 있어서 여기에 남기고자 한다.

해결책은 맨 뒷부분에 따로 남겨놨으니..


일단 닥치고 백업부터 하고 봤다.. iPhone Explorer란 프로그램이 생각보다 웃긴게, 답답해서 계속 검색하던 중 나온 iPhone Configuration Utility라는 윈도우버젼의 프로그램을 같이 띄워두고 작업했는데, 결과가 다 로그에 남는 것 같다. 혹시 AS에 불이익이 있으면 어쩌지..
그럼에도 불구하고 iPhone Explorer는 읽기 뿐만 아니라 쓰기까지 지원하는 등, 매우 훌륭했다.
앞에서도 언급했듯이, Recordings.db파일을 삭제하는 것만으로는 해결되지 않았다.
문제는 아까의 가정처럼, 인코딩이 마무리 되지 않은채 종료된 그 시점에서 에러가 발생했을 것이라는 추측인데, 이건 어디까지나 추측이고, 대신 .mov 파일의 파일 크기가 매우 크다는데 의문점이 들었다..

44.1kHz 샘플링에 64Kbps 전송율.. 그런데 약 한시간짜리가 30메가? 그럴리가..
아니나 다를까 구글링 중에 어떤 사람은 Adobe Premiere로 열었더니 다 열렸다는 사람이 있었다..

뭐야 이건.. 나는 열어봤는데 안열리던걸..
나는 주로 음성 편집하던 프로그램인 Adobe SoundBooth로 열어봤다..

빙고!

일단 녹음 자체는 살아있다는 것을 확인했다.
이제, 아이폰에서 다 못 이룬 것을 내가 이루면 될테니..

그런데 문제는 여기부터였다..

자, 이제 .mov 파일도 모두 백업했고.. 나중에 편집하면 되니까 아이폰 상에선 지워야지.. 하면서 하나하나 수동으로 음성메모 안에서 지웠는데,
혹시나 해서 들어가본 음성메모 위치에 .mov 파일이 그대로 남아있는게 아닌가!!


자, 그럼 이런 상황을 가정해 볼 수 있겠다. 만약 이번과 같은 사태가 다시 발생하게 된다면, 그래서 음성메모 어플 상에서 오류난 해당 음성파일들을 지운다 하더라도 *.m4a 파일만 삭제되고 *.mov 파일은 삭제되지 않을 것이다.

약간 의왼데, 아마 .m4a 파일의 인코딩은 항상 성공하고, .mov 파일은 그 시점에서 삭제되는 것이 당연하게 코딩되어 있어서, 음성메모 어플 상에서 음성파일을 지울 때, .m4a 파일만 삭제하도록.. 즉, 내가 겪은 이 상황에 대한 에러 핸들링은 되어있지 않아 .mov 파일은 항상 남도록 코딩된 듯 하다..
결국 손으로 지워줘야하는..


아.. 새벽 4신데.. 지금 이거 뭐하는거지..





-------------------- 2010/07/31 01:26 내용 추가 --------------------
이곳에 iOS4 음성메모 관련 에러에 대한 조금 더 자세한 증상과 재현을 확인하실 수 있습니다. 참고하세요~

+ Recent posts