레이블이 trouble shooting인 게시물을 표시합니다. 모든 게시물 표시
레이블이 trouble shooting인 게시물을 표시합니다. 모든 게시물 표시

2016년 11월 16일 수요일

특정 동적 라이브러리 지정 방법

$ ldd ./interproscan-5.20-59.0/bin/sfld/sfld_preprocess 
./interproscan-5.20-59.0/bin/sfld/sfld_preprocess: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./interproscan-5.20-59.0/bin/sfld/sfld_preprocess)
linux-vdso.so.1 =>  (0x00007fff33380000)
libm.so.6 => /lib64/libm.so.6 (0x00000039fbe00000)
libc.so.6 => /lib64/libc.so.6 (0x00000039fb200000)
/lib64/ld-linux-x86-64.so.2 (0x00000039fae00000)

$ ldd /usr/java/latest/bin/java
linux-vdso.so.1 =>  (0x00007fffbaab0000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00000039fba00000)
libjli.so => /usr/java/latest/bin/../lib/amd64/jli/libjli.so (0x00007fa057508000)
libdl.so.2 => /lib64/libdl.so.2 (0x00000039fb600000)
libc.so.6 => /lib64/libc.so.6 (0x00000039fb200000)
/lib64/ld-linux-x86-64.so.2 (0x00000039fae00000)

$ ./interproscan-5.20-59.0/bin/sfld/sfld_preprocess
./interproscan-5.20-59.0/bin/sfld/sfld_preprocess: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./interproscan-5.20-59.0/bin/sfld/sfld_preprocess)

$ java -version
java version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

아래와 같이 LD_LIBRARY_PATH에 /BiO/apps/glibc-2.14/lib의 모든 라이브러리를 설정하게 되면 libc.so.6뿐만 아니라 libdl.so.2, libdl.so.2도 라이브러리를 로딩하여 자바가 실행이 안되는 경우가 발생한다.
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/BiO/apps/glibc-2.14/lib/

특정 라이브러리(libc.so.6)만 프로세스 실행 중 전역으로 로딩하려면 아래와 같이 설정해 주면된다.
$ export LD_PRELOAD='/BiO/apps/glibc-2.14/lib/libc.so.6'

$ ldd ./interproscan-5.20-59.0/bin/sfld/sfld_preprocess 
linux-vdso.so.1 =>  (0x00007fff09e00000)
/BiO/apps/glibc-2.14/lib/libc.so.6 (0x00007fc642070000)
libm.so.6 => /lib64/libm.so.6 (0x00000039fbe00000)
/lib64/ld-linux-x86-64.so.2 (0x00000039fae00000)

$ ldd /usr/java/latest/bin/java
linux-vdso.so.1 =>  (0x00007ffff1400000)
/BiO/apps/glibc-2.14/lib/libc.so.6 (0x00007fa02f050000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00000039fba00000)
libjli.so => /usr/java/latest/bin/../lib/amd64/jli/libjli.so (0x00007fa02ee20000)
libdl.so.2 => /lib64/libdl.so.2 (0x00000039fb600000)
/lib64/ld-linux-x86-64.so.2 (0x00000039fae00000)

$ java -version
java version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

$ ./interproscan-5.20-59.0/bin/sfld/sfld_preprocess
Pre-process SFLD alignments/HMMs
Usage ./interproscan-5.20-59.0/bin/sfld/sfld_preprocess: options:
--onlymatches | -m         only print the sequences that match the HMM and pass the SFLD residue post-processing (otherwise print all)
--hmmbuild    | -H         force building of hmm even if it exists
--nosearch    | -S         don't run search if output files exist
--hmmerpath   | -p PATH    path to hmm* binaries (overrides $HMMER_PATH)
--hmm         | -r FILE    HMM file (input)
--sites       | -s FILE    sites file (output)
--alignments  | -a FILE    alignments file (input)
--hmm_dir     | -d DIR     SFLD HMM directory (overrides $SFLD_LIB_DIR)



※ 전역이 아닌 특정 프로그램 실행 시에만 적용 할 때
$ LD_PRELOAD='/BiO/apps/glibc-2.14/lib/libc.so.6' /BiO/scratch/eriteam/njkoo/programs/interproscan/interproscan-5.20-59.0/bin/sfld/sfld_preprocess

※ 다른 방법들
1. 바이너리를 빌드할 때 glibc 위치를 지정 해 주는 방법
=> g++ main.o -o myapp ... \
   -Wl,--rpath=/path/to/newglibc \
   -Wl,--dynamic-linker=/path/to/newglibc/ld-linux.so.2

2. 소스를 재빌드하기 어려울 경우 바이너리를 패치하는 방법이 있다.
=> http://nixos.org/patchelf.html

2016년 11월 8일 화요일

SGE 우선 순위

# vi /opt/gridengine/default/common/sge_request
-p -500
1) 미적용시 기본적으로 "0"이 적용
2) 사용자는 -1023 ~ -1까지 우선순위를 낮출 수가 있다.
3) -1023이 가장 낮은 우선순위이고, -1이 가장 높은 우선순위
4) qsub 작업 시 기본 우선순위를 -500으로 지정하였고, #$ -p -100등으로 우선순위 옵션을 변경해서 submit

