Установка owncloud на CentOS 7

Установка owncloud с нуля на CentOS 7
Подразумеваем, что у вас установлена операционная система CentOS 7 и настроено сетевое подключение.
Открываем в FIREWALLD 80 и 443 TCP порты.
firewall-cmd —permanent —zone=public —add-service=http
firewall-cmd —permanent —zone=public —add-service=https
firewall-cmd —reload
Далее пошагово выполняем следующие команды:
setenforce 0
yum install php php-curl php-gd php-mbstring php-xml php-mysql httpd php-intl libcurl zip unzip wget php-pdo.x86_64 mod_ssl openssl sendmail bzip2 mariadb-server mariadb-shared redis php-pecl-redis policycoreutils-python
systemctl enable httpd.service
systemctl enable mariadb.service
cd /var/www/html
wget http://download.owncloud.org/community/owncloud-8.2.1.tar.bz2
tar xjf owncloud-8.2.1.tar.bz2
cp -R owncloud/* /var/www/html/
rm owncloud-8.2.1.tar.bz2
rm -R -I owncloud
cd /var/www/html/
mkdir data
chown -R apache:apache *
cd /home
mkdir data
chown -R apache:apache *
cd /tmp
chcon -Rv —type=httpd_sys_content_t /home/data
setsebool -P httpd_can_sendmail 1
setsebool -P httpd_can_network_connect=1
setsebool -P httpd_unified 1
systemctl start httpd.service
systemctl start mariadb.service
Делаем начальную установку MariaDB
/usr/bin/mysql_secure_installation
mysql -u root -p
create database clouddb;
grant all privileges on clouddb.* to ‘clouddbuser’@’localhost’ identified by ‘Password’;
flush privileges;
quit
mysql -u clouddbuser -p -e «select * from oc_appconfig where appid=’files_trashbin’;» clouddb

chcon -R -t httpd_sys_rw_content_t /var/www/html/config
chcon -R -t httpd_sys_rw_content_t /var/www/html/data
chcon -R -t httpd_sys_rw_content_t /var/www/html/apps
chcon -R -t httpd_sys_rw_content_t /home/data
setenforce 1
Разрешаем использование .htaccess и mod_rewrite в Apache
Для разрешения использования файла .htaccess вы должны установить директиву AllowOverride All
в папке /var/www/html/ в секции файла имени вашего виртуального хоста.

vi /etc/httpd/conf.d/owncloud.conf
‘memcache.local’ => ‘\OC\Memcache\Redis’,
‘redis’ => array(
‘host’ => ‘localhost’,
‘port’ => 6379,
‘timeout’ => 0.0,
),
‘filelocking.enabled’ => ‘true’,
‘memcache.locking’ => ‘\OC\Memcache\Redis’,
‘redis’ => array(
‘host’ => ‘localhost’,
‘port’ => 6379,
‘timeout’ => 0.0,
),

vi /etc/sysctl.conf
vm.overcommit_memory=1
net.core.somaxconn=1024

openssl genrsa -out owncloud.key 2048
openssl req -new -key owncloud.key -out owncloud.csr
openssl x509 -req -days 365 -in owncloud.csr -signkey owncloud.key -out owncloud.crt
cp owncloud.crt /etc/pki/tls/certs
cp owncloud.key /etc/pki/tls/private/
cp owncloud.csr /etc/pki/tls/private/
cp owncloud.crt /etc/ssl/
cp owncloud.key /etc/ssl/
cp owncloud.csr /etc/ssl/

Правим файл httpd.conf
vi /etc/httpd/conf/httpd.conf
<VirtualHost *:443>
DocumentRoot /
ServerName cloud.myserver.domain
SSLEngine On
SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
SSLCertificateFile /etc/ssl/owncloud.crt
SSLCertificateKeyFile /etc/ssl/owncloud.key
</VirtualHost>
<VirtualHost *:80>
ServerName cloud.myserver.domain
Redirect permanent  / https://cloud.myserver.domain/
</VirtualHost>

Что очень важно: необходимо установить и настроить службу времени.
Для нормального функционирования времени в Linux в системе Hyper-V необходимо:
1) в параметрах загрузки ядра (grup.conf) добавить «clock=pit notsc divider=10»
2) проверить, что в параметрах аппаратных часов /etc/adjtime установлен параметр «LOCAL»