강좌

HOME > 강좌 >
강좌| 리눅스 및 오픈소스에 관련된 강좌를 보실 수 있습니다.
 
SULinux17 & CentOS7 에서 NextCloud 설치 및 기본 운영
조회 : 6,598  


1. 개요
NextCloud는 OwnCloud에서 파생되었으며, 내부 구성원은 물론 외부 사용자들에게도 공개가 가능한 Hybrid Cloud 입니다.


2. 설치 운영체제 정보 및 특이사항 
 - OS : SULinux17 64bit
 - Apache 2.4.6
 - PHP 5.4.16
 - MariaDB 5.5.56

※ NextCloud 설치 시 PHP 5.6.X 버전 이상 부터 설치가 가능 하므로,
   기존에 설치된 PHP 5.4.16에서 PHP 5.6.35로 업데이트 후 설치를 진행 할 예정입니다.
   또한 PHP버전 업데이트 시 기존에 작동되고 있는 프로그램/모듈과 충돌할 수 있으며,
   해당 강좌에서는 삭제 후 설치 진행이 아닌 업데이트로 진행하였습니다.
   본 강좌는 이미지 편집의 편의를 위하여 VM을 사용하였습니다.

3. PHP 업그레이드
  3-1 epel repo 및 remi reop 설치
   PHP를 업그레이드를 위해서는 epel repo와 remi repo가 선작업으로 설치 되어야 합니다.
   설치 방법은 아래와 같습니다.

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm


rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm


3-2 remi repo 수정
   php5.6으로 업데이트를 위해서는 remi repo 수정이 필요 합니다.

   vi /etc/yum.repos.d/remi.repo
   30번째줄 remi-php56에서 enabled=0 -> enabled=1 로 수정 후 저장


   
3-3 php 업데이트 및 설치 확인 
   yum -y update php
   yum install php php-mysql php-fpm php-opcache php-mbstring


   php -v 명령어로 바뀐 버전 확인 

4. 언어셋 변경 및 설정 
   NextCloud를 설치 하고 사용하는데 있어 한글 문제가 발생 할수 있습니다. 이부분을 방지 하기 위하여
   Apache, PHP, MariaDB의 언어셋을 UTF8로 변경을 진행 해야합니다.

 4-1 Apache 설정 
  4-1-1 Default로 설치 되어 있는 Apache의 언어셋은 UTF-8로 기본 설정이 되어있습니다.
   NextCloud는 PHP기반이기때문에 vi /etc/httpd/conf/httpd.conf 164번줄에 
   index.php를 추가 후 저장 합니다.
   –-------------------------------------------------------------------------------
  <IfModule dir_module>
      DirectoryIndex index.html index.php
  </IfModule>
   –-------------------------------------------------------------------------------
  4-1-2 NextCloud를 사용하기 위하여 아파치 기본디렉토리 변경
   Default 디렉토리가 /var/www/html로 되어있는 것을 /var/www/nextcloud로 임의로 설정 하였습니다.
   vhost를 사용하는 경우 추후에 추가하도록 하겠습니다.
   
   119, 124, 131 줄에 /var/www/html을 /var/www/nextcloud로 변경 
  
   vi /etc/httpd/conf/httpd.conf
   –------------------------------------------------------------------------------
   DocumentRoot "설치할 웹페이지 디렉토리"
        
   <Directory "설치할 웹페이지 디렉토리">
    AllowOverride None                       
    Require all granted                     // 모든 요청 허용 
   </Directory>
  –-------------------------------------------------------------------------------
    
   

   설정 완료를 위해 아파치 재시작을 해줍니다.
   
   systemctl restart httpd

4-2 PHP 설정
  4-2-1 php -i | grep php.ini 명령어를 사용하여 php설정 파일인 php.ini파일이 실제 적용되는 위치를 찾습니다.
   vi /etc/php.ini엽니다.
   1656번줄 부터 있는 mbstring부분에 mbstring.language, mbstring.internal_encoding,
   mbstring.http_input, mbstring.http_output 부분을 주석 해제 후 UTF-8를 추가 및 저장 해줍니다.

   mbstring.language = UTF-8
   mbstring.internal_encoding = UTF-8
   mbstring.http_input = UTF-8
   mbstring.http_output = UTF-8


4-3 MariaDB 설정
  4-3-1 현재 언어셋 확인을 위하여 mysql 접속 후 database,server 값이 utf8이 아닌 것을 확인 합니다.
 
   mysql -u root -p
   비밀번호
   접속
   show variables like 'c%';
   
  
 vi /etc/my.cnf파일을 열어 [mysqld]부분 밑에 character-set-server=utf8 추가 후 저장


   systemctl restart mariadb  
   mysql 재접속하여 바뀐 언어셋 확인 


   ※ 주의 기존에 DB가 동작 중일 시 언어셋 변경을 하게 되면 문제가 발생 할 수 있습니다. 
      구동중인 DB가 있을 경우 해당 DB만 따로 utf8로 만드는 것은 추후 추가 하겠습니다.

  4-3-2 NextCloud를 사용하기 위한 DB 생성
   NextCloud 용 DB를 생성 하기 위하여 아래와 같이 작업을 진행 합니다.
   본 강좌에서는 DB명을 임의로 nextcloud로 설정 하였습니다.
   
   mysql -u root -p
   비밀번호
   접속
   create database nextcloud;
   flush privileges;


5. NextCloud 설치
  5-1 NextCloud 다운받기
   4-1-2 에 명시에 해놓은거와 같이 /var/www 에 NextCloud 파일을 다운 받습니다.
   다운 완료 후 해당 파일 압축을 해제해 줍니다.   
   
   cd /var/www 
   wget https://download.nextcloud.com/server/releases/nextcloud-13.0.1.tar.bz2
   tar -xvf nextcloud-13.0.1.tar.bz2

   ※ download.nextcloud.com/server/releases 에 접속 하시면 원하시는 버전을 받을 수 있습니다.
   
   5-1-1 퍼미션 및 소유권 변경 & data 디렉토리 설정
   nextcloud 폴더 밑에 data 디렉토리를 생성 해줍니다. 
 
   cd /var/www/nextcolud
   mkdir data

   그 후 cd /var/www로 이동 하여, 현재 아파치 구동하는 소유자가 apache이므로
   아래에 명령어로 소유권 및 퍼미션 변경을 합니다.

   chown -R apache.apache nextcloud
   chmod -R 775 apache.apache nextcloud 


   위에 과정을 완료 하셨으면, NextCloud 설치가 완료 되었습니다.

6. NextCloud 설정
  6-1 위 작업이 완료 된 후 인터넷 주소창에 IP주소를 칩니다.
   
   설정에 문제가 없다면 위와 같이 관리자 계정 설정 화면이 나타납니다.
   사용자 이름, 암호를 입력 후 설치 완료를 누르시면 아래와 같은 화면이 나타나면서 설치 및 기본 설정이
   완료 됩니다.
  
 
  7. NextCloud 사용
   7-1 사용자 추가
    NextCloud에서는 관리계정을 제외한 일반 계정들을 생성 할 수가 있습니다.
    우측 상단 클릭 후 사용자를 누르시면 아래와 같은 화면이 보입니다.
    해당 페이지에서 그룹추가 또는 사용자 추가를 하여, 해당 용도에 맞게 사용자를 생성 할 수 있습니다.
    또한 할당량을 보시면 해당 계정당 사용 할수 있는 용량을 별도로 지정 할 수가 있어,
    계정 별 용량관리를 하실 수 있습니다.
    업로드 된 파일들은 위에 설정 한 NextCloud에 Data 디렉토리 인
    /var/www/nextcloud/계정명 디렉토리에 저장이 됩니다.


  7-2 설정
   우측 상단을 클릭 하시면 설정을 볼수 있습니다. 해당 설정은 관리자 계정으로만 설정이 가능하며,
   해당 페이지에서는 관리자에 개인 설정 및 보안 모니터링 등 사용 목적에 따라 설정 하실수 있습니다.
   
   
이상으로 NextCloud 설치 과정 및 간단한 운용에 대해 알아봤습니다.
NextCloud는 Owncloud에서 파생된 만큼 거의 비슷한 구조를 가지고 있지만
조금더 사용자 편의성에 중점을 둔 것 같습니다.

NAS 장비 대체로 간단하게 사용 할 수 있는 무료 opensource cloud인 만큼
필요에 따라 유용하게 사용 할 수있는 Cloud라 생각이 듭니다.

이상 SULinux17 & CentOS7 에서 NextCloud 설치 및 기본 운영에 대하여 알아 봤습니다.
감사합니다.


[원글링크] : https://www.linux.co.kr/home2/board/subbs/board.php?bo_table=lecture&wr_id=1884


이 글을 트위터로 보내기 이 글을 페이스북으로 보내기 이 글을 미투데이로 보내기

 
김지훈
jhkim골벵이linux.co.kr