2016년 11월 7일 월요일

mysql root 패스워드 초기화

# service mysqld stop
# mysqld_safe --skip-grant &
mysql -uroot mysql
mysql> update user set password=password('kobic123') where user='root';
mysql> flush privileges;

# service mysqld restart

윈도우 업데이트 후 자동 재시작 안함

"Windows + r" > 컴퓨터 구성 > 관리 템플릿 > Windows 구성 요소 > Windows 업데이트
> 예약된 자동 업데이트 설치 시 로그온한 사용자가 있을 경우 자동 다시 시작 사용 안 함
> 사용 > 적용 > 확인

libgcc_s.so.1 must be installed for pthread_cancel to work

# /BiO/apps/interproscan-5.7-48.0/bin/blast/2.2.6/blastall -p blastp -F F -e 0.0005 -b 300 -v 300 -m 8 -a 4 -d /BiO/apps/interproscan-5.7-48.0/data/pirsf/2.84/sf.seq -i /BiO/scratch/biosysrnd/firefox/RESEARCH/Prometheus/Rawdata/TheOthers/Picea_abies/temp/ngs-0-1.local_20161103_195224381_jvqw/jobPIRSF-2.84/000000000951_000000001000.blastInputFile.fasta
libgcc_s.so.1 must be installed for pthread_cancel to work


# yum whatprovides libgcc_s.so.1
# yum install libgcc-4.4.7-11.el6.i686

2016년 10월 26일 수요일

ifconfig shows wrong MAC for ib0


Infiniband hardware address can be incorrect! Please read BUGS section in ifconfig(8).
infiniband A0:00:03:00:FE:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00  txqueuelen 1024  (InfiniBand)

# man ifconfig
BUGS
       Ifconfig  uses  the  ioctl  access method to get the full address information, which limits hardware addresses to 8 bytes.  Because Infiniband hardware address has 20
       bytes, only the first 8 bytes are displayed correctly.  Please use ip link command from iproute2 package to display link layer  informations  including  the  hardware address


즉, Infiniband hardware address는 20 bytes로 ifconfig 명령으로 표기할 수 없습니다. ifconfig 명령어가 아닌 iproute 패키지의 ip 명령어를 사용하거나 패치를 하면 된다.

※ 1Gb Ethernet의 Mac address는 6Bytes로 구성되어 있음
※ Infiniband는 20Bytes로 구성되어 있는데 8Bytes 이하 00으로 표시 됨!!

ex) ifconfig ib1
A0:00:03:00:FE:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00

ex) ip a show ib1
a0:00:03:00:fe:80:00:00:00:00:00:00:00:02:c9:03:00:a2:fb:32

2016년 10월 19일 수요일

IP Masquerading

# sysctl -w net.ipv4.ip_forward=1
# vi /usr/lib/sysctl.d/50-default.conf
net.ipv4.ip_forward = 1

# sysctl -p
# iptables -F && iptables -F -t nat
# iptables -t nat -A POSTROUTING -s 10.3.0.0/16 -o em2 -j MASQUERAD  // em2는 외부 네트워크

hostname 변경

# hostnamectl set-hostname isbyeon.local

# cat /etc/hostname
isbyeon.local

2016년 10월 18일 화요일

CONTROLLING IPOIB MODE(DATAGRAM MODE, CONNECTED MODE)

datagram mode
2KB IB MTU: 2044 bytes.(maximum)
4KB IB MTU: 4092 bytes.(maximum)

connected mode
65520 bytes.(maximum)




Controlling IPoIB mode
# cat /sys/class/net/ib0/mode
datagram

# cd /etc/sysconfig/network-scripts
# ./ifdown ib0
# echo connected > /sys/class/net/ib0/mode
# ./ifup ib0

# cat /sys/class/net/ib0/mode
connected

# vi /etc/infiniband/openib.conf
#SET_IPOIB_CM=auto
SET_IPOIB_CM=yes

IPOIB_MTU=65520

※ connected mode = no
# sed -i 's/SET_IPOIB_CM=auto/SET_IPOIB_CM=no/g' /etc/infiniband/openib.conf


2016년 10월 15일 토요일

R 설치

# yum -y install libpng libpng-devel libtiff libtiff-devel libjpeg-turbo libjpeg-turbo-devel readline-devel bzip2-devel libcurl-devel cairo-devel

# cd /BiO/src
# wget http://cran.nexr.com/src/base/R-3/R-3.3.0.tar.gz
# tar zxvfp R-3.3.0.tar.gz
# cd R-3.3.0/
# ./configure --prefix=/BiO/R-3.3.0 --enable-R-shlib --with-libpng --with-jpeglib --with-libtiff --with-x
# make && make install
# /BiO/R-3.3.0/bin/R
> capabilities()
       jpeg         png        tiff       tcltk         X11        aqua 
       TRUE        TRUE        TRUE       FALSE        TRUE       FALSE 
   http/ftp     sockets      libxml        fifo      cledit       iconv 
       TRUE        TRUE        TRUE        TRUE        TRUE        TRUE 
        NLS     profmem       cairo         ICU long.double     libcurl 
       TRUE       FALSE       FALSE       FALSE        TRUE        TRUE