首頁 > 後端開發 > php教程 > 阿里雲ECS伺服器Win2003轉換CentOS7.2全記錄

阿里雲ECS伺服器Win2003轉換CentOS7.2全記錄

WBOY
發布: 2023-03-01 18:46:02
原創
1228 人瀏覽過

發此文也是為了記錄和分享,雖然都很初級的東西,不過還是希望如果有不會的認看到有幫助。有人疑問我把這看似文章的東西發到了問答裡會不會被踩。其實我這文章是有問題的,因為我還沒搞定git webhook自動部署,因為實在不想開shell_exec權限,不知道大神還有什麼好方法實現自動部署。

前言 & 背景:


原本的阿里雲端伺服器是Win2003(40G系統磁碟+70G資料盤),系統上運作的都是PHP系統,用Win做伺服器本來就很鬼扯了,無奈本人一直沒有碰過Linux,所以一直沒有改系統;

原來都是本地改好程式碼然後FTP到伺服器,太Low了,看了@安正超大神寫的Webhook自動部署,於是開始弄,發現Win2003下的各種權限真是鬧心的要死;藉著這個機會,乾脆鼓起勇氣換系統,擁抱CentOS7.2吧。

準備工作


因為從沒碰過Linux,所以做了很多準備工作,做了很多功課;發現問題最大的就是70G數據盤的處理,因為從Win更換到CentOS後,肯定是掛載不上的;阿里的工程師給的解決方案是用Ntfs-3G讀取,雖然我不懂這東西好壞,但是我還是想格式化用Linux本來就認的方式來掛載這塊數據盤。

這樣就涉及一個數據備份本地並且回傳的問題,我數據盤里大概有6個G的附件數據,都是圖片;打包備份下載到本地需要5小時,上傳需要5小時,這太久; SF的朋友給了建議臨時買OSS轉過去在轉回來,臨時買塊雲盤轉過去再轉回來,感謝這兩位朋友;不過我最後還是打包下載到了本地,發此文是正在上傳zip到服務器。

正式開始

  • 停用實例,更換系統盤,選擇CentOS7.2 x64 > 順利成功

  • SSH到伺服器:fdisk -l 發現磁碟已經分割

  • 我用的一鍵環境是寶塔 bt.cn ,要把數據盤掛載到/www目錄,so

<code>mkdir -p /www</code>
登入後複製
登入後複製
  • 格式化資料磁碟

<code>mkfs.ext4 /dev/xvdb1</code>
登入後複製
登入後複製
  • 掛載資料磁碟到/www目錄

<code>echo "/dev/xvdb1         /www         ext4           defaults            0 0" >> /etc/fstab</code>
登入後複製
登入後複製
  • 重載所有分區

<code>mount -a</code>
登入後複製
登入後複製
  • 查看是否成功(成功)

<code>df -h</code>
登入後複製
登入後複製
  • 看裝沒裝git,阿里的CentOS自備git 1.8.x哦

<code>git --version</code>
登入後複製
登入後複製
  • 克隆項目到www目錄

<code>git clone http://coding.com.....</code>
登入後複製
登入後複製
  • 復原資料庫

  • 用寶塔面板新建站點,指定專案目錄;站點存取成功。

  • 產生部署公式,並測試git pull;無任何問題。

至此項目已恢復運行,只差附件還在上傳,以前都再Win下開發都沒考慮大小寫問題,簡單測試項目目前沒發現大小寫問題。

因為shell_exec指令實在太危險了,如果讓hook.php來觸發shell_exec('git pull'),一旦系統有漏洞被非法分子利用執行shell_exec就慘了,現在暫時還是手動ssh到伺服器手動pull,或者用寶塔後台的定時任務。

上個圖慶祝下,順便感謝 寶塔Linux助理 bt.cn 、寶塔工程師阿良 、 @gleilei 、@laminux29

阿里雲ECS伺服器Win2003轉換CentOS7.2全記錄

回覆內容:

發此文也是為了記錄和分享,雖然都很初級的東西,不過還是希望如果有不會的認看到有幫助。有人疑問我把這看似文章的東西發到了問答裡會不會被踩。其實我這文章是有問題的,因為我還沒搞定git webhook自動部署,因為實在不想開shell_exec權限,不知道大神還有什麼好方法實現自動部署。

前言 & 背景:


原本的阿里雲端伺服器是Win2003(40G系統磁碟+70G資料盤),系統上運作的都是PHP系統,用Win做伺服器本來就很鬼扯了,無奈本人一直沒有碰過Linux,所以一直沒有改系統;

原來都是本地改好程式碼然後FTP到伺服器,太Low了,看了@安正超大神寫的Webhook自動部署,於是開始弄,發現Win2003下的各種權限真是鬧心的要死;藉著這個機會,乾脆鼓起勇氣換系統,擁抱CentOS7.2吧。

準備工作


因為從沒碰過Linux,所以做了很多準備工作,做了很多功課;發現問題最大的就是70G數據盤的處理,因為從Win更換到CentOS後,肯定是掛載不上的;阿里的工程師給的解決方案是用Ntfs-3G讀取,雖然我不懂這東西好壞,但是我還是想格式化用Linux本來就認的方式來掛載這塊數據盤。

這樣就涉及一個數據備份本地並且回傳的問題,我數據盤里大概有6個G的附件數據,都是圖片;打包備份下載到本地需要5小時,上傳需要5小時,這太久; SF的朋友給了建議臨時買OSS轉過去在轉回來,臨時買塊雲盤轉過去再轉回來,感謝這兩位朋友;不過我最後還是打包下載到了本地,發此文是正在上傳zip到服務器。

正式開始

  • 停用實例,更換系統盤,選擇CentOS7.2 x64 > 順利成功

  • SSH到伺服器:fdisk -l 發現磁碟已經分割

  • 我用的一鍵環境是寶塔 bt.cn ,要把數據盤掛載到/www目錄,so

<code>mkdir -p /www</code>
登入後複製
登入後複製
  • 格式化資料磁碟

<code>mkfs.ext4 /dev/xvdb1</code>
登入後複製
登入後複製
  • 掛載資料磁碟到/www目錄

<code>echo "/dev/xvdb1         /www         ext4           defaults            0 0" >> /etc/fstab</code>
登入後複製
登入後複製
  • 重載所有分區

<code>mount -a</code>
登入後複製
登入後複製
  • 查看是否成功(成功)

<code>df -h</code>
登入後複製
登入後複製
  • 看裝沒裝git,阿里的CentOS自備git 1.8.x哦

<code>git --version</code>
登入後複製
登入後複製
  • 克隆項目到www目錄

<code>git clone http://coding.com.....</code>
登入後複製
登入後複製
  • 復原資料庫

  • 用寶塔面板新建站點,指定專案目錄;站點存取成功。

  • 產生部署公式,並測試git pull;無任何問題。

至此項目已恢復運行,只差附件還在上傳,以前都再Win下開發都沒考慮大小寫問題,簡單測試項目目前沒發現大小寫問題。

因為shell_exec指令實在太危險了,如果讓hook.php來觸發shell_exec('git pull'),一旦系統有漏洞被非法分子利用執行shell_exec就慘了,現在暫時還是手動ssh到伺服器手動pull,或者用寶塔後台的定時任務。

上個圖慶祝下,順便感謝 寶塔Linux助理 bt.cn 、寶塔工程師阿良 、 @gleilei 、@laminux29

阿里雲ECS伺服器Win2003轉換CentOS7.2全記錄

看著你們為了節約錢幾十個G都能折騰這麼半天,而我一整套新刀片集群和存儲掛載自建BGP機房什麼都沒乾純粹浪費電,感覺有些心酸。

可以玩玩Docker,用Docker部署個jenkins,做持續集成,git上去,伺服器自動測試和部署發布。也可以用Docker部署個gitlab,可以做自己的git伺服器。

很想知道你把文章發到問題裡面,會不會被踩…

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板