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 Puppet 4 trên Ubuntu 16.04
2016-12-09
Cách cài đặt và bảo mật Mosquitto MQTT Messaging Broker 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
 

