2017年8月10日 星期四

讓SSH僅允許用金鑰登入

用ssh登入遠端主機有兩種方式:
  1. 輸入帳號密碼,參考《SSH遠端連線,接視窗回本機使用》
  2. 帳號配合金鑰,參考《SSH遠端登入不用密碼》
第1種方式會遇到不安好心的人士測試帳號密碼,所以對於比較重要的帳號,可以關閉第1種登入的方式,只允許用第2種方式也就是金鑰登入。關閉的方式是設定/etc/ssh/sshd_config,在檔案的最後面加入:
Match User user1,user2,user3
    PasswordAuthentication no

2017年8月9日 星期三

讓sort用多核心跑

GNU sort(就是在Linux裡面預設的,作者是Mike Haertel與Paul Eggert),裡面有個平行化的選項,如果不選的話預設就會開多核心。這邊測試《PDB中最常出現的氨基酸片段》裡面排序進一億筆5-mer,得到的速度與用單核心來比較



2017年8月8日 星期二

看port被佔用的情形

要看有哪些port開啟,被什麼程式佔用,有下面幾招:
  • netstat -lntu
  • lsof -i -P -n
    1. sudo lsof -i -P -n | tee >(head -n 1) >(grep LISTEN) >/dev/null
    2. sudo lsof -i -P -n | tee >(head -n 1) >(grep LISTEN | grep sshd) >/dev/null
    3. sudo lsof -i -P -n | tee >(head -n 1) >(grep -v LISTEN | grep sshd) >/dev/null
    4. sudo lsof -i -P -n | tee >(head -n 1) >(grep :80) >/dev/null
    5. sudo lsof -i:80
  • sudo netstat -apnsudo netstat -lpn
    1. sudo netstat -apn | tee >(head -n 1) >(grep LISTEN) >/dev/null
    2. sudo netstat -apn | tee >(head -n 1) >(grep ssh) >/dev/null 
    3. sudo netstat -apn | grep :80 
  • sudo nmap -sT -O localhost

2017年8月7日 星期一

氨基酸B、Z、X、J、O、U

蛋白質的氨基酸序列中,除了原本的20種氨基酸以外,有時候會出現:
  • B:也稱Asx、此位置是Asparagine (N)或Aspartic acid (D)
  • Z:也稱Glx、此位置是Glutamine (Q)或Glutamic acid (E)
  • X:也稱Xaa代表此位置未知、或是在此位置可以是任何一種氨基酸
  • J:也稱Xle,代表此位置是Leucine (L)或Isoleucine (I)
  • O:也稱Pyl,全稱Pyrrolysine,第22種氨基酸
  • U:也稱Sec,全稱Selenocysteine,第21種氨基酸

2017年8月6日 星期日

PDB中最常出現的氨基酸片段

想要知道五個連續氨基酸出現次數用下面兩個指令就可以得到:
  1. wget ftp://ftp.wwpdb.org/pub/pdb/derived_data/pdb_seqres.txt
  2. cat pdb_seqres.txt | grep -e "mol:protein" -A 1 \
    | sed '/^--$/d' | grep -v "^>" \
    | awk '{while(length($0)>=5){print substr($0,1,5);gsub(/^./,"")}}' \
    | grep X -v | sort | uniq -c | sort -k 1 -n -r \
    > prot_sorted_5peptide.count
第1個指令是下載當前所有PDB檔案序列pdb_seqres.txt,約122MB
第2個指令是計算個數的檔案,結果存在prot_sorted_5peptide.count裡面,計算的時間約莫是五分鐘,下面是分析的指令: