java.io.IOException: no locks available

 

마운트시 -o nolock 옵션 적용

$> mount -t nfs -o nolock

fstab에 적용

$> vi /etc/fstab

XXX:/storageDir /local nfs nolock 0 0

---------------------------------------------------------

<rocks clusters>

nfs 파일 시스템에서 파일 lock 이 되지 않을 때
아래와 같이 수정하고 nfs 데몬 재시작, nfslock 데몬 재시작
(예상 관련 데몬: portmap, autofs)

[system]$ cat /etc/auto.home
user01  -fstype=nfs,nolock 111.111.111.111:/data/home/user01

 

Posted by 옥탑방람보
,

rpmrebuild

TA/Common 2013. 2. 4. 14:44

$root> rpm -i rpmrebuild-2.4.1.noarch.rpm

$root> rpm -qa | grep module

$root> rpmrebuild module-1.1.1

$root> cp /usr/src/redhat/RPMS/x86_64/module-1.1.1 ~/

$root> chown user.user ~/module-1.1.1

 

Posted by 옥탑방람보
,

$> convert image.pdf image.png

 

위 명령어는 ImageMagick 모듈 설치로 사용가능

$> yum search ImageMagick

 

이미지 종류별 포맷 변환, 사이즈, 해상도등 다양한 기능 가지고 있음

 

'TA > Common' 카테고리의 다른 글

nfs 파일 시스템에서 파일 lock 이 되지 않을 때  (0) 2013.02.04
rpmrebuild  (0) 2013.02.04
bioconductor 미러사이트 구축  (0) 2013.02.04
nmap  (0) 2013.02.04
ping, tracert, traceroute  (0) 2013.02.04
Posted by 옥탑방람보
,

http://www.bioconductor.org/about/mirrors/mirror-how-to/

 

1. 방화벽 오픈 - 873번

 

2. 데이터 다운로드

    $> rsync -zrtlv --delete bioconductor.org::2.11 /local/bioc/packages/2.11

3. 아파치에 연결

    $> ln -s /local/bioc /var/www/html/bioconductor

4. 연결 정보 변경

5. bioconductor 설치

6. bioconductor 내 cran 사이트 설정부분 변경 및 brainarray 데이터 주소 삭제

    * biocLite() 시 시간이 오래 소요되는 원인을 찾는 중 확인된 사항임

    $bioconductor 미러서버> cd /local/bioc/packages/2.11/bioc/src/contrib/

    $bioconductor 미러서버> cp BiocInstaller_1.8.3.tar.gz BiocInstaller_1.8.3.tar.gz.ori

    $bioconductor 미러서버> tar xvfz BiocInstaller_1.8.3.tar.gz

    $bioconductor 미러서버> vim BiocInstaller/R/biocLite.R

      repos["CRAN"] <- "http://XXX/cran"  #86번째줄의 정보를 구축된 미러사이트 주소로 변경

      #repos[["MBNI"]] <- mbniUrl #89번째줄의 내용을 주석처리함 (http://brainarray.mbni.med.umich.edu/bioc 데이터 받고 나면 mbniUrl 부분을 데이터 받은 서버 주소로 변경해서 반영할 필요 있음)

    $bioconductor 미러서버> tar cvfz BiocInstaller_1.8.3.tar.gz BiocInstaller

     

    $설치할 서버> cd /home/bio/install/R/library/BiocInstaller

    $설치할 서버> R

    $R> source("http://XX/bioconductor/packages/2.11/biocLite.R")

    $R> biocLite()

     

 

'TA > Common' 카테고리의 다른 글

rpmrebuild  (0) 2013.02.04
리눅스에서 pdf 를 이미지로 변환  (0) 2013.02.04
nmap  (0) 2013.02.04
ping, tracert, traceroute  (0) 2013.02.04
R설치 in Rocks Clusters 6 (CentOS 6) & 5  (0) 2013.02.04
Posted by 옥탑방람보
,

nmap

TA/Common 2013. 2. 4. 14:41

$> nmap -sU -p 1-65535 -T4 -A -v 182.192.71.12

 

윈도우에서는 Zenmap 설치 (nmap.org)

리눅스에서는 nmap 설치 (yum search nmap 또는 nmap.org)

 

방화벽 오픈 여부 확인

TCP경우 $> nmap -sT -p 1-65535 -T4 -A -v 182.192.71.12

