Cách chuyển cài đặt ownCloud sang Nextcloud trên Ubuntu 14.04
Gần đây, một phần lớn group phát triển cốt lõi tại ownCloud đã rời đi để bắt đầu một dự án mới có tên Nextcloud . Trong khi ownCloud vẫn sẽ tiếp tục được phát triển, bạn có thể cần xem những gì dự án mới mang lại. Nextcloud và ownCloud chia sẻ một cơ sở mã chung, nghĩa là việc di chuyển cài đặt ownCloud hiện có của bạn sang Nextcloud sẽ là một nhiệm vụ dễ dàng.Trong hướng dẫn này, bạn sẽ di chuyển cài đặt ownCloud hiện có sang Nextcloud. Quá trình này bao gồm việc swap các file ứng dụng cốt lõi với các file từ Nextcloud và cho phép trình cập nhật tích hợp của Nextcloud thực hiện công việc nặng nhọc. Mặc dù quy trình này rất đơn giản, nhưng có một số việc cần được thực hiện theo đúng trình tự đảm bảo mọi thứ diễn ra suôn sẻ.
Lưu ý: Bạn chỉ có thể cập nhật các bản cài đặt ownCloud và Nextcloud một số version chính tại một thời điểm. Nếu bạn hiện đang sử dụng ownCloud 9, trước tiên bạn phải di chuyển sang Nextcloud 10, sau đó nâng cấp lên Nextcloud 11. Hướng dẫn này bao gồm quá trình này.
Yêu cầu
Để chuyển cài đặt ownCloud của bạn sang Nextcloud, bạn cần :
- Bản cài đặt ownCloud 9 đang hoạt động trên Ubuntu 14.04.
- Tài khoản user không có quyền trên server ownCloud có thể chạy các lệnh với
sudo
. Bạn có thể cấu hình điều này theo hướng dẫn Cách tạo user Sudo trên Ubuntu .
Bước 1 - Dừng web server và backup dữ liệu
Ngay cả khi bạn đang làm việc với một cài đặt mới được cấu hình , bạn nên thực hiện backup nhanh. Bạn sắp bắt đầu di chuyển và xóa mọi thứ, vì vậy, hãy đảm bảo an toàn trước tiên!
Đăng nhập vào server của bạn đang chạy ownCloud nếu bạn chưa kết nối:
- ssh sammy@your_server_ip
Điều quan trọng là đảm bảo không có gì thay đổi trong khi bạn thực hiện backup và di chuyển, vì vậy cách dễ nhất đảm bảo điều đó là tắt web server để user không thể truy cập ownCloud. Thực hiện lệnh này:
- sudo service apache2 stop
Bây giờ web server đã dừng, hãy chuyển đến folder nơi server của bạn lưu trữ ownCloud. Nếu bạn đang sử dụng cài đặt One-Click cho ownCloud trên Ubuntu 14.04, cài đặt của bạn nằm trong folder /var/www/
. Chạy các lệnh sau để chuyển sang folder này và xác minh nó có chứa owncloud/
:
- cd /var/www
- ls
Bạn sẽ thấy folder owncloud
:
Outputhtml owncloud
Tiếp theo, tạo repository backup bằng lệnh tar
để c ompress ag z ip f ile và hiển thị kết quả v erbose ra màn hình. Kho lưu trữ mới sẽ được gọi là owncloud.tar.gz
và sẽ chứa toàn bộ folder owncloud/
. Thực hiện lệnh sau:
- sudo tar czfv owncloud.tar.gz owncloud/
Bây giờ hãy di chuyển repository vào folder chính của bạn để giữ an toàn:
- sudo mv owncloud.tar.gz ~/
Lưu ý : Các file ownCloud của bạn được backup , nhưng nếu bạn đang sử dụng MySQL hoặc bất kỳ database nào khác thay vì tùy chọn lưu trữ dữ liệu nội bộ, bạn cũng nên tạo bản backup database . Đối với MySQL, hãy tạo bản backup bằng cách chạy lệnh sau:
- mysqldump -u username -p dbname > ~/owncloud_backup.sql
Bạn có thể tìm thấy các giá trị cho username
, password
và dbname
trong file cấu hình có tại /var/www/owncloud/config/config.php
.
Bạn có thể tìm thêm thông tin về backup và khôi phục database MySQL tại đây .
Trước khi cài đặt Nextcloud, có một bước nữa dành riêng cho server Ubuntu 14.04.
Bước 2 - Nâng cấp PHP
Nếu bạn đang di chuyển từ cài đặt One-Click trên Ubuntu 14.04, bạn cần phải nâng cấp PHP để có thể sử dụng bất kỳ version Nextcloud nào mới hơn 10.0.2. Các repository Ubuntu 14.04 tiêu chuẩn chỉ bao gồm PHP 5.5, nhưng bắt buộc phải có PHP 5.6 bắt đầu với NextCloud 11. May mắn là Ubuntu hỗ trợ các repository của bên thứ 3 được gọi là PPA. Nếu bạn chưa cài đặt PPA trước đó, hãy thực thi lệnh này để cài đặt một gói có tên là python-software-properties
:
- sudo apt-get install python-software-properties
Tiếp theo, thêm PPA có chứa các version cập nhật của PHP:
- sudo add-apt-repository ppa:ondrej/php
Sau đó, yêu cầu người quản lý gói cập nhật danh sách các gói đã biết, bao gồm những gói trong PPA:
- sudo apt-get update
Đến đây bạn có thể cài đặt PHP7 và tất cả các module được Nextcloud yêu cầu:
- sudo apt-get install php7.0 php7.0-sqlite php7.0-mysql php7.0-pgsql php7.0-zip php7.0-gd php7.0-mb php7.0-curl php7.0-xml php7.0-apc
Cuối cùng, chuyển đổi module PHP mà web server của bạn sử dụng. Đối với Apache, các lệnh để thực hiện việc này là:
- a2dismod php5
- a2enmod php7.0
Lưu ý: Nếu bạn đang sử dụng server của bạn cho bất kỳ thứ gì khác ngoài ownCloud, bạn nên đảm bảo web server của bạn không cần PHP5.5 trước khi tắt module đó.
Bây giờ hãy cài đặt Nextcloud.
Bước 3 - Download Nextcloud
Tại trang phát hành Nextcloud, bạn sẽ tìm thấy danh sách mọi bản phát hành Nextcloud ở một số định dạng khác nhau. Tìm file .tar.gz
mới nhất cho bản phát hành giống với hoặc một version chính sau version ownCloud hiện tại của bạn. Ví dụ: nếu bạn đang di chuyển từ cài đặt One-Click của ownCloud 9, bạn sẽ tìm kiếm file nextcloud-10.0.2.tar.bz2
.
Khi bạn tìm thấy file , đừng tải file xuống máy tính cá nhân của bạn. Thay vào đó, hãy nhấp chuột phải vào tên file và sao chép địa chỉ liên kết để bạn có thể tải file xuống server của bạn .
Bạn sẽ download hai file . Đầu tiên sẽ là gói Nextcloud mà bạn tìm thấy trên trang web. Tệp còn lại sẽ là file xác minh được gọi là “md5 checksum”. Tệp md5 sẽ có đường dẫn chính xác giống như gói, nhưng có thêm phần mở rộng .md5
vào cuối. Thực hiện các lệnh sau để di chuyển đến folder chính của bạn, sau đó download hai file .
- cd ~
- wget https://download.nextcloud.com/server/releases/nextcloud-10.0.2.tar.bz2
- wget https://download.nextcloud.com/server/releases/nextcloud-10.0.2.tar.bz2.md5
Chạy lệnh md5sum
để tạo tổng kiểm tra của nó nhằm xác minh tính toàn vẹn của file gói:
- md5sum nextcloud-10.0.2.tar.bz2
Bạn sẽ thấy một cái gì đó tương tự như kết quả này:
Outputdc30ee58858d4f6f2373472264f7d147 nextcloud-10.0.2.tar.bz2
Sau đó, hiển thị nội dung của file .md5
mà bạn đã download :
- cat nextcloud-10.0.2.tar.bz2.md5
Đầu ra của lệnh này phải giống với kết quả của lệnh trước đó:
Outputdc30ee58858d4f6f2373472264f7d147 nextcloud-10.0.2.tar.bz2
Nếu kết quả kết quả khác nhau, hãy reload Nextcloud.
Để extract các file , sử dụng tar
lệnh , nhưng lần này, e x đường các ile f với sản lượng v erbose. Thực thi lệnh này để extract repository :
- tar xfv nextcloud-10.0.2.tar.bz2
Cuối cùng, sao chép folder nextcloud
mới nextcloud
folder /var/www
:
- sudo mv nextcloud /var/www/nextcloud
Đến đây bạn có thể bắt đầu di chuyển các file của bạn từ ownCloud sang Nextcloud.
Bước 4 - Di chuyển dữ liệu và cài đặt quyền sở hữu file
Bản cài đặt ownCloud hiện tại của bạn có hai folder mà bạn muốn lưu giữ: data/
và config/
. Bạn sẽ di chuyển những thứ này từ vị trí ban đầu của chúng vào folder nextcoud
của bạn , nhưng trước tiên, bạn cần xóa các version mặc định đi kèm với Nextclout.
Đầu tiên, thực hiện lệnh để xóa các folder mặc định khỏi folder nextcloud
của bạn, nếu chúng tồn tại:
- sudo rm -rf /var/www/nextcloud/data /var/www/nextcloud/config
Sau đó di chuyển các folder cũ từ folder owncloud
:
- sudo mv /var/www/owncloud/data /var/www/nextcloud/data
- sudo mv /var/www/owncloud/config /var/www/nextcloud/config
Một điểm chung của việc di chuyển file bằng sudo
là tất cả các file sẽ thuộc quyền sở hữu của user root . Nextcloud, tuy nhiên, luôn được điều hành bởi user www-data . Điều này nghĩa là bạn cần thay đổi quyền sở hữu của folder /var/www/nextcloud
và nội dung của nó trước khi bạn tiếp tục. Để thực hiện việc này, hãy chạy lệnh chown
với đối số -R
để thay đổi lặp lại tất cả quyền sở hữu file cho user www-data :
- sudo chown -R www-data:www-data /var/www/nextcloud/
Bây giờ các file đã có sẵn, ta cần cho web server biết cách truy cập chúng.
Bước 5 - Nâng cấp Nextcloud Internals
Với tất cả các file tại chỗ, bạn có thể bắt đầu quá trình nâng cấp nội bộ. Nextcloud và ownCloud cung cấp một công cụ để quản lý và nâng cấp cài đặt gọi là occ
. Điều hướng đến folder /var/www/nextcloud/
:
- cd /var/www/nextcloud
Trước khi bạn có thể sử dụng occ
, bạn sẽ phải cập nhật các /var/www/nextcloud/config/config.php
file để phản ánh vị trí mới của các folder dữ liệu. Cụ thể, dòng 'datadirectory' => '/var/www/owncloud/data',
cần được thay đổi thành 'datadirectory' => '/var/www/nextcloud/data',
. Sử dụng sed
để dễ dàng thực hiện thay đổi:
- sudo sed -i "s/owncloud\/data/nextcloud\/data/g" config/config.php
LƯU Ý: Thông thường, các stream sed
xuất ra màn hình, nhưng cờ -i
yêu cầu nó sửa đổi file tại chỗ. Để biết thông tin về cách sử dụng biểu thức chính quy, hãy xem Giới thiệu về biểu thức chính quy . Và để biết thêm về sed
, hãy xem Khái niệm cơ bản của việc sử dụng trình soạn thảo dòng Sed để thao tác văn bản trong Linux .
Bây giờ sử dụng occ
để đưa Nextcloud vào chế độ bảo trì. Thao tác này khóa các file để không thể thực hiện thay đổi bên ngoài trong khi bạn nâng cấp ứng dụng. Chạy lệnh sau để bật chế độ bảo trì:
- sudo -u www-data php occ maintenance:mode --on
Lưu ý điều này sử dụng sudo
để chạy các lệnh với quyền là user www-data .
Bạn sẽ thấy kết quả này để có thể xác nhận chế độ bảo trì đã được bật:
[secondary_output] Nextcloud or one of the apps require upgrade - only a limited number of commands are available You may use your browser or the occ upgrade command to do the upgrade Maintenance mode enabled
Tiếp theo, sử dụng occ
để bắt đầu quá trình nâng cấp nội bộ:
- sudo -u www-data php occ upgrade
Lệnh này hiển thị rất nhiều kết quả khi nó di chuyển tất cả dữ liệu ownCloud sang Nextcloud, nhưng cuối cùng bạn sẽ thấy các thông báo sau:
Output... Starting code integrity check... Finished code integrity check Update successful Maintenance mode is kept active Reset log level
Nếu có vấn đề với việc nâng cấp, kết quả sẽ cung cấp cho bạn một số phản hồi về những gì đã xảy ra và cách giải quyết vấn đề. Giả sử quá trình nâng cấp diễn ra suôn sẻ, đã đến lúc tắt chế độ bảo trì.
- sudo -u www-data php occ maintenance:mode --off
Cài đặt ownCloud của bạn hiện đã được chuyển sang Nextcloud, nhưng nó có thể vẫn chưa được cập nhật. Nếu bạn đã di chuyển ownCloud 9, bạn sẽ chỉ di chuyển sang Nextcloud 10, nhưng vẫn có một version mới hơn, vì vậy hãy nâng cấp.
Bước 6 - Nâng cấp Nextcloud
Để nâng cấp Nextcloud lên version chính mới, bạn sử dụng quy trình tương tự như bạn đã sử dụng trong Bước 3 đến Bước 5 của hướng dẫn này. Đầu tiên, hãy di chuyển folder Nextcloud hiện đã được cài đặt của bạn bằng lệnh này:
- sudo mv /var/www/nextcloud /var/www/nextcloud.old
Sau đó, tìm file .tar.gz
từ trang web phát hành Nextcloud , download và kiểm tra tổng kiểm tra MD5 của nó giống như bạn đã làm trong Bước 3.
- wget https://download.nextcloud.com/server/releases/nextcloud-11.0.0.tar.bz2
- wget https://download.nextcloud.com/server/releases/nextcloud-11.0.0.tar.bz2.md5
- md5sum nextcloud-11.0.0.tar.bz2
- cat nextcloud-11.0.0.tar.bz2.md5
Khi bạn đã download và xác minh repository . extract nó và di chuyển nó đến vị trí Nextcloud trên web server :
- tar xfv nextcloud-11.0.0.tar.bz2
- mv nextcloud /var/www/nextcloud
Tiếp theo, di chuyển cấu hình và file dữ liệu từ cài đặt cũ sang cài đặt mới như bạn đã làm trong Bước 4:
- rm -rf /var/www/nextcloud/config /var/www/nextcloud/data
- mv /var/www/nextcloud.old/config /var/www/nextcloud
- mv /var/www/nextcloud.old/data /var/www/nextcloud
- sudo chown -R www-data:www-data /var/www/nextcloud/
Cuối cùng, sử dụng occ
để thực hiện nâng cấp:
- sudo -u www-data php occ maintenance:mode --on
- sudo -u www-data php occ upgrade
- sudo -u www-data php occ maintenance:mode --off
Lặp lại các bước này cho từng version Nextcloud chính mà bạn cần nâng cấp.
Như vậy, mọi thứ đã được cập nhật, ta có thể cấu hình web server để gửi lưu lượng truy cập đến Nextcloud.
Bước 7 - Sửa đổi stream lưu lượng của web server
Web server Apache chuyển hướng đến các folder khác nhau thông qua việc sử dụng server ảo hoặc vhosts. Thư mục /etc/apache2/sites-available/
chứa mô tả của từng vhost được cấu hình cho server . Các vhosts này được kích hoạt bằng cách liên kết các file được liên kết của chúng với folder /etc/apache2/sites-enabled/
. Tệp /etc/apache2/sites-available/000-owncloud.conf
cấu hình server để đọc /var/www/owcloud
và cấu hình đó được kích hoạt bởi liên kết có tại /etc/apache2/sites-enabled/000-owncloud.conf
.
Để chuyển đổi server để sử dụng cài đặt Nextcloud, hãy tạo một bản sao của cấu hình ownCloud vhost, chỉnh sửa nó để trỏ tới Nextcloud, tắt vhost ownCloud và bật Nextcloud vhost.
Fist sao chép file cấu hình ownCloud:
- sudo cp /etc/apache2/sites-available/000-owncloud.conf /etc/apache2/sites-available/000-nextcloud.conf
Tiếp theo, thay thế tất cả các version của owncloud
trong file cấu hình bằng nextcloud
. Bạn có thể thực hiện việc này bằng cách mở /etc/apache2/sites-available/000-nextcloud.conf
bằng editor và tự áp dụng các thay đổi hoặc bằng cách sử dụng biểu thức chính quy và lệnh sed
.
Chạy lệnh sau để chuyển đổi nội dung của file cấu hình vhost bằng sed
:
- sudo sed -i "s/owncloud/nextcloud/g" /etc/apache2/sites-available/000-nextcloud.conf
Tiếp theo, vô hiệu hóa vhost ownCloud bằng cách xóa liên kết /etc/apache2/sites-enabled/000-owncloud.conf
. Ubuntu cung cấp lệnh a2dissite
để vô hiệu hóa các trang web. Thực hiện lệnh này:
- sudo a2dissite 000-owncloud.conf
Cuối cùng, kích hoạt Nextcloud vhost bằng cách tạo một softlink đến file cấu hình Nextcloud. Sử dụng lệnh a2ensite
để tạo liên kết:
- sudo a2ensite 000-nextcloud.conf
Lưu ý: Nếu bạn truy cập ownCloud thông qua HTTPS, bạn cũng cần lặp lại các bước này với vhost /etc/apache2/sites-available/owncloud-ssl.conf
.
Bây giờ web server biết tìm Nextcloud ở đâu, ta có thể bắt đầu backup nó bằng lệnh sau:
- sudo service apache2 start
Đến đây, mọi thứ sẽ hoạt động với cài đặt Nextcloud mới của bạn. Mở trình duyệt web và chuyển đến vị trí của server ownCloud cũ của bạn và bạn sẽ thấy màn hình đăng nhập Nextcloud. Tất cả tên user và password cũ của bạn sẽ hoạt động như trước khi di chuyển. Đăng nhập với quyền là user quản trị , vì bạn có thể cần chạy lại một số ứng dụng của bạn , bao gồm cả ứng dụng Lịch và Danh bạ.
Kết luận
Trong hướng dẫn này, bạn đã backup cài đặt ownCloud trước đó của bạn , di chuyển sang Nextcloud và tắt ownCloud. Đến đây bạn có thể đăng nhập vào Nextcloud bằng giao diện web giống như bạn đã làm với ownCloud.
Bây giờ server của bạn đã được di chuyển sang Nextcloud, đã đến lúc cập nhật bất kỳ ứng dụng client đồng bộ nào bạn đang sử dụng. Cũng giống như ownCloud, Nextcloud cung cấp một số ứng dụng client đồng bộ hóa cho máy tính để bàn và thiết bị di động của bạn.
Nếu bạn quyết định quay lại ownCloud, bạn có thể khôi phục data/
và config/
folder từ bản backup bạn đã tạo ở Bước 1, cũng như bất kỳ database bên ngoài nào bạn đã backup . Đừng cố sao chép data/
và config/
folder từ /var/www/nextcloud
trở lại ownCloud. Khi các bản backup đã được khôi phục, tất cả những gì bạn phải làm là vô hiệu hóa Nextcloud vhost và kích hoạt ownCloud, bằng cách sử dụng quy trình tương tự trong Bước 4.
Các tin liên quan
Cách triển khai ứng dụng Node.js và MongoDB với Rancher trên Ubuntu 16.042017-01-05
Cách xây dựng Go từ Nguồn trên Ubuntu 16.04
2017-01-04
Cách thiết lập firewall với UFW trên Ubuntu 16.04
2016-12-22
Cách cài đặt và bảo mật Mosquitto MQTT Messaging Broker trên Ubuntu 16.04
2016-12-09
Cách cài đặt Puppet 4 trên Ubuntu 16.04
2016-12-09
Cách sử dụng Vault để bảo vệ dữ liệu nhạy cảm có thể xem được trên Ubuntu 16.04
2016-12-09
Cách cài đặt Discourse trên Ubuntu 16.04
2016-12-02
Cách thiết lập giám sát hiệu suất thời gian thực với Netdata trên Ubuntu 16.04
2016-12-01
Cách sắp xếp công việc theo nhóm với ONLYOFFICE trên Ubuntu 14.04
2016-11-22
Cách triển khai CockroachDB trên Cụm ba node trên Ubuntu 16.04
2016-11-18