Deepin操作系統(tǒng)丨一臺10年前的家用聯(lián)想臺式機重裝國產(chǎn)Linux系統(tǒng),制作成生信服務(wù)器

本篇筆記是利用個人電腦搭建Linux系統(tǒng)(deepin 20.8)的教程,包括系統(tǒng)下載、映像刻錄、啟動盤制作、電腦BIOS設(shè)置、安裝系統(tǒng)、故障解決、驅(qū)動更新、軟件下載、conda配置、R語言和Rstudio-server配置、遠程SSH配置、生信分析環(huán)境搭建等步驟,教你如何自己制作一個實用的linux服務(wù)器

背景介紹

有一臺10年前的家用臺式電腦(古董級2核CPU、4G
內(nèi)存、500G硬盤),最開始裝的win XP,后來換成了win 7,最近打開使用發(fā)現(xiàn)非??ㄢg,而且垃圾流氓軟件居多,基本沒法用了。

于是想折騰折騰,發(fā)揮一下它的價值,由windows系統(tǒng)轉(zhuǎn)向linux系統(tǒng),把它變成一臺家用服務(wù)器,安裝R語言和Rstudio-server,作為生信分析測試環(huán)境。同時還要保證該電腦正常使用,快過年了,親戚孩子來了后能用這個電腦聽歌、看電影、聊微信、刷B站。


上圖是安裝了Linux系統(tǒng)的電腦資源占用,發(fā)現(xiàn)CPU占用率不到1%,內(nèi)存只占用了不到300MB,啟用超級終端模式之后,電腦系統(tǒng)自身占用資源極低。如果是普通的windows系統(tǒng),開機后系統(tǒng)占用量比這高十幾倍。

重裝linux系統(tǒng)


目前,比較受歡迎的linux系統(tǒng)有centos、ubuntu、deepin等,其中deepin系統(tǒng)是國產(chǎn)的桌面版系統(tǒng),里面基本的功能都有,能夠滿足日常使用。最近已經(jīng)出了23版本,筆者下載了,安裝過程中報錯,可能是硬件拉胯,所以在此選擇deepin 20.8系統(tǒng)。

鏡像下載:
https://cdimage.deepin.com/releases/20.8/deepin-desktop-community-20.8-amd64.iso
蘭州大學(xué)的鏡像站,親測速度更快:
https://mirror.lzu.edu.cn/deepin-releases/
刻錄工具下載:
https://cdimage.deepin.com/applications/deepin-boot-maker/windows/deepin-boot-maker.exe
在windows電腦上下載以上文件,然后準備一個16GB以上U盤,通過刻錄工具將鏡像燒錄到u盤(之后如果需要恢復(fù)正常使用,只需要格式化u盤即可),此時已經(jīng)制作好啟動盤。

BIOS設(shè)置

關(guān)閉secure boot,不同機器進入BIOS的方法不一樣,我這個是開機按F2,具體方法自行百度。

安裝系統(tǒng)

插入之前制作好的u盤作為啟動盤,然后再電腦開機的時候快速猛按F12(不同電腦進入啟動項的方法不同)


然后通過上下箭頭選擇你的U盤,回車后等待一會兒,出現(xiàn)安裝界面,選擇第一項。

硬盤分區(qū)這里如果是全盤安裝,將會清空所有內(nèi)容,然后安裝deepin系統(tǒng),如果需要安裝雙系統(tǒng),則根據(jù)需要修改掛載位置。

調(diào)整根分區(qū)大小,這里設(shè)置的空間大小相當于windos下的c盤(系統(tǒng)盤)內(nèi)存空間,可以根據(jù)需要修改。


勾選右下角使用集成閉源驅(qū)動



等待安裝完成,大約耗時幾分鐘左右



重啟后拔掉U盤,然后進入系統(tǒng),此時已經(jīng)安裝完畢

故障解決

安裝好后重啟進入桌面,發(fā)現(xiàn)屏幕分辨率不正常,而且無法調(diào)整,檢查發(fā)現(xiàn)顯卡驅(qū)動存在問題(這是由于nvidia顯卡的官方驅(qū)動不開源,所以deepin自己做了個冒牌驅(qū)動,導(dǎo)致顯卡無法正常工作,如果是集成顯卡則沒有該問題),因此首先嘗試重裝顯卡驅(qū)動程序。


  • 下載顯卡驅(qū)動

進入NVIDIA官網(wǎng),找到驅(qū)動下載頁面,根據(jù)自己的顯卡型號下載穩(wěn)定生產(chǎn)版Linux驅(qū)動,下載后是一個run格式的文件。

https://www.nvidia.cn/Download/index.aspx
  • 停用自帶驅(qū)動程序

由于系統(tǒng)自帶nouveau驅(qū)動程序,因此需要先將其禁用,然后加入黑名單。

sudo dedit /etc/modprobe.d/blacklist.conf

進入編輯器后將以下內(nèi)存輸入并保存

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

然后使用以下命令更新linux內(nèi)核(驅(qū)動程序在內(nèi)核中重建)

sudo update-initramfs -u

卸載原來的NVIDIA驅(qū)動程序

sudo apt-get remove --purge nvidia*
  • 關(guān)閉圖形界面服務(wù)

暫時關(guān)閉X服務(wù)(GUI圖形界面),這一步會黑屏請看完再操作。
首先按住鍵盤上的CTRL+ALT+F2,進入超級終端模式,需要輸入賬戶和密碼進入命令行界面。


使用下面的命令關(guān)閉圖形界面(因為顯卡驅(qū)動必須在關(guān)閉顯示界面的條件下安裝)

sudo service lightdm stop
  • 重裝顯卡驅(qū)動

首先,對下載的顯卡驅(qū)動更改權(quán)限,賦予可執(zhí)行功能。

sudo chmod +x ./*.run

然后,運行該驅(qū)動程序

sudo sh ./*.run

稍等一會兒后出現(xiàn)安裝界面,選擇Accept


下面這個步驟的意思是將驅(qū)動程序以模塊形式安裝進DKMS,選擇NO



出現(xiàn)這個界面表示正在安裝,等待幾分鐘



安裝到最后出現(xiàn)報錯,無法安裝成功,我重新試過三四次,不管怎么樣都有報錯,可能是這個顯卡本身太老了(GTX240,14年前的古董)

使用reboot命令重啟電腦,然后發(fā)現(xiàn)NVIDIA的驅(qū)動程序打開出現(xiàn)錯誤,屏幕分辨率仍然有問題,顯卡驅(qū)動不正常。

  • 殺手锏

經(jīng)過好幾次的嘗試,都沒辦法正常安裝顯卡驅(qū)動,迫不得已之下,打開主機箱物理卸載顯卡,拔掉顯卡后將顯示排線連接到主機后面的核顯輸出端口 。

重啟后問題解決,界面恢復(fù)正常,因為核顯無需額外的驅(qū)動程序,所以分辨率、畫面亮度等功能也能進行更改,使用起來已經(jīng)沒有太大問題了。


到此,系統(tǒng)安裝完成!電腦可以像普通電腦一樣下載軟件、瀏覽網(wǎng)頁、看電視、聽音樂,常用的軟件比如微信、QQ、愛奇藝、網(wǎng)易云、WPS、騰訊會議等都有Linux版本,使用起來和普通家用windows電腦沒什么大差別,而且垃圾軟件個廣告更少。


基本環(huán)境配置

權(quán)限管理

剛開始安裝系統(tǒng)時輸入的賬戶為管理員權(quán)限,使用該管理員帳號登錄,然后進入賬戶,設(shè)置root密碼,因為deepin系統(tǒng)初始沒有提供root賬戶,所以需要設(shè)置激活后使用。

sudo passwd root

輸入上述代碼后先輸入當前管理員的密碼,然后設(shè)置root密碼并重復(fù)一次,即可完成。

su root

輸入上述代碼并根據(jù)提示輸入密碼,即可進入root賬戶,此時命令行提示符號為“#”

如果想增加賬號,先使用useradd添加,然后使用passwd設(shè)置該賬戶的密碼即可。

軟件安裝

  • 桌面軟件商店

可以使用系統(tǒng)自帶的軟件商店安裝,這個方法最簡單快捷,同時兼容性最好,官方推薦普通用戶使用該方法安裝軟件。

  • apt軟件包倉庫
sudo apt install xxx
  • conda倉庫
conda search python #搜索
conda install xxx #安裝

啟動SSH服務(wù)

由于deepin系統(tǒng)初始狀態(tài)下,SSH服務(wù)是關(guān)閉狀態(tài),因此無法直接使用SSH遠程連接。

  • Linux服務(wù)器端
sudo apt-get update #更新
sudo apt-get install openssh-server #安裝ssh服務(wù)
sudo ps -e |grep ssh #查看是否存在ssh進程
netstat -an|head -5 #查看端口信息
sudo /etc/init.d/ssh start #啟動ssh服務(wù)
sudo systemctl enable ssh #設(shè)置開機自動啟動ssh服務(wù)

使用sudo /etc/init.d/ssh status命令可以查看當前SSH服務(wù)的開啟狀態(tài),顯示如下為正常情況。

  • 個人PC電腦端

按照ssh登錄軟件,常見的putty、finalshell、xshell都可以,這里推薦兩款,一個是mobaxterm,界面相對豐富,功能也不錯【點擊這里即可下載使用】另一個是termius,支持多設(shè)備、文件管理和代碼自動補齊功能,筆者覺得這兩款都比較好用。


進入軟件后輸入主機IP、用戶名、密碼,即可遠程登錄上服務(wù)器,也可以直接用電腦的power shell輸入以下命令登錄。

ssh user@192.168.1.1 -p 22

搭建生信分析環(huán)境

miniconda

Miniconda是conda的精簡版安裝程序。 它是Anaconda的小型引導(dǎo)程序版本,僅包含conda,python,它們依賴的軟件包以及少量其他有用的軟件包。通俗來說就是一個軟件的大倉庫,里面有各種軟件。

https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/

進入上方網(wǎng)址,下載Linux版的安裝包


按照如下步驟進行安裝

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py38_4.8.3-Linux-x86_64.sh --no-check-certificate
#下載
bash Miniconda3-py38_4.8.3-Linux-x86_64.sh
#安裝
conda -V
#重啟后驗證是否安裝成功
(base) user@PC:~$ conda -V
conda 22.11.1

R語言

方法一:采用默認的包管理器安裝,此安裝版本默認為3.6,操作簡單,如需最新版本無法通過該方式安裝。

sudo apt-get install r-base

方法二:采用conda安裝,之前已經(jīng)配置好conda,如果沒有安裝需要先裝conda,再裝R,這個方法能夠按照最新版4.2.0版本。

conda install r-base -y

安裝后輸入一個R,檢查是否安裝成功,如果成功后輸入which R查看軟件路徑,這個路徑復(fù)制保存,之后有用。

(base) user@PC:~$ R

R version 3.6.1 (2019-07-05) -- "Action of the Toes"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-conda_cos6-linux-gnu (64-bit)

R是自由軟件,不帶任何擔保。
在某些條件下你可以將其自由散布。
用'license()'或'licence()'來看散布的詳細條件。

R是個合作計劃,有許多人為之做出了貢獻.
用'contributors()'來看合作者的詳細情況
用'citation()'會告訴你如何在出版物中正確地引用R或R程序包。

用'demo()'來看一些示范程序,用'help()'來閱讀在線幫助文件,或
用'help.start()'通過HTML瀏覽器來看幫助文件。
用'q()'退出R.

> q()
Save workspace image? [y/n/c]: n
(base) user@PC:~$ which R
/home/user/miniconda3/bin/R

Rstudio-server

需要系統(tǒng)管理員帳號密碼和root賬戶密碼,用于安裝Rstudio-server,必須以root賬戶安裝,以下操作均在管理員狀態(tài)下進行。


下載官網(wǎng):https://posit.co/download

  • 1.下載軟件
sudo apt-get install gdebi-core
wget https://download2.rstudio.org/server/bionic/amd64/rstudio-server-2022.12.0-353-amd64.deb
    1. 安裝軟件
sudo gdebi rstudio-server-2022.12.0-353-amd64.deb
    1. 設(shè)置參數(shù)

初次啟動Rstudio時提示連接錯誤,原因是沒有指定R的軟件路徑,之前用which R命令得到的目錄保存到Rstudio的配置文件中,重啟即可解決。

以下兩個文件是Rstudio的配置文件:
/etc/rstudio/rserver.conf
/etc/rstudio/rsession.conf

touch /etc/rstudio/rserver.conf
touch /etc/rstudio/rsession.conf

修改端口

默認的端口是8787,如果我們想改成其他端口,可以在/etc/rstudio/rserver.conf 文件中添加并修改參數(shù):

vim /etc/rstudio/rserver.conf 
www-port=80
#這里我們是將端口改成80

修改完畢之后要驗證參數(shù)有效性,并重啟rstudio-server

rstudio-server test-config
rstudio-server restart

設(shè)置R版本

默認情況下,RStudio server 運行時使用的R是系統(tǒng)PATH中指定的R,這個位置可以使用which R確定,如果我們的系統(tǒng)上有多個版本的R,那么可以使用rsession-which-r參數(shù)指定RStudio 使用哪個版本的R。

rsession-which-r=/usr/local/bin/R

設(shè)置用戶限制

/etc/rstudio/rserver.conf文件中添加auth-required-user-group參數(shù),可以指定訪問rstudio 的用戶:

auth-required-user-group=rstudio_users

創(chuàng)建組,將dave 用戶添加到該組:

groupadd rstudio_users
usermod -g rstudio_users -G rstudio_users dave

/etc/rstudio/rserver.conf 文件中指定用戶組,只有屬于改組的用戶才可以使用rstudio。

auth-required-user-group=rstudio_users

當然也可以添加一些其他的資源限制,比如總內(nèi)存,stack size 和進程數(shù)等:

rsession-memory-limit-mb=4000
rsession-stack-limit-mb=10
rsession-process-limit=100
  • rsession.conf配置

默認情況下,當用戶2個小時沒有執(zhí)行命令,RStudio 會終止用戶的R session,并將這些信息寫入磁盤,從而減少資源的消耗,當用戶下次使用時,session被還原。

可以通過session-timeout-minutes 參數(shù)指定session 過期的時間

session-timeout-minutes=30#會話超時時間

limit-file-upload-size-mb 參數(shù),其可以限制最大的上傳大小

limit-file-upload-size-mb=100

指定默認的CRAN repository 服務(wù)地址

r-cran-repos=https://mirrors.nwafu.edu.cn/cran/

以上修改都需要重啟服務(wù)才能生效

用任意設(shè)備瀏覽器訪問主機本地IP的8787端口即可,網(wǎng)頁版的Rstudio自帶保存功能,并且支持多用戶登錄同時使用。

使用的時候,只需要在同一局域網(wǎng)下!

  • Rstudio運行狀態(tài)查看
rstudio-server status
  • Rstudio服務(wù)開啟、停止、重啟
rstudio-server start
(base) user@PC:~$ rstudio-server status
● rstudio-server.service - RStudio Server
     Loaded: loaded (/lib/systemd/system/rstudio-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-01-04 16:18:56 CST; 35s ago
    Process: 16882 ExecStart=/usr/lib/rstudio-server/bin/rserver (code=exited, status=0/SUCCESS)
   Main PID: 16883 (rserver)
      Tasks: 4 (limit: 4447)
     Memory: 1.8M
     CGroup: /system.slice/rstudio-server.service
             └─16883 /usr/lib/rstudio-server/bin/rserver

使用體驗

這個系統(tǒng)實際用起來還是很方便的,普通用戶也能很快上手,個人感覺操作界面有點像windows和Macos的結(jié)合版。


在設(shè)置中能夠看到系統(tǒng)的介紹信息,菜單的邏輯關(guān)系比較強,操作起來和手機菜單差不多。



自帶的終端很好用,響應(yīng)速度也比較快,能夠滿足大部分應(yīng)用。



如果開啟圖形化窗口界面,普通情況下占用大概2GB內(nèi)存,通過系統(tǒng)管理器可以看出大部分應(yīng)用進程占用資源較多。

綜上所述,deepin操作系統(tǒng)作為國產(chǎn)之光,用起來還是很棒的!deepin和Linux的關(guān)系有點像最近幾年鴻蒙和安卓的關(guān)系,外界對此還是存在各種觀點,筆者認為只要好用、穩(wěn)定就夠了,不用在意具體如何實現(xiàn)。

未來有一天,假如受到國外制裁,所有的windows系統(tǒng)都封禁了,我們還能使用deepin這樣的系統(tǒng)做備用替代,那么今日的筆記可能對你有所幫助,多學(xué)一點,有益無害。

本文由mdnice多平臺發(fā)布

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 今天就結(jié)合深度桌面操作系統(tǒng)給大家講講桌面操作系統(tǒng)的架構(gòu)設(shè)計和原理細節(jié),一來向外界講講深度這么多年都做了哪些工作,二...
    ManateeLazyCat閱讀 72,106評論 208 615
  • 首先說明一下:本文內(nèi)容主要是我的個人學(xué)習(xí)筆記,大多內(nèi)容均來自互聯(lián)網(wǎng),以下解決方案已經(jīng)本人實際操作可行的,至于大家如...
    人艱不扌斥閱讀 3,552評論 0 2
  • 本來打算寫一個archlinux的安裝記錄,先前在Virtualbox上測試了好長時間,真機安裝的時候卻發(fā)現(xiàn)完全不...
    mst7閱讀 7,369評論 1 15
  • 本人機器是聯(lián)想G470,屬于2011年的老機器。 1.系統(tǒng)安裝 準備兩個u盤,1個刻錄U深度裝機版,用于重新將固態(tài)...
    xkang閱讀 695評論 0 0
  • 1.概念: 操作系統(tǒng)(Operating System,簡稱OS)是管理和控制計算機硬件與軟件資源的計算機程序,是...
    濃睡不消殘醉閱讀 1,325評論 0 5

友情鏈接更多精彩內(nèi)容