Difference between revisions of "OwnCloud"

From Wikislax
Jump to: navigation, search
(Configure the execution of the cron job to every 15 min and the cleanup of chunks every night at 2 am:)
 
(7 intermediate revisions by the same user not shown)
Line 45: Line 45:
  
 
== setting up the owncloud database ==
 
== setting up the owncloud database ==
 +
 +
The admin user is the one who will manage the other users and OwnCloud from the OwnCloud web page.
  
 
  # occ maintenance:install \
 
  # occ maintenance:install \
Line 51: Line 53:
 
     --database-user "owncloud" \
 
     --database-user "owncloud" \
 
     --database-pass "password" \
 
     --database-pass "password" \
     --data-dir "/var/www/owncloud/data" \
+
     --data-dir "/var/www/htdocs/owncloud/data" \
 
     --admin-user "admin" \
 
     --admin-user "admin" \
 
     --admin-pass "admin"
 
     --admin-pass "admin"
Line 76: Line 78:
 
== Configure the execution of the cron job to every 15 min and the cleanup of chunks every night at 2 am: ==
 
== Configure the execution of the cron job to every 15 min and the cleanup of chunks every night at 2 am: ==
  
  # echo "MIN HOUR DAY MONTH DAYOFWEEK COMMAND" \
+
  # echo "MIN HOUR DAY MONTH DAYOFWEEK COMMAND" >> /var/spool/cron/crontabs/apache
  >> /var/spool/cron/crontabs/apache
+
  # echo "*/15  *  *  *  * /var/www/htdocs/owncloud/occ system:cron" >> /var/spool/cron/crontabs/apache
  # echo "*/15  *  *  *  * /var/www/htdocs/owncloud/occ system:cron" \
+
  # echo "0  2  *  *  * /var/www/htdocs/owncloud/occ dav:cleanup-chunks" >> /var/spool/cron/crontabs/apache
  >> /var/spool/cron/crontabs/apache
 
  # echo "0  2  *  *  * /var/www/htdocs/owncloud/occ dav:cleanup-chunks" \
 
  >> /var/spool/cron/crontabs/apache
 
 
  # chgrp apache /var/spool/cron/crontabs/apache
 
  # chgrp apache /var/spool/cron/crontabs/apache
 
  #
 
  #
  
== Configure ldap synchronization ==
+
== Configure Log Rotation ==
  
Note : instructions copied from OwnCloud documentation and not used at the time of this writing
+
  # FILE="/etc/logrotate.d/owncloud"
 
+
  # cat <<EOM >$FILE
If you need to sync your users from an LDAP or Active Directory Server, add this additional Cron job. Every 4 hours this cron job will sync LDAP users in ownCloud and disable the ones who are not available for ownCloud. Additionally, you get a log file in /var/log/ldap-sync/user-sync.log for debugging.
+
  /var/www/htdocs/owncloud/data/owncloud.log {
 
+
size 10M
  # echo "1 */6 * * * /var/www/owncloud/occ user:sync \
+
rotate 12
  'OCA\User_LDAP\User_Proxy' -m disable -vvv >> \
+
copytruncate
  /var/log/ldap-sync/user-sync.log 2>&1" \
+
  missingok
  | sudo -u www-data -g crontab tee -a \
+
compress
  /var/spool/cron/crontabs/www-data
+
compresscmd /bin/gzip
  # mkdir -p /var/log/ldap-sync
+
  }
  # touch /var/log/ldap-sync/user-sync.log
+
EOM
# chown www-data. /var/log/ldap-sync/user-sync.log
+
  #
 
 
== Configure Caching and File Locking ==
 
 
 
  # occ config:system:set \
 
  memcache.local \
 
  --value '\OC\Memcache\APCu'
 
  # occ config:system:set \
 
  memcache.locking \
 
  --value '\OC\Memcache\Redis'
 
  # occ config:system:set \
 
  redis \
 
  --value '{"host": "127.0.0.1", "port": "6379"}' \
 
  --type json
 
  
 
<br clear=all>
 
<br clear=all>
  
 
{{pFoot|[[Asterisk]]|[[Main Page]]|[[Desktop software]]}}
 
{{pFoot|[[Asterisk]]|[[Main Page]]|[[Desktop software]]}}

Latest revision as of 20:11, 19 January 2025

What is OwnCloud ?

OwnCloud is a file synchronization server. It affords keeping a hierarchy of files synchronized on different clients and operating systems.

The Owncloud install doc provided is for Ubuntu.

It is adapted below for Slackware 15.0.

Installing OwnCloud

OwnCloud is a PHP application. download tarball then untar and install.

# tar -C /usr/local -xvf owncloud-complete-20240724.tar.bz2
# chown -R apache:apache owncloud
# cd /var/www/htdocs
# ln -s /usr/local/owncloud owncloud
# chown -R apache:apache owncloud

Creating the occ helper script

occ is an OwnCloud administration command.

# FILE="/usr/local/bin/occ"
# cat <<EOM >$FILE
> #! /bin/bash
> cd /usr/local/owncloud
> sudo -E -u apache /usr/bin/php /usr/local/owncloud/occ "\$@"
> EOM
# chmod u+x $FILE

Creating the OwnCloud database

OwnCloud can use a variety of databases. We will be using MySQL. The database can be created as follows :

# mysql -u root -e \
  "CREATE DATABASE IF NOT EXISTS owncloud; \
  CREATE USER IF NOT EXISTS 'owncloud'@'localhost' IDENTIFIED BY 'password'; \
  GRANT ALL PRIVILEGES ON *.* TO 'owncloud'@'localhost' WITH GRANT OPTION; \
  FLUSH PRIVILEGES;"
#

It is also possible to create user owncloud@localhost and database from phpmyadmin.

setting up the owncloud database

The admin user is the one who will manage the other users and OwnCloud from the OwnCloud web page.

# occ maintenance:install \
    --database "mysql" \
    --database-name "owncloud" \
    --database-user "owncloud" \
    --database-pass "password" \
    --data-dir "/var/www/htdocs/owncloud/data" \
    --admin-user "admin" \
    --admin-pass "admin"
ownCloud was successfully installed
#

Configure ownCloud’s Trusted Domains

# my_ip=$(hostname -I|cut -f1 -d ' ')
# occ config:system:set trusted_domains 1 --value="$my_ip"
System config value trusted_domains => 1 set to string x.y.z.t
# occ config:system:set trusted_domains 2 --value="$HOSTNAME"
System config value trusted_domains => 2 set to string your.domain.tld
#

Configure the cron jobs

Set your background job mode to cron:

# occ background:cron
Set mode for background jobs to 'cron'
#

Configure the execution of the cron job to every 15 min and the cleanup of chunks every night at 2 am:

# echo "MIN HOUR DAY MONTH DAYOFWEEK COMMAND" >> /var/spool/cron/crontabs/apache
# echo "*/15  *  *  *  * /var/www/htdocs/owncloud/occ system:cron" >> /var/spool/cron/crontabs/apache
# echo "0  2  *  *  * /var/www/htdocs/owncloud/occ dav:cleanup-chunks" >> /var/spool/cron/crontabs/apache
# chgrp apache /var/spool/cron/crontabs/apache
#

Configure Log Rotation

# FILE="/etc/logrotate.d/owncloud"
# cat <<EOM >$FILE
/var/www/htdocs/owncloud/data/owncloud.log {
size 10M
rotate 12
copytruncate
missingok
compress
compresscmd /bin/gzip
}
EOM
#


Asterisk Main Page Desktop software