Google AdSense (text)

hidden logo stop

Moving

거지 같은 이글루스 광고노출 정책이 싫어서,
새 보금자리(http://blog.leocat.kr/)로 이사감.

[Linux] 다른 터미널 강제 로그아웃 시키기 Computer & Program

who 명령을 날리면 지금 접속해 있는 사용자를 확인할 수 있다. 그런데 딴짓을 하는 것 같아서 강제로 해당 터미널을 로그아웃 시키고 싶은 경우가 있다. 이럴 때는 이런 명령을 써보자..

$ who
user1 pts/3 2011-11-06 19:23 (XXX.XXX.XXX.XXX)
user1 pts/4 2011-11-06 19:23 (XXX.XXX.XXX.XXX)
user1 pts/5 2011-11-06 22:47 (XXX.XXX.XXX.XXX)
user1 pts/6 2011-11-06 22:47 (XXX.XXX.XXX.XXX)

$ skill -kill -t pts/3
$ skill -kill -t pts/4

$ who
user1 pts/5 2011-11-06 22:47 (XXX.XXX.XXX.XXX)
user1 pts/6 2011-11-06 22:47 (XXX.XXX.XXX.XXX)



사실.. 이 내용은 hive를 쓰다 보니.. 한 계정에서 이미 hive cli를 실행하고 있으면 database(default인 경우 'metastore_db')에 lock이 걸려서 다른 계정에서 쓸 수 없어 찾게 됐다. 위의 pts/3과 pts/4를 쓰고 있었는데 장기간 입력이 없어 강제로 터미널이 끊어진 상태였다. 이 때 새로 접속하여 hive를 사용하려 하니 아래와 같은 메시지와 로그가 나왔다.
hive> show tables;
FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: Failed to start database 'metastore_db', see the next exception for details.
NestedThrowables:
java.sql.SQLException: Failed to start database 'metastore_db', see the next exception for details.
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask

로그 파일을 살펴보니 이렇게 적혀 있었다.
Caused by: ERROR XSDB6: Another instance of Derby may have already booted the da
tabase /home/user1/metastore_db. at org.apache.derby.iapi.error.StandardException.newException(Unknown So
urce) at org.apache.derby.impl.store.raw.data.BaseDataFileFactory.privGetJBMSL
ockOnDB(Unknown Source) at org.apache.derby.impl.store.raw.data.BaseDataFileFactory.run(Unknown
Source)

이미 다른 계정이 사용 중이라 lock 파일이 생겨 lock이 걸린 것이다. 다른 계정을 로그아웃 시키거나, 다른 database를 사용하거나, lock 파일을 삭제해 주자..

핑백

  • sss : pts 관련 2011-11-30 14:01:31 #

    ... -t pts/0http://www.mahome.net/index.php?mid=normal&page=8&document_srl=18982http://entireboy.egloos.com/4642662http://www.aircuve.com/system/bbs/board.php?bo_table=tech&wr_id=12 ... more

덧글

댓글 입력 영역

Google AdSense (text/image)