今天是生信小組學(xué)習(xí)的第二天隔躲,今天學(xué)習(xí)了如何召喚Linux宣旱。在正式開始前浑吟,我利用MindMaster軟件做了一個思維導(dǎo)圖整理出了今天教程的提綱组力。
1. 什么是Linux抖拴,什么是服務(wù)器?
Linux
簡單點(diǎn)說候衍,Linux是一種操作系統(tǒng)脱柱,它與Windows拉馋、Mac共同組成目前最主流的三大操作系統(tǒng),可以這么說随闺,只要你使用電腦,就離不開它們龄句。作為不同的操作系統(tǒng)分歇,自然也就存在很多不同的地方欧漱。其中Windows是目前PC使用最多的一種系統(tǒng),因為它是通過圖形操控的缚甩,很容易上手使用擅威;Mac系統(tǒng)也致力于方便人們的體驗方面郊丛;而Linux的操作方式是通過命令行執(zhí)行的瞧筛,需要一定的理論基礎(chǔ),所以常常就只有程序員、數(shù)據(jù)分析人員等等的專業(yè)人員才會用到它绅络。相比Windows和Mac而言嘁字,Linux優(yōu)點(diǎn)就在于纪蜒,這個系統(tǒng)是免費(fèi)的、開源的纯续、而且穩(wěn)定安全。
服務(wù)器
服務(wù)器的英文名稱是Supercomputer窗看,顧名思義显沈,就是超級計算機(jī),和普通計算機(jī)相比涤浇,他的處理器魔慷、內(nèi)存、儲存容量等等都要比PC的配置高很多纹烹。因此召边,服務(wù)器能滿足一些特殊的需求隧熙,比如大數(shù)據(jù)的云計算、分析等音念。同時躏敢,服務(wù)器還能滿足多個用戶同時使用件余,且互不干擾。目前旬渠,由于Linux系統(tǒng)的優(yōu)點(diǎn)端壳,目前市場上幾乎所有的服務(wù)器都是使用的Linux操作系統(tǒng)损谦。
2. 學(xué)習(xí)生信前為什么要先學(xué)Linux岳颇?
2.1 許多生信相關(guān)的軟件如fastqc赦役、smatools等都是基于Linux開發(fā)的栅炒,只能在Linux操作系統(tǒng)下才能運(yùn)行赢赊。
2.2 Linux是免費(fèi)開源的,需要軟件成本低叭披,且由于開源玩讳,幾乎世界上使用Linux的人都能參與到改進(jìn)Linux的工作中熏纯,從而使得Linux也相對更加穩(wěn)定和安全樟澜。
2.3 Linux主要通過命令行執(zhí)行指令,對圖形界面需求低霹俺,這也就為計算機(jī)節(jié)約了許多資源毒费,更有利于計算分析觅玻。
2.4 Linux可以通過命令行批量、大量的處理文件,這就使得工作更加的高效便捷北苟,這也是圖形操作系統(tǒng)無法實現(xiàn)的友鼻。
3. 如何召喚Linux闺骚?
根據(jù)操作系統(tǒng)的不同召喚Linux的方法分為以下幾種:
Windows
3.1 Windows10系統(tǒng)可以直接從系統(tǒng)中調(diào)出Linux子系統(tǒng)使用僻爽,具體方法見生信小白第一天-0成本召喚linux
3.2 非Windows10用戶可以通過安裝虛擬機(jī)的方式安裝一個Linux系統(tǒng)胸梆,也就是常說的安裝雙系統(tǒng)须板。詳細(xì)步驟見Slash·Young 虛擬機(jī)中安裝Linux教程
3.3 Mac 系統(tǒng)可以直接從terminal進(jìn)入习瑰,然后使用Linux甜奄。
3.4 當(dāng)然也可以在閑置電腦上安裝Linux純系統(tǒng),具體步驟可上網(wǎng)檢索牍氛。
4. 如何登陸服務(wù)器糜俗?
一般我們登陸的服務(wù)器都是云服務(wù)器曲饱,我們需要通過一些軟件來進(jìn)行遠(yuǎn)程登陸。Windows常用putty楔敌、xshell卵凑,Mac則是用terminal或iterms登錄勺卢。在這里用的是putty程序遠(yuǎn)程登錄的象对。具體操作如下
4.1 在官網(wǎng)下載安裝putty(過程不贅敘)
5. Linux的一些基本操作
由于我的電腦是Windows系統(tǒng)的菇曲,需要安裝一個Linux系統(tǒng)抚吠,通過幾種方法對比楷力,我選擇調(diào)用Windows系統(tǒng)中的Linux子系統(tǒng)的方法來滿足需求。具體操作步驟如下:生信小白第一天-0成本召喚linux
基本操作
5.1 顯示當(dāng)前路徑(pwd)
xiangwei@pc:~$ pwd
/home/xiangwei
xiangwei@pc:~$
輸入命令pwd后垃帅,輸出的結(jié)果/home/xiangwei就是當(dāng)前的工作路徑
5.2 創(chuàng)建目錄(mkdir)與顯示(ls)
xiangwei@pc:~$ ls
SRR3589958 System database mafft_7.450-1_amd64.deb miniconda3
xiangwei@pc:~$ mkdir bioinformation
xiangwei@pc:~$ ls
SRR3589958 bioinformation mafft_7.450-1_amd64.deb
System database miniconda3
xiangwei@pc:~$
當(dāng)我輸入ls指令后輸出了一些內(nèi)容贸诚,接著輸入mkdir bioinformation指令后厕吉,顯示結(jié)果就多出了一個綠色的bioinformation头朱,這表明我成功創(chuàng)建了一個bioinformation目錄项钮。
5.3 刪除文件\目錄(rm\rm -r)
xiangwei@pc:~$ rm SRR3589958
xiangwei@pc:~$ ls
System bioinformation database mafft_7.450-1_amd64.deb miniconda3
xiangwei@pc:~$ rmdir
rmdir: missing operand
Try 'rmdir --help' for more information.
xiangwei@pc:~$ rmdir database
rmdir: failed to remove 'database': Directory not empty
xiangwei@pc:~$ rmdir bioinformation
xiangwei@pc:~$ ls
System database mafft_7.450-1_amd64.deb miniconda3
rm 文件名就是刪除文件烁巫,rmdir 空目錄就是刪除空的目錄亚隙,否則就會輸出failed to remove 'database': Directory not empty的錯誤指令,rm -r 就是刪除非空的目錄诊霹。
注意:*如果rm -rf 后面不加目錄名就會導(dǎo)致整個服務(wù)器中的東西都會被刪除渣淳,其中-r 表示遞歸入愧,rm加上此命令就可以刪除多級的目錄赛蔫,而-f 表示強(qiáng)制刪除泥张,且無提示媚创。
5.4 復(fù)制文件以及轉(zhuǎn)移文件(cp / mv)
xiangwei@pc:~/database$ cd
xiangwei@pc:~$ ls
System database mafft_7.450-1_amd64.deb miniconda3
xiangwei@pc:~$ cp System System1
xiangwei@pc:~$ ls
System System1 database mafft_7.450-1_amd64.deb miniconda3
xiangwei@pc:~$ mv System1 database
xiangwei@pc:~$ cd database
xiangwei@pc:~/database$ ls
System1
如圖,我通過 cp System System1 指令將System復(fù)制并重命名為System1彤恶,然后通過mv System1 database 指令钞钙,將System1 轉(zhuǎn)移到空目錄database中,最后通過ls指令可以看到成功復(fù)制System 并轉(zhuǎn)移到其他目錄中声离。
5.5 其它指令 可在網(wǎng)址中查詢
6. 解決問題
問題
·ls輸出的是橫向的列表芒炼,怎樣輸出長·格式列表?
·如何查看長格式列表中文件的大惺趸病本刽?
·查看Linux系統(tǒng)版本、內(nèi)存與硬盤空間赠涮?
·怎樣建立類似/tmp/tmp1/tmp1.1 這樣的層級目錄子寓?
·怎樣刪除這些層級目錄?
解決方法
xiangwei@pc:~$ ls -li
total 3560
21673573206774087 -rw-rw-rw- 1 xiangwei xiangwei 0 Nov 25 16:27 System
8162774324759008 drwxrwxrwx 1 xiangwei xiangwei 4096 Mar 3 19:31 database
844424930862977 -rw-rw-rw- 1 xiangwei xiangwei 3643904 Aug 23 2019 mafft_7.450-1_amd64.deb
5629499534358554 drwxrwxrwx 1 xiangwei xiangwei 4096 Dec 11 17:14 miniconda3
在ls命令后面加上-li就可以以長列表的格式輸出內(nèi)容,而且還顯示文件大小鲜屏。其中-l 表示以長列表輸出,-i 表示顯示文件大小虹菲。
xiangwei@pc:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic
xiangwei@pc:~$ free -m
total used free shared buff/cache available
Mem: 8101 3427 4449 17 223 4542
Swap: 9745 16 9729
xiangwei@pc:~$ df -lm
Filesystem 1M-blocks Used Available Use% Mounted on
rootfs 121403 96456 24948 80% /
none 121403 96456 24948 80% /dev
none 121403 96456 24948 80% /run
none 121403 96456 24948 80% /run/lock
none 121403 96456 24948 80% /run/shm
none 121403 96456 24948 80% /run/user
cgroup 121403 96456 24948 80% /sys/fs/cgroup
如圖分別使用lsb_release -a\free -m\df -lm 就可以查看安裝的Linux系統(tǒng)的版本霎褐、內(nèi)存和硬盤空間。
xiangwei@pc:~$ mkdir -p 1/2/3
xiangwei@pc:~$ ls
1 System database mafft_7.450-1_amd64.deb miniconda3
xiangwei@pc:~$ cd 1
xiangwei@pc:~/1$ ls
2
xiangwei@pc:~/1$ cd 2
xiangwei@pc:~/1/2$ ls
3
如圖娘纷,通過命令mkdir -p 1/2/3就建立了一個深層目錄,要點(diǎn)就是加一個 -p指令遏插。
xiangwei@pc:~$ rm -r 1
xiangwei@pc:~$ ls
System database mafft_7.450-1_amd64.deb miniconda3
刪除命令rm 加上 -r 就可以刪除掉1/2/3這個層級目錄扣草,而不需要一層一層的刪除目錄白魂,簡單省事。
今天的學(xué)習(xí)內(nèi)容差不多就這么多敬锐,期待明天的新內(nèi)容痴脾。