前些年網盤的興起,我們很多人已經習慣將數據存儲在網盤,還可以實現數據的自動備份、多設備同步等,但是這些網盤都有一個問題,就是數據的安全性,一方面是我們存儲的數據被審查過程中有泄漏的風險,另外近幾年多個知名網盤關閉,也讓我們對數據安全性更加擔憂。
前言
為解決公有雲盤的諸多問題,本文提供了一個私有網盤建設思路,利用京東雲VM、OSS和開源軟件搭建自己的存儲平台,個人或公司用戶均適用。目前京東雲對象存儲(OSS)標准存儲類型的用戶,還可享受10GB的免費存儲容量,如果使用量較大,每日計費時,會先抵扣免費額度,超出部分再按照價格詳情付費結算。
本文使用開源軟件ownCloud搭建個人網盤,ownCloud是一個自由且開源的雲存儲解決方案,包括兩個部分:服務器和客戶端。ownCloud 最早由KDE開發者Frank Karlitschek於2010年一月創建,目標是成為商業雲服務提供商的替代。與商業雲存儲服務不同,ownCloud可以自由獲取無需付費,但相應地,用戶必須自行架設 ownCloud的服務器,這需要一點技術。ownCloud在客戶端可通過網頁界面,或者安裝專用的客戶端軟件來使用。網頁界面當然就是任何能開網頁的平台都支持,而客戶端軟件也支持相當多平台,Windows、Linux、iOS、Android皆有。除了雲存儲之外,ownCloud也可用於同步行事歷、電子郵件聯系人、網頁瀏覽器的書簽;此外還有多人在線文件同步協作的功能(類似google documents或Duddle等等)。
一、准備工作
1、創建雲主機
創建操作系統為centos7.4的雲主機,操作流程詳見京東雲幫助文檔,此處不再贅述:
https://docs.jdcloud.com/cn/virtual-machines/create-linux-instance。
2、創建OSS存儲空間
我們創建名為“owndisk”的存儲空間,注意,存儲空間要和雲主機創建在同一區域,如均創建在“華北-北京”區域。
3、掛載OSS到雲主機
我們使用s3fs命令手動掛載OSS空間到雲主機。
安裝依賴
登錄雲主機,安裝依賴包
#yum install automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel -y
安裝s3fs
#yum install epel-release s3fs-fuse -y
創建密碼文件
#echo Access_Key_ID:Access_Key_Secret > ~/.passwd-s3fs
Access_Key_ID:Access_Key_Secret獲取方式請見:https://uc.jdcloud.com/account/accessKey
~/.passwd-s3fs為密碼存放目錄,可自行設置。
設置密鑰文件權限
#chmod abc file
其中a,b,c各為一個數字,分別表示User、Group、及Other的權限。
r=4,w=2,x=1
若要rwx屬性則4+2+1=7;
若要rw-屬性則4+2=6;
若要r-x屬性則4+1=5。
修改權限為600
掛載
本次的對象存儲空間名稱為:owndisk
mkdir :創建data文件夾作為本地掛載目錄
s3fs :手動掛載命令,其中 bucketname 為bucket名稱、 /data 是本地掛載路徑、 passwd_file 為密碼文件位置、 url 為京東雲對象存儲Bucket頁面的Endpoint地域節點(Endpoint地址分為外網和內網地址,若使用京東雲雲主機與對象存儲在同一個地域,請填寫內網地址,其他情況請填寫外網地址,不要忘記前面的 https:// )
創建名為data的目錄,修改權限
#mkdir /data
# chown apache data -Rf
# chmod 770 data –Rf
手動執行掛載命令
#s3fs owndisk /data -o passwd_file=~/.passwd-disk -o url="https://s3-internal.cn-north-1.jdcloud-oss.com"
查看掛載結果
#df -Th
二、搭建lamp環境
1、安裝Apache
# yum -y install httpd* -安裝Apache軟件
# rpm -qa | grep httpd --查看安裝的http包
安裝成功后,會產生下面兩個文件
/etc/httpd/conf/httpd.conf # 主配置文件
/var/www/html # 網站根目錄
配置Apache服務開機啟動:
# systemctl enable httpd
啟動Apache服務:
# systemctl start httpd
# lsof -i:80 --查看httpd服務是否啟動
2、安裝數據庫mariadb
我們安裝mariadb作為主數據庫
安裝
#yum -y install mariadb mariadb-server
#systemctl start mariadb
系統開啟自啟動
#systemctl enable mariadb
3、安裝php
# yum -y install php
查看php版本
#php -v
Owncloud要求php版本高於5.6,如果上述命令查看到的php版本低於5.6,則需要升級版本,升級需要首先把老版本php卸載 , 否則會版本沖突。
#yum -y remove php
運行如下命令檢查已經有的php包
#yum list installed | grep php
用yum remove命令一一刪除這些包,例如
#yum remove php-mysql.x86_64 0:5.3.3-38.el6
都刪除后運行再次以下命令查看是否刪完了,要確保刪完了
#yum list installed | grep php
下載安裝5.6.0以上版本的php,這里以7.2版為例
首先,添加更新rpm源
更新源
#rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
#rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
然后,安裝相關的包
#yum install -y php72w php72w-opcache php72w-xml php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
之后要等待安裝完畢,安裝速度取決於你的雲主機網絡帶寬,安裝完畢用查看php版本
#php -v
安裝完畢,重啟apache服務
#systemctl restart httpd
三、安裝owncloud
1、導入密鑰
導入owncloud rpm包的密鑰,可訪問下述地址查看密鑰:
https://attic.owncloud.org/download/repositories/10.0/owncloud/
#rpm --import https://download.owncloud.org/download/repositories/stable/CentOS_7/repodata/repomd.xml.key
2、添加倉庫源
添加owncloud 倉庫源。
#curl -L https://download.owncloud.org/download/repositories/stable/CentOS_7/ce:stable.repo -o /etc/yum.repos.d/ownCloud.repo
清空本地源緩存,使添加的源生效
#yum clean expire-cache
3、安裝owncloud
#yum install -y owncloud
Owncloud安裝包約19mb大小,安裝速度取決於你的雲主機網速。
安裝完畢,登錄 http://你的雲主機ip/owncloud/index.php可查看owncloud網盤頁面。
四、配置數據庫
在MariaDB數據庫中創建owncloud的數據庫,設置root用戶密碼為jdcloud
# mysqladmin -u root password "jdcloud"
# mysql -u root –p
mariadb數據庫的相關命令是:
#systemctl start mariadb #啟動MariaDB
#systemctl stop mariadb #停止MariaDB
#systemctl restart mariadb #重啟MariaDB
#systemctl enable mariadb #設置開機啟動
創建數據庫,命名為owndisk
#create database owndisk;
登錄,如下圖:
五、登錄、使用
設置完畢后,界面自動跳轉,如下圖:
用上面設置的用戶名密碼登錄:
可根據上面指引下載桌面或移動客戶端,進行數據的存儲、備份、同步等操作。
點擊“京東雲”了解京東雲對象存儲產品
歡迎點擊“鏈接”了解更多精彩內容