UDP경우 $> nmap -sU -p 1-65535 -T4 -A -v 182.192.71.12

'TA > Common' 카테고리의 다른 글

리눅스에서 pdf 를 이미지로 변환  (0) 2013.02.04
bioconductor 미러사이트 구축  (0) 2013.02.04
ping, tracert, traceroute  (0) 2013.02.04
R설치 in Rocks Clusters 6 (CentOS 6) & 5  (0) 2013.02.04
grep 사용시 or 사용 방법  (0) 2013.02.04
Posted by 옥탑방람보
,

ping은 먼저 보내는 호스트, S, 에서 자신의 시간(time-stamp)을 ICMP 메세지에 포함시켜 보다는 호스트, R, 에게 보내게 된다.

받는 쪽, R은 이 메세지를 받자마자 그대로 받는 주소와 보내는 주소를 바꾸어 다시 보내는 쪽에 보내게 된다.

원래 ping 메세지를 보냈던 S는 R이 보낸 메세지를 받는 시간을 기록하여 원래 S 자신이 보냈던 시간과의 차이를 계산해 냄으로써, RTT(round trip time)를 계산하게 된다.

보통 ping의 출력 결과는 bytes, time, TTL 값이 나오게 되는데,

bytes 에서는 S에서 보낼 때, 거의 무의미하게 포함되는 데이터 크기를 말한다.

time은 위에서 말한데로 계산한 RTT 값,

TTL은 time-to-live 값을 말한다. TTL은 크게 영향을 미치지 않지만, bytes의 값은 보낸 데이터의 크기이기 때문에 ,RTT계산시 오차가 생기게 될 수 있다.

 

tracert 는 윈도우상 명령어이다.

tranceroute는 TTL 값을 하나씩 줄여서 R에 메세지를 보내는 것이다.

TCP/IP는 connection-less service이기 때문에 잘못된 IP 주소를 넣어서 데이터를 전송하게 될 경우 IP packet은 네트워크 상에서 loop를 돌게 되는 수가 있다.

이 때문에, TTL 값이 필요하게 되는데, TTL은 라우터 하나를 지날 때마다 값이 하나씩 줄어들게 된다.

만약, 어떤 라우터에서 TTL 값이 0이 된 메시지를 받게 된다면, 에러 메세지를 원래 보낸 호스트에 보내주게 된다.

traceroute는 이런 TCP/IP 의 성질을 이용하여, TTL 값을 1에서 부터 하나씩 늘려면서 R에게 ping을 보내는 것이라 생각하면 된다.

이렇게 되면 S와 R사이에있는 라우터에서 에러 메시지를 보내주는 것을 보고, S와 R 사이의 bottelneck이 무엇이 되는지를 알 수가 있다.

 

예를 들어, S--(1)--(2)--(3)--R 순으로 네트워크가 연결되어 있다면, 맨처음 S는 TTL값을 1로하여 보내주면, (1)에서는 S에게 보낸 메시지가 잘못되었다고 판단하고, 에러 메시지를 S에게 보내게 된다. 이렇게 되면, S는 본래 처음 자신이 보냈던 시간값과 받은 시간을 가지고 S와 (1)사이의 RTT를 구하게 된다. 이런 식으로 TTL값을 하나씩 늘려가다가 맨 마지막에는 R까지 도달하게 되면, S와 R사이의 라우터 혹은 노드 간의 링크에서 걸리는 시간들을 모드 측정할 수 있다.

 

 

출처: 네이버지식인

 

'TA > Common' 카테고리의 다른 글

bioconductor 미러사이트 구축  (0) 2013.02.04
nmap  (0) 2013.02.04
R설치 in Rocks Clusters 6 (CentOS 6) & 5  (0) 2013.02.04
grep 사용시 or 사용 방법  (0) 2013.02.04
umount: device is busy  (0) 2013.02.04
Posted by 옥탑방람보
,

Rocks Clusters 6 (CentOS 6) 에서 R 설치

 

* 소스로 설치하는 방법 (현재 CentOS 6를 위한 rpm을 제공하지 않고 있어서 소스로 설치함)

 

1. 다운로드

http://cran.nexr.com/src/base/R-2/R-2.15.2.tar.gz

 

2. 관련 모듈 설치

http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm

다운로드 받아서 설치 (이모듈을 설치하지 않으면 make 시 attach라는 function이 없다고 나옴)

Error: could not find function "attach"

