Linux deploy 超詳細(xì)入門教程

在接觸一個(gè)新的事物時(shí)踱承,我首先會探究它能解決什么問題缎罢,再考慮它是否有研究的價(jià)值帘腹。

作為一名程序員额各,不管是前端還是后端,自然是離不開和服務(wù)器打交道的卿闹。比如我就一直想有一臺自己的linux服務(wù)器阱高。無奈各種XX云的云服務(wù)器漫天要價(jià)鹦付,樹莓派4代400+的價(jià)格對于我這種不研究外設(shè)的性價(jià)比又不高昆禽,那還沒有別的選擇呢蝗蛙?當(dāng)然有,只要一臺舊安卓手機(jī)即可醉鳖。廢話不說直接開始流程:

1. 當(dāng)然是準(zhǔn)備手機(jī)以及SD卡

首先運(yùn)行Linux deploy是需要root權(quán)限的捡硅,目前自用的OPPO R15舍不得用來折騰,更別說它還不支持root盗棵。所以只能去萬能的咸魚挑一個(gè)壮韭,這里我選的是幾年前發(fā)售的TCL_M2M,MTK6752纹因,2+16的配置泰涂。雖然配置辣雞,打個(gè)王者最低特效都只有30幀辐怕,不過50包郵還要什么自行車呢。如果你手頭更充裕的話从绘,建議你入手小米4寄疏,2+16應(yīng)該130左右,刷機(jī)還能體驗(yàn)各種第三方OS僵井。
入手之后刷機(jī)直接升級到安卓5.1陕截,然后就是root后卸載無用的系統(tǒng)應(yīng)用批什,禁止后臺自啟等等。SD卡的話不要買太大驻债,手機(jī)可能會識別不出來。

2. 配置Linux deploy

安裝Linux deploy之前得首先安裝Busybox合呐,它集成了Linux的很多命令。
安裝完Linux deploy之后:
首先點(diǎn)開左側(cè)菜單淌实,點(diǎn)擊“配置文件”冻辩,點(diǎn)擊編輯改個(gè)你喜歡的名字。
然后點(diǎn)擊“設(shè)置”恨闪,【鎖定wifi】,【CPU喚醒】咙咽,【聯(lián)網(wǎng)更新】勾上,【PATH變量】最重要犁珠,點(diǎn)擊并填上/system/xbin,這樣才能關(guān)聯(lián)Busybox犁享。然后點(diǎn)擊下面的【更新環(huán)境】余素。
然后點(diǎn)擊右下角的設(shè)置圖標(biāo)開始進(jìn)行配置炊昆,這里我以Centos為例:
發(fā)行版:【CentOS】
架構(gòu):【aarch64】
版本:【7】
源地址:http://mirrors.aliyun.com/centos-altarch/

源地址記得換成國內(nèi)源桨吊,我的是阿里源,清華源體感不是很穩(wěn)定凤巨,時(shí)好時(shí)壞视乐。

安裝類型:【分區(qū)】

如果你不了解安裝類型有什么區(qū)別,請看這篇文章:LinuxDeploy 詳解
眾所周知敢茁,手機(jī)內(nèi)置存儲/SD卡都是fat32格式佑淀,不能儲存超過4GB的文件。所以不能選擇【鏡像文件】形式彰檬,鏡像文件無法超過4GB也就意味著你的Centos系統(tǒng)空間最多只有4GB伸刃,隨便安幾個(gè)包就滿了。不過真的沒辦法了嗎逢倍?當(dāng)然有捧颅,以我的32GB SD卡為例,將SD卡進(jìn)行分區(qū)较雕,2GB fat32格式碉哑,25GB ext4格式,2GB緩存即可亮蒋。具體操作步驟請看這篇文章:使用MiniTool Partition Wizard對SD卡進(jìn)行EXT4格式分區(qū)
雖然現(xiàn)在軟件版本已經(jīng)更新很多代了扣典,但是操作步驟沒變。放心大膽的跟著做就行了宛蚓。

安裝路徑: /dev/block/mmcblk1p2

其中mmcblk1相當(dāng)于sdcard1也就是SD卡激捏,如果你想安裝內(nèi)置存儲,就是mmcblk0凄吏,相當(dāng)于sdcard0远舅。
p2就是mmcblk的第2個(gè)分區(qū)闰蛔,p1就是第一個(gè)分區(qū)。前面我分區(qū)的時(shí)候?qū)tx4分在了第2個(gè)區(qū)图柏,所以選p2序六。

文件系統(tǒng):【etx4】
用戶名/密碼:自選
特權(quán)用戶:root
本地化:【zh_CN.UTF8】
初始化:可選可不選

勾選后linux deploy將在啟動(dòng)后在指定路徑運(yùn)行腳本,默認(rèn)為/etc/rc.local蚤吹,不過它是/etc/rc.d/rc.local的軟連接例诀,所以就是開機(jī)自動(dòng)運(yùn)行/etc/rc.d/rc.local的腳本

掛載:不選

由于已經(jīng)安裝在SD卡了,所以SD并沒有其他有價(jià)值的東西可供探索了裁着。繁涂。。

SSH:必選
剩下的看自己需求

3.SSH連接&&關(guān)閉喚醒鎖

安裝系統(tǒng)是一件很漫長的事二驰。扔罪。。所以桶雀。矿酵。。be patient
安裝完畢之后矗积,第一件事就是用SSH連接了全肮。正上方局中的標(biāo)題就包含了你當(dāng)前的局域網(wǎng)ip棘捣。用你剛才配置的用戶名和密碼登錄即可。安卓端可以用ConnectBot哪自,PC端推薦自帶的openssh,或者功能更全面的Xshell邑彪。如果你想開啟SSH免密登錄的話,可以看這篇文章:三步實(shí)現(xiàn)SSH無密碼登錄

第二件事就是查看我們的分區(qū)是否成功宙彪。

[root@localhost ll]# df -h
文件系統(tǒng)              容量  已用  可用 已用% 掛載點(diǎn)
/dev/block/mmcblk1p2   25G  3.5G   20G   15% /
tmpfs                 944M   84K  943M    1% /dev
tmpfs                 944M     0  944M    0% /dev/shm

可以看到已經(jīng)成功了有巧。

第三件事是關(guān)閉喚醒鎖篮迎。這個(gè)很重要示姿。假如不關(guān)的話鎖屏一段時(shí)間后安卓系統(tǒng)會自動(dòng)限制后臺運(yùn)行栈戳,來達(dá)到省電的作用难裆。怎么關(guān)呢?把系統(tǒng)的省電方案更改為均衡褂痰,并且關(guān)閉諸如休眠省電之類的選項(xiàng)症虑。然后把Linux deploy在設(shè)置里讓其保持后臺運(yùn)行。然后下載MT管理器驶冒,打開左側(cè)菜單點(diǎn)擊【終端模擬器】韵卤,然后下滑任務(wù)欄里開啟喚醒鎖即可。其實(shí)任何終端應(yīng)該都有喚醒鎖功能需忿,開啟就行啦

4.進(jìn)行一些必要的工作

  1. 禁用yum插件
    由于yum插件每次會加載而且鏡像效果還不好屋厘,通常下載到最后一個(gè)包的時(shí)候就限速月而,只有幾k/s,實(shí)在慢的令人無法忍受溢谤。所以我們必須第一件事就得禁用它并換上新的鏡像源憨攒。這里我用的是阿里云的鏡像,注意瞻坝,網(wǎng)上的方法并不能行得通杏瞻,必須你手動(dòng)改衙荐,因?yàn)閘inux deploy大部分是aarch64構(gòu)架赫模。
# 禁用Yum插件
vim /etc/yum.conf
找到plugins這一行改為0即可
#先執(zhí)行備份蒸矛,然后將下面的配置文件替換之即可
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

#適用于aarch64構(gòu)架的阿里云鏡像源配置文件
#其實(shí)無非就是批量替換版本以及構(gòu)架而已
# CentOS-Base.repo

[base]
name=CentOS-7.7.1908 - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-altarch/7.7.1908/os/aarch64/
        http://mirrors.aliyuncs.com/centos-altarch/7.7.1908/os/aarch64/
        http://mirrors.cloud.aliyuncs.com/centos-altarch/7.7.1908/os/aarch64/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-altarch/RPM-GPG-KEY-CentOS-7
 
#released updates 
[updates]
name=CentOS-7.7.1908 - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-altarch/7.7.1908/updates/aarch64/
        http://mirrors.aliyuncs.com/centos-altarch/7.7.1908/updates/aarch64/
        http://mirrors.cloud.aliyuncs.com/centos-altarch/7.7.1908/updates/aarch64/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-altarch/RPM-GPG-KEY-CentOS-7
 
#additional packages that may be useful
[extras]
name=CentOS-7.7.1908 - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-altarch/7.7.1908/extras/aarch64/
        http://mirrors.aliyuncs.com/centos-altarch/7.7.1908/extras/aarch64/
        http://mirrors.cloud.aliyuncs.com/centos-altarch/7.7.1908/extras/aarch64/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-altarch/RPM-GPG-KEY-CentOS-7
 
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-7.7.1908 - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-altarch/7.7.1908/centosplus/aarch64/
        http://mirrors.aliyuncs.com/centos-altarch/7.7.1908/centosplus/aarch64/
        http://mirrors.cloud.aliyuncs.com/centos-altarch/7.7.1908/centosplus/aarch64/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos-altarch/RPM-GPG-KEY-CentOS-7
 
#contrib - packages by Centos Users
[contrib]
name=CentOS-7.7.1908 - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-altarch/7.7.1908/contrib/aarch64/
        http://mirrors.aliyuncs.com/centos-altarch/7.7.1908/contrib/aarch64/
        http://mirrors.cloud.aliyuncs.com/centos-altarch/7.7.1908/contrib/aarch64/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos-altarch/RPM-GPG-KEY-CentOS-7

2.添加環(huán)境變量
這里默認(rèn)/usr/local/bin并不在系統(tǒng)變量中斩祭,我們需要在/etc/bashrc中添加之

echo export PATH=$PATH:/usr/local/bin >> /etc/bashrc

3.尋找systemctl的替代品

#從代碼中的github地址你可以發(fā)現(xiàn)怎么在chroot容器中實(shí)現(xiàn)systemctl類似的效果
wget https://github.com/smaknsk/servicectl/archive/1.0.tar.gz
tar -xf 1.0.tar.gz -C /usr/local/lib/
ln -s /usr/local/lib/servicectl-1.0/servicectl /usr/local/bin/servicectl
ln -s /usr/local/lib/servicectl-1.0/serviced /usr/local/bin/serviced

4.安裝Yarn(非必要摧玫,前端必備)
安裝yarn最好用npm裝诬像,最后用軟連接給/usr/local/bin即可闸婴,注意node的安裝包不要放在你默認(rèn)用戶的文件夾(例如/home/ll),否則其他用戶會因?yàn)闄?quán)限不夠訪問不了node降狠,npm庇楞,yarn等命令

# 這里我是將nodejs的包放在了/opt/下
ln -s /opt/nodejs/bin/node /usr/local/bin/node
ln -s /opt/nodejs/bin/npm /usr/local/bin/npm 
npm config set registry http://registry.npm.taobao.org/
npm install -g yarn
ln -s /opt/nodejs/bin/yarn /usr/local/bin/yarn
yarn config set registry http://registry.npm.taobao.org/

5.備份與恢復(fù)

點(diǎn)擊軟件右上角菜單,點(diǎn)擊【導(dǎo)出】即可備份鏡像了蛋褥,不過就是比較慢睛驳,需要耐心等待,并且這個(gè)鏡像不能超過4GB,否則將無法儲存(FAT32最大只能儲存4GB文件)想恢復(fù)直接安裝這個(gè)鏡像即可溃论。方法是,在安裝時(shí)在【發(fā)行版GNU/Linux】中選擇“rootfs.tar”炬转,然后在【源地址】中選擇你導(dǎo)出鏡像的路徑,開始安裝即可驻啤。

最后是一些常用軟件的安裝方法

screen-多任務(wù)利器
Nodejs最新版
Python3
內(nèi)網(wǎng)穿透利器-Ngrok

結(jié)語

還有最后的最后荐吵,說一千道一萬,不如直接給個(gè)現(xiàn)成的包來的痛快贼涩,你說是叭薯蝎?
奉上自用Centos7的鏡像:堅(jiān)果云鏈接,已安裝以下軟件(包在/opt/中):

  • nodejs 12.16.0
  • yarn 1.22.0
  • python 3.6.4
  • @vue/cli 4.2.2
  • screen 4.0.1
    安裝方法就在上面的第五節(jié)【備份與恢復(fù)】中袒哥,如果需要用戶名和密碼消略,則為
    用戶名:ll
    密碼:0000
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末疑俭,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子啄寡,更是在濱河造成了極大的恐慌哩照,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件识藤,死亡現(xiàn)場離奇詭異痴昧,居然都是意外死亡冠王,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門豪娜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人否灾,你說我怎么就攤上這事鸣奔。” “怎么了健提?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵私痹,是天一觀的道長统刮。 經(jīng)常有香客問我,道長侥蒙,這世上最難降的妖魔是什么暗膜? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任学搜,我火速辦了婚禮瑞佩,結(jié)果婚禮上坯台,老公的妹妹穿的比我還像新娘。我一直安慰自己蜒蕾,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布首启。 她就那樣靜靜地躺著毅桃,像睡著了一般。 火紅的嫁衣襯著肌膚如雪疾嗅。 梳的紋絲不亂的頭發(fā)上代承,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天渐扮,我揣著相機(jī)與錄音,去河邊找鬼膀估。 笑死耻讽,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的针肥。 我是一名探鬼主播饼记,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼具则,長吁一口氣:“原來是場噩夢啊……” “哼博肋!你這毒婦竟也來了蜂厅?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤锹雏,失蹤者是張志新(化名)和其女友劉穎术奖,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體佣耐,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡唧龄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了懒叛。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片耽梅。...
    茶點(diǎn)故事閱讀 39,785評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖诅迷,靈堂內(nèi)的尸體忽然破棺而出众旗,到底是詐尸還是另有隱情,我是刑警寧澤滩租,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布艘款,位于F島的核電站,受9級特大地震影響蜘欲,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜姥份,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一澈歉、第九天 我趴在偏房一處隱蔽的房頂上張望屿衅。 院中可真熱鬧,春花似錦涤久、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽疯兼。三九已至贫途,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間来氧,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留凫碌,地道東北人胃榕。 一個(gè)月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像苦掘,于是被迫代替她去往敵國和親楔壤。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評論 2 354