RPM 安裝操作 命令: rpm -i 需要安裝的包文件名 舉例如下: rpm -i example.rpm 安裝 example.rpm 包; rpm -iv example.rpm 安裝 example.rpm 包并在安裝過(guò)程中顯示正在安裝的文件信息; rpm -ivh example.rpm 安裝 example.rpm 包并在安裝過(guò)...
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比石家莊網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式石家莊網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋石家莊地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。
? ? 最近一位老友在倒騰GWAS的研究,發(fā)現(xiàn)R包TwoSampleMR用于pQTL的分析,讓我在Linux系統(tǒng)上幫忙安裝下,根據(jù)網(wǎng)頁(yè)的安裝提示進(jìn)行操作(),在操作過(guò)程中遇見(jiàn)了一些報(bào)錯(cuò)和實(shí)踐的解決方案,在此文特此記錄:
運(yùn)行后出現(xiàn)報(bào)錯(cuò)信息如下:
解決步驟1:
? ? 重新安裝gmp,最初開(kāi)始用BiocManager::install("gmp"),出現(xiàn)報(bào)錯(cuò)信息“configure: error: GNU MP not found, or not 4.1.4 or up, see ”,查閱資料過(guò)后解決方案用conda安裝gmp,操作命令如下
解決步驟2:
? 接下來(lái)重新安裝iterpc,用BiocManager::install("iterpc")成功安裝
解決步驟3:
?接下來(lái)重新安裝Cairo,用BiocManager::install("Cairo"),出現(xiàn)報(bào)錯(cuò)信息“configure: error: Cannot use cairo-ft backend, although cairo claims it is working. Please check your caito installation and/or update cairo if necessary or set CAIRO_CFLAGS/CAIRO_LIBS accordingly.”,查閱資料后改用conda安裝,操作命令如下
解決步驟4:
? 最后重新運(yùn)行install_github("MRCIEU/TwoSampleMR")安裝TwoSampleMR,成功安裝,library導(dǎo)入后,出現(xiàn)如下信息。
在linux服務(wù)器上使用R語(yǔ)言及Rstudio server
cat /etc/redhat-release: 查看服務(wù)器系統(tǒng)版本
wget
checking for rl_callback_read_char in -lreadline... no
configure: error: --with-readline=yes (default) and headers/libs are not available
configure: WARNING: you cannot build info or HTML versions of the R manuals
configure: WARNING: you cannot build PDF versions of the R manuals
configure: WARNING: you cannot build PDF versions of vignettes and help pages
6.安裝
make
make install
安裝成功!
R #在命令行直接輸入“R”即可進(jìn)入R 編輯。
q() ##退出R編輯
7.安裝R-studio-server
wget
yum install rstudio-server-rhel-1.2.1335-x86_64.rpm
8.R-studio-server的一些命令
rstudio-server start ##啟動(dòng) rstudio
rstudio-server stop ## 關(guān)閉rstudio
rstudio-server status ## 查看rstudio 運(yùn)行狀態(tài)
運(yùn)行rstudio-server status出現(xiàn) “Active: active (running) ” 表示rstudio 已啟動(dòng)
rstudio-server verify-installation ## 查看rstudio 安裝錯(cuò)誤
rstudio-server restart ##重啟
ifconfig ##查看服務(wù)器ip地址。
查看運(yùn)行中R進(jìn)程
rstudio-server active-sessions
指定PID,停止運(yùn)行中的R進(jìn)程
rstudio-server suspend-session pid
停止所有運(yùn)行中的R進(jìn)程
rstudio-server suspend-all
強(qiáng)制停止運(yùn)行中的R進(jìn)程,優(yōu)先級(jí)最高,立刻執(zhí)行
rstudio-server force-suspend-session pid
rstudio-server force-suspend-all
RStudio Server臨時(shí)下線,不允許web訪問(wèn),并給用戶友好提示
rstudio-server offline
RStudio Server臨時(shí)上線
rstudio-server online
8.rstudio-server系統(tǒng)設(shè)置
主要有兩個(gè)配置文件,默認(rèn)文件不存在(非必要,可不做修改)
/etc/rstudio/rserver.conf
/etc/rstudio/rsession.conf
vi /etc/rstudio/rserver.conf
www-port=8080#監(jiān)聽(tīng)端口,默認(rèn)是8787,可以不做修改
www-address=127.0.0.0#允許訪問(wèn)的IP地址,默認(rèn)0.0.0.0
rstudio-server restart
vi /etc/rstudio/rsession.conf
session-timeout-minutes=30#會(huì)話超時(shí)時(shí)間
r-cran-repos= #CRAN資源庫(kù)
rsession-which-r=/usr/local/bin/R ## 如果非root安裝,更改R所在目錄。
9.通過(guò)瀏覽器連接Rstudio-server
直接打開(kāi)瀏覽器,輸入;服務(wù)器ip:8787 ## 如果修改過(guò)rserver.conf文件,后面的8787端口改為相應(yīng)的端口即可。
這里需要我們輸入用戶名和密碼。關(guān)于用戶名有2點(diǎn)注意事項(xiàng):
(1).不允許使用system 用戶登陸,即用戶ids小于100的用戶。只能用普通用戶登錄
(2).用戶的認(rèn)證可以使用RSA。
如果沒(méi)有普通用戶,可以添加:
useradd newname # 添加一個(gè)名為newname的用戶
passwd newname ###給新用戶newname 設(shè)置密碼,密碼需是復(fù)雜密碼,否則可能通不過(guò)。
usermod -G happy newname ####將新用戶newname添加到happy 用戶組中,
在用useradd添加用戶之后,在默認(rèn)的情況下,該賬號(hào)是暫時(shí)被封鎖的, 也就是說(shuō),該賬號(hào)是無(wú)法登錄,須要用passwd命令來(lái)給新創(chuàng)建的用戶設(shè)置密碼之后才可以使用。
10可能存在的問(wèn)題
10.1如果你的rstudio-server沒(méi)有啟動(dòng) 很大程度是安裝有誤,這里我將我遇到的錯(cuò)誤分享出來(lái)
rstudio-server verify-installation
There is a libR.so in /usr/lib/R/lib, but (weirdly) ls -l reveals that
it dates from the my previous install of R-3.5.1 for which I did not
configure with --enable-R-shlib.
這里就提到無(wú)法找到libR.so文件,原因是配置R語(yǔ)言文件時(shí),沒(méi)有加參數(shù)--enable-R-shlib.
這就必須要重新安裝R語(yǔ)言。使用make uninstall 刪除之前的安裝,最好也刪除R-3.6.1所在的文件夾,用“rm -r -f R-3.6.1".
使用rm 命令 -r 參數(shù)表示全部刪除, -f 參數(shù)表示強(qiáng)制刪除,不會(huì)提醒。 同時(shí)使用這兩個(gè)參數(shù)要小心。
10.2 普通用戶無(wú)法啟動(dòng)rstudio-server
sudo rstudio-server start## 以管理員方式執(zhí)行命令
這時(shí)會(huì)需要輸入密碼并提示
xxx is not in the sudoers file.This incident will be reported.
如果不想出現(xiàn)上面的提示,就是給該用戶提高權(quán)限,添加用戶使用sudo的權(quán)利。
su root ###切換到root用戶,如果有root權(quán)限的話。
chmod u+w /etc/sudoers ###添加sudo文件的寫權(quán)限
vi /etc/sudoers ###編輯sudoers文件,添加權(quán)限。
找到這行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (這里的xxx是你的用戶名)
youuser ALL=(ALL) ALL
%youuser ALL=(ALL) ALL
youuser ALL=(ALL) NOPASSWD: ALL
%youuser ALL=(ALL) NOPASSWD: ALL
chmod u-w /etc/sudoers ##撤銷sudoers文件寫權(quán)限
Linux安裝基本命令大全
Linux常用命令,你還能記得多少呢?下文是我為大家準(zhǔn)備的Linux常用命令,一起來(lái)看看吧!
安裝升級(jí)
查看軟件xxx安裝內(nèi)容
dpkg -L xxx
查找軟件庫(kù)中的軟件
apt-cache search 正則表達(dá)式
或
aptitude search 軟件包
顯示系統(tǒng)安裝包的統(tǒng)計(jì)信息
apt-cache stats
顯示系統(tǒng)全部可用包的名稱
apt-cache pkgnames
顯示包的信息
apt-cache show k3b
查找文件屬于哪個(gè)包
dpkg -S filename
apt-file search filename
查看已經(jīng)安裝了哪些包
dpkg -l
也可用
dpkg -l | less
翻頁(yè)查看
查詢軟件xxx依賴哪些包
apt-cache depends xxx
查詢軟件xxx被哪些包依賴
apt-cache rdepends xxx
增加一個(gè)光盤源
sudo apt-cdrom add
系統(tǒng)更新
sudo apt-get update (這一步更新包列表)
sudo apt-get dist-upgrade (這一步安裝所有可用更新)
或者
sudo apt-get upgrade (這一步安裝應(yīng)用程序更新,不安裝新內(nèi)核等)
清除所有已刪除包的殘馀配置文件
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
如果報(bào)如下錯(cuò)誤,證明你的系統(tǒng)中沒(méi)有殘留配置文件了,無(wú)須擔(dān)心。
----------------------------------------------------------
dpkg: --purge needs at least one package name argument
Type dpkg --help for help about installing and deinstalling packages [*];
Use `dselect' or `aptitude' for user-friendly package management;
Type dpkg -Dhelp for a list of dpkg debug flag values;
Type dpkg --force-help for a list of forcing options;
Type dpkg-deb --help for help about manipulating *.deb files;
Type dpkg --license for copyright license and lack of warranty (GNU GPL) [*].
Options marked [*] produce a lot of output - pipe it through `less' or `more' !
----------------------------------------------------------
編譯時(shí)缺少h文件的自動(dòng)處理
sudo auto-apt run ./configure
查看安裝軟件時(shí)下載包的臨時(shí)存放目錄
ls /var/cache/apt/archives
備份當(dāng)前系統(tǒng)安裝的所有包的列表
dpkg --get-selections | grep -v deinstall ~/somefile
從上面?zhèn)浞莸陌惭b包的列表文件恢復(fù)所有包
dpkg --set-selections ~/somefile
sudo dselect
清理舊版本的軟件緩存
sudo apt-get autoclean
清理所有軟件緩存
sudo apt-get clean
刪除系統(tǒng)不再使用的孤立軟件
sudo apt-get autoremove
如果使用
sudo apt-get autoremove --purge
的話會(huì)把這些孤立軟件的殘留配置文件也一并移除
查看包在服務(wù)器上面的地址
apt-get -qq --print-uris download 軟件包名稱 | cut -d\' -f2
徹底刪除Gnome
sudo apt-get --purge remove liborbit2
徹底刪除KDE
sudo apt-get --purge remove libqt3-mt libqtcore4
一鍵安裝 LAMP 服務(wù)
sudo tasksel install lamp-server
刪除舊內(nèi)核
sudo aptitude purge ~ilinux-image-.*\(\!\(`uname -r`\|generic-.*\)\)
導(dǎo)入ppa源的'key值
#W: GPG簽名驗(yàn)證錯(cuò)誤: jaunty Release: 由于沒(méi)有公鑰,下列簽名無(wú)法進(jìn)行驗(yàn)證: NO_PUBKEY 5126890CDCC7AFE0
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 5126890CDCC7AFE0 #5126890CDCC7AFE0替換為你需要導(dǎo)入的Key值
增加 add-apt-repository 命令
sudo apt-get install software-properties-common
增加一個(gè)ppa源
sudo add-apt-repository ppa:user/ppa-name
#使用 ppa 的地址替換 ppa:user/ppa-name
添加163鏡像源
sudo add-apt-repository "deb `lsb_release -cs` main restricted universe multiverse"
sudo add-apt-repository "deb `lsb_release -cs`-updates main restricted universe multiverse"
sudo add-apt-repository "deb `lsb_release -cs`-security main restricted universe multiverse"
系統(tǒng)升級(jí)
1 這里指的是版本間的升級(jí),例如 9.04=10.04。
2 使用該升級(jí)方式通常需要使用 backports 源。
sudo apt-get update
sudo apt-get install update-manager-core
sudo do-release-upgrade
系統(tǒng)
查看內(nèi)核
uname -a
查看系統(tǒng)是32位還是64位
#查看long的位數(shù),返回32或64
getconf LONG_BIT
#查看文件信息,包含32-bit就是32位,包含64-bit就是64位
file /sbin/init
或者使用
uname -m
查看Ubuntu版本
lsb_release -a
或 cat /etc/lsb-release
查看內(nèi)核加載的模塊
lsmod
查看PCI設(shè)備
lspci
查看USB設(shè)備
lsusb
#加參數(shù) -v 可以顯示USB設(shè)備的描述表(descriptors)
lsusb -v
查看網(wǎng)卡狀態(tài)
sudo apt-get install ethtool
sudo ethtool eth0
激活網(wǎng)卡的 Wake-on-LAN
sudo apt-get install wakeonlan
或 sudo ethtool -s eth0 wol g
查看CPU信息
cat /proc/cpuinfo
顯示當(dāng)前硬件信息
sudo lshw
查看內(nèi)存型號(hào)
sudo dmidecode -t memory
獲取CPU序列號(hào)或者主板序列號(hào)
#CPU ID
sudo dmidecode -t 4 | grep ID
#Serial Number
sudo dmidecode | grep Serial
#CPU
sudo dmidecode -t 4
#BIOS
sudo dmidecode -t 0
#主板:
sudo dmidecode -t 2
#OEM:
sudo dmidecode -t 11
顯示當(dāng)前內(nèi)存大小
free -m |grep "Mem" | awk '{print $2}'
查看硬盤溫度
sudo apt-get install hddtemp
sudo hddtemp /dev/sda
顯示系統(tǒng)運(yùn)行時(shí)間
uptime
查看系統(tǒng)限制
ulimit -a
查看內(nèi)核限制
ipcs -l
查看當(dāng)前屏幕分辨率
xrandr
硬盤
查看塊設(shè)備
lsblk
查看硬盤的分區(qū)
sudo fdisk -l
硬盤分區(qū)
#危險(xiǎn)!小心操作。
sudo fdisk /dev/sda
硬盤格式化
#危險(xiǎn)!將第一個(gè)分區(qū)格式化為 ext3 分區(qū), mkfs.reiserfs mkfs.xfs mkfs.vfat
sudo mkfs.ext3 /dev/sda1
硬盤檢查
#危險(xiǎn)!檢查第一個(gè)分區(qū),請(qǐng)不要檢查已經(jīng)掛載的分區(qū),否則容易丟失和損壞數(shù)據(jù)
sudo fsck /dev/sda1
硬盤壞道檢測(cè)
sudo badblocks -s -v -c 32 /dev/sdb
#得到壞的塊后,使用分區(qū)工具隔離壞道。
分區(qū)掛載
sudo mount -t 文件系統(tǒng)類型 設(shè)備路經(jīng) 訪問(wèn)路經(jīng)
#常用文件類型如下: iso9660 光驅(qū)文件系統(tǒng), vfat fat/fat32分區(qū), ntfs ntfs分區(qū), smbfs windows網(wǎng)絡(luò)共享目錄, reiserfs、ext3、xfs Linux分區(qū)
#如果中文名無(wú)法顯示嘗試在最後增加 -o nls=utf8 或 -o iocharset=utf8
#如果需要掛載後,普通用戶也可以使用,在 -o 的參數(shù)後面增加 ,umask=022 如:-o nls=utf8,umask=022
分區(qū)卸載
sudo umount 目錄名或設(shè)備名
只讀掛載ntfs分區(qū)
sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c
可寫掛載ntfs分區(qū)
sudo mount -t ntfs-3g -o locale=zh_CN.utf8,umask=0 /dev/sdb1 /mnt/c
掛載fat32分區(qū)
sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c
掛載共享文件
sudo mount -t smbfs -o username=xxx,password=xxx,iocharset=utf8 //192.168.1.1/share /mnt/share
掛載ISO文件
sudo mount -t iso9660 -o loop,utf8 xxx.iso /mnt/iso
查看IDE硬盤信息
sudo hdparm -i /dev/sda
查看軟raid陣列信息
cat /proc/mdstat
參看硬raid陣列信息
dmesg |grep -i raid
cat /proc/scsi/scsi
查看SATA硬盤信息
sudo hdparm -I /dev/sda
或
sudo apt-get install blktool
sudo blktool /dev/sda id
查看硬盤剩余空間
df
df --help 顯示幫助
查看目錄占用空間
du -hs 目錄名
閃盤沒(méi)法卸載
sync
fuser -km /media/閃盤卷標(biāo)
使用文件來(lái)增加交換空間
#創(chuàng)建一個(gè)512M的交換文件 /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1M count=512
sudo mkswap /swapfile
sudo swapon /swapfile
#sudo vim /etc/fstab #加到fstab文件中讓系統(tǒng)引導(dǎo)時(shí)自動(dòng)啟動(dòng)
/swapfile swap swap defaults 0 0
查看硬盤當(dāng)前讀寫情況
# 首先安裝 sysstat 包
sudo apt-get install sysstat
#每2秒刷新一次
sudo iostat -x 2
測(cè)試硬盤的實(shí)際寫入速度
dd if=/dev/zero of=test bs=64k count=512 oflag=dsync
進(jìn)程
查看當(dāng)前的內(nèi)存使用情況
free
連續(xù)監(jiān)視內(nèi)存使用情況
watch -d free
# 使用 Ctrl + c 退出
動(dòng)態(tài)顯示進(jìn)程執(zhí)行情況
top
top指令運(yùn)行時(shí)輸入H或?打開(kāi)幫助窗口,輸入Q退出指令。
查看當(dāng)前有哪些進(jìn)程
ps -AFL
查看進(jìn)程的啟動(dòng)時(shí)間
ps -A -opid,stime,etime,args
查看目前登入用戶運(yùn)行的程序
w
查看當(dāng)前用戶程序?qū)嶋H內(nèi)存占用,并排序
ps -u $USER -o pid,rss,cmd --sort -rss
統(tǒng)計(jì)程序的內(nèi)存耗用
ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort -k2 -nr
按內(nèi)存從大到小排列進(jìn)程
ps -eo "%C : %p : %z : %a"|sort -k5 -nr
列出前十個(gè)最耗內(nèi)存的進(jìn)程
ps aux | sort -nk +4 | tail
按cpu利用率從大到小排列進(jìn)程
ps -eo "%C : %p : %z : %a"|sort -nr
ps aux --sort -pcpu |head -n 20
查看當(dāng)前進(jìn)程樹(shù)
pstree
中止一個(gè)進(jìn)程
kill 進(jìn)程號(hào)(就是ps -A中的第一列的數(shù)字)
或者 killall 進(jìn)程名
強(qiáng)制中止一個(gè)進(jìn)程(在上面進(jìn)程中止不成功的時(shí)候使用)
kill -9 進(jìn)程號(hào)
或者 killall -9 進(jìn)程名
圖形方式中止一個(gè)程序
xkill 出現(xiàn)骷髏標(biāo)志的鼠標(biāo),點(diǎn)擊需要中止的程序即可
查看進(jìn)程打開(kāi)的文件
lsof -p 進(jìn)程的pid
顯示開(kāi)啟文件abc.txt的進(jìn)程
lsof abc.txt
顯示22端口現(xiàn)在運(yùn)行什么程序
lsof -i :22
顯示nsd進(jìn)程現(xiàn)在打開(kāi)的文件
lsof -c nsd
在後臺(tái)運(yùn)行程序,退出登錄後,并不結(jié)束程序
nohup 程序
#查看中間運(yùn)行情況 tail nohup
在后臺(tái)運(yùn)行交互式程序,退出登錄后,并不結(jié)束程序
sudo apt-get install screen
screen vim a.txt
#直接退出后使用
screen -ls # 2208pxs-0.ubuntu (Detached)
screen -r 1656 #恢復(fù)
#熱鍵,同時(shí)按下Ctrl和a鍵結(jié)束后,再按下功能鍵
C-a ? #顯示所有鍵綁定信息
C-a w #顯示所有窗口列表
C-a C-a #切換到之前顯示的窗口
C-a c #創(chuàng)建一個(gè)新的運(yùn)行shell的窗口并切換到該窗口
C-a n #切換到下一個(gè)窗口
C-a p #切換到前一個(gè)窗口(與C-a n相對(duì))
C-a 0..9 #切換到窗口0..9
C-a a #發(fā)送 C-a到當(dāng)前窗口
C-a d #暫時(shí)斷開(kāi)screen會(huì)話
C-a k #殺掉當(dāng)前窗口
在后臺(tái)運(yùn)行交互式程序,退出登錄后,并不結(jié)束程序
tmux 進(jìn)入后再運(yùn)行其它命令
tmux attach #恢復(fù)
#熱鍵,同時(shí)按下Ctrl和b鍵結(jié)束后,再按下功能鍵
C-b c #創(chuàng)建一個(gè)新的運(yùn)行shell的窗口并切換到該窗口
C-b n #切換到下一個(gè)窗口
C-b p #切換到前一個(gè)窗口(與C-a n相對(duì))
C-b 0..9 #切換到窗口0..9
C-b d #暫時(shí)斷開(kāi)會(huì)話
C-b #殺掉當(dāng)前窗口
詳細(xì)顯示程序的運(yùn)行信息
strace -f -F -o outfile
增加系統(tǒng)最大打開(kāi)文件個(gè)數(shù)
#ulimit -SHn
sudo vim /etc/security/limits.conf
文件尾追加
* hard nofile 4096
* soft nofile 4096
sudo vim /etc/pam.d/su
將 pam_limits.so 這一行注釋去掉
重起系統(tǒng)
清除僵尸進(jìn)程
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | xargs sudo kill -9
將大于120M內(nèi)存的php-cgi都?xì)⒌?/p>
ps -eo pid,fname,rss|grep php-cgi|grep -v grep|awk '{if($3=120000) print $1}' | xargs sudo kill -9
Linux系統(tǒng)中如何限制用戶進(jìn)程CPU占用率
renice +10 `ps aux | awk '{ if ($3 0.8 id -u $1 500) print $2}'`
#或直接編輯/etc/security/limits.conf文件。 ;
首先創(chuàng)建CPAN的環(huán)境
然后進(jìn)行R語(yǔ)言主程序的安裝:
將CRAN上R包的index讀取到本地:
R包安裝(示例):
以上
conda 安裝R環(huán)境,主要命令如下:
2.激活創(chuàng)建的環(huán)境,后面安裝的包和軟件都會(huì)在此環(huán)境中進(jìn)行
3.安裝所需要的包
4.關(guān)閉此環(huán)境
安裝完R環(huán)境后,export 相應(yīng)的path,如下
安裝相關(guān)的包,例如ballgown:
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("ballgown")
注意,如果不export 相應(yīng)的path,R安裝包時(shí)很容易找不到相應(yīng)的程序,如:
/bin/sh: x86_64-conda_cos6-linux-gnu-c++: command not found