$> rpm -i epel-release-6-7.noarch.rpm

* 기타 모듈 gcc, libgcc, cpp, libgfortran 등등 모듈 설치 확인

 

3. 설치

$> tar xvfz R-2.15.2.tar.gz

$> cd R-2.15.2

$> mkdir makeout

$> ./configure --prefix=/path/makeout --with-readline=no

$> make

$> make install

 

실행파일 /path/R-2.12.1/bin/R

 

 

<Rocks Clusters 5에서 R 2.15.2설치>

$> tar xvfz R-2.15.2.tar.gz

$> cd R-2.15.2

$> ./configure --prefix=/path/makeout --with-readline=no

$> make

$> make install

 

$> touch R_HOME/etc/Rprofile.site  # touch /usr/lib64/R/etc/Rprofile.site

$> cd R_HOME/etc/

$> vi Rprofile.site

options(repos=c(CRAN="http://미러서버아이피/cran"))

$> R

R> install.packages("ENmisc")

'TA > Common' 카테고리의 다른 글

nmap  (0) 2013.02.04
ping, tracert, traceroute  (0) 2013.02.04
grep 사용시 or 사용 방법  (0) 2013.02.04
umount: device is busy  (0) 2013.02.04
glusterfs 3.3 설치 및 구성  (0) 2013.02.04
Posted by 옥탑방람보
,

Name 이라는 단어와 Date 라는 단어 둘 중 하나 포함하는 라인 출력

$> grep -E 'Name|Date' input.txt

'TA > Common' 카테고리의 다른 글

ping, tracert, traceroute  (0) 2013.02.04
R설치 in Rocks Clusters 6 (CentOS 6) & 5  (0) 2013.02.04
umount: device is busy  (0) 2013.02.04
glusterfs 3.3 설치 및 구성  (0) 2013.02.04
ssh 접속시 환영메시지 생성하는 방법  (0) 2013.02.04
Posted by 옥탑방람보
,

umount: device is busy

TA/Common 2013. 2. 4. 14:36

umount: device is busy

 

$> umount /mnt/imsi

umount: /mnt/imsi: device is busy

 

==>

 

$> fuser -cu /mnt/imsi/     #check users holding this directory

$> fuser -ck /mnt/imsi      #remove users holding this directory forcely

 

* (주의) fuser -cu 시 확인되는 /mnt/imsi/를 holding 하고 있는 계정들이 logout 된다.

 

'TA > Common' 카테고리의 다른 글

R설치 in Rocks Clusters 6 (CentOS 6) & 5  (0) 2013.02.04
grep 사용시 or 사용 방법  (0) 2013.02.04
glusterfs 3.3 설치 및 구성  (0) 2013.02.04
ssh 접속시 환영메시지 생성하는 방법  (0) 2013.02.04
설치된 OS 버전 확인  (0) 2013.02.04
Posted by 옥탑방람보
,

glusterfs 3.3 설치 및 구성

 

1. 다운로드

2. 설치

    $> ./configure

     

    <모듈이 사전 설치 되지 않아 에러발생시>

    $> yum install python-cytpes.x86_64      #configure: error: python does not have ctypes support

    $> yum install flex.x86_64                     #configure: error: Flex or lex required to build glusterfs.

    $> yum install bison                            #configure: error: GNU Bison required to build glusterfs.

    $> yum install openssl                        #configure: error: OpenSSL crypto library is required to build glusterfs

     

    $> make

    $> make install

    $> glusterfs --version

    $> chkconfig glusterd on

     

    <cluster>

    * cluster에서 ./configure, make, make install 과정을 각 노드에 로그인해서 수행해야함.

 

3. Storage pool 구성

    $> gluster peer probe slave-0-0    # 노드 하나씩 추가

    $> gluster peer status  # 구가된 peer 상태 확인

     

    * peer 삭제

    $> gluster peer detach slave-0-0

     

    <cluster>

    * peer 모두 등록 후 rocks run host "hostname; ls -al /var/lib/glusterd/peers/ | wc -l" 를 통해 모든 노드에 peer가 잘 등록되었는지 확인

    * 만약 일부 노드에서 peer가 다 등록되어 있지 않다면, /etc/hosts 파일에 각 노드들 도메인이름, IP 넣어 주면 자동 등록됨

4. 볼륨 생성

    $> gluster volume create <volume_name> server1:/dir server2:/dir ...

    예 $> gluster volume create gv10 slave-0-0:/disk1 slave-0-0:/disk2 slave-0-1:/disk1 slave-0-1:/disk1

    $> gluster volume start <volume_name>

     

    * 볼륨 삭제

    $> gluster volume stop <volume_name>

    $> gluster volume delete <volume_name>

    * "operation failed 에러 발생시" /etc/init.d/glusterd restart

    * delete 후에도 info 에서 리스트 나타날 경우" 다시 해당 gluster volume start 한 후 stop, delete 한다.

    * delete 가 안될 경우 모든 서버에서 정보가 삭제되었는지 확인한다. 한군데라도 정보가 있으면, 볼륨 정보가 다시 생성된다. (gfs는 따로 마스터가 없는 특징)

    * 특정 다른 서버에 접속하여 볼륨을 삭제 하는 방법도 있다.

    * 참고: volume 정보 저장 디렉토리 /var/lib/glusterd/vols/

     

    * 볼륨상태 확인

    $> gluster volume info <volume_name>

    $> gluster volume status

    $> gluster volume list

     

    * 볼륨생성시 아래와 같은 에러 발생시

    GlusterFS: {path} or a prefix of it is already part of a volume

      setfattr -x trusted.glusterfs.volume-id /disk1

      setfattr -x trusted.gfid /disk1

      rm -rf /disk1/.glusterfs

      <cluster>

      rocks run host "setfattr -x trusted.glusterfs.volume-id /disk1"

      rocks run host "setfattr -x trusted.gfid /disk1"

      rocks run host "rm -rf /disk1/.glusterfs"

     

    * gluster volume create gv10 replica 3 과 같이 replica 설정시에는 brick의 수가 replica 수의 배수만큼 있어야 한다.

    * 볼륨 생성후 조금 시간 후 (약 10초?) 다른 명령어 주길 권함

    * 볼륨 구성은 되나, 마운트가 되지 않을 때

      --> network 상에서 latency time이 길어지게 되면, / 밑에 core 파일을 생성하고 에러가 발생한다.

      --> gfs로 구성시에는 network interface에 대한 고민을 해야한다. rdma

      --> 특히 볼륨구성후 nfs를 사용할때에는 대표되는 서버를 설정하게 되는데, 이 때에 특히 대표되는 서버로부터의 network load balancing을 생각하여 network 구성이 되어 있어야 performance가 나올 수 있다.

    * 경험상 모두 1G로 구성된 상황에서 40개 서버, 240개 brick 으로 replica 3 을 주어 115T 까지 구성되었음 (performance는 안나옴)

    * 마운트 가 되지 않을 때에는 / 밑에 core 파일이 생성되었는지 확인 (많은 브릭수)

    * 마운트 되는 서버의 디렉토리가 brick 에 포함되어 있어야 함. 이렇게 해야 비교적 많은 brick 가지고 glusterfs 구성해서 마운트 할때 에러나지 않음.

     

    <cluster>

    * 모든 노드에서 볼륨 정보가 잘 공유되었는지 확인하려면 rocks run host "hostname; ls -la /var/lib/glusterd/vols/gv | wc -l" 로 확인

5. 마운트

    $> mount -t glusterfs <ip_address>:/<volume_name> /gfsshare/

glusterfs 를 구성하기 위해서는 인프라 설계부터 glusterfs 를 위한 방식으로 구성되어야 performance가 날 수 있다. 즉, 하나의 서버의 로칼 디스크는 raid5 등으로 묶어 서버를 하나의 brick 으로 사용할 수 있게 한다. 그리고 구성해야하는 사이즈가 100T 이상일 경우에는 bonding 방법이나 10G 등과 같이 network bandwidth를 충분히 잡아 줘야 구성도 되고 속도도 나온다. glusterfs에서는 10G 구성이 가능하게 모듈을 지원한다. 결국 이 방법도 사이즈를 크게 하려면 돈이 많이 든다는 이야기이다. 결국 hadoop을 다시 써야 한다는 말인가..ㅋ

'TA > Common' 카테고리의 다른 글

grep 사용시 or 사용 방법  (0) 2013.02.04
umount: device is busy  (0) 2013.02.04
ssh 접속시 환영메시지 생성하는 방법  (0) 2013.02.04
설치된 OS 버전 확인  (0) 2013.02.04
disk 추가 후, partition, format  (0) 2013.02.04
Posted by 옥탑방람보
,