Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/nextcloudpi.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornachoparker <nacho@ownyourbits.com>2018-03-04 18:20:01 +0300
committernachoparker <nacho@ownyourbits.com>2018-03-04 20:15:24 +0300
commite912749dc66760cd1be2568caf45c85dae2fdcd1 (patch)
tree3511e60069dcc564315b60d5425a183eded489fc
parenta076fb5675e790351209939b0b5f3a653733efa9 (diff)
nc-ramlogs: change implementation to use log2ramv0.46.39
-rw-r--r--changelog.md6
-rw-r--r--etc/nextcloudpi-config.d/nc-ramlogs.sh60
-rwxr-xr-xupdate.sh38
3 files changed, 46 insertions, 58 deletions
diff --git a/changelog.md b/changelog.md
index 9c19fdb3..16ab4a8c 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,7 +1,9 @@
-[v0.46.38](https://github.com/nextcloud/nextcloudpi/commit/1746a25) (2018-03-04) disable ncp user login
+[v0.46.39](https://github.com/nextcloud/nextcloudpi/commit/ce08276) (2018-03-04) nc-ramlogs: change implementation to use log2ram
-[v0.46.37](https://github.com/nextcloud/nextcloudpi/commit/fb32cf9) (2018-03-03) nc-automount: fix dependencies
+[v0.46.38](https://github.com/nextcloud/nextcloudpi/commit/2b1fa11) (2018-03-04) disable ncp user login
+
+[v0.46.37](https://github.com/nextcloud/nextcloudpi/commit/78cdce5) (2018-03-03) nc-automount: fix dependencies
[v0.46.36](https://github.com/nextcloud/nextcloudpi/commit/33fae1f) (2018-03-03) build: fix systemd dir not existing
diff --git a/etc/nextcloudpi-config.d/nc-ramlogs.sh b/etc/nextcloudpi-config.d/nc-ramlogs.sh
index 88b48828..3cf2a285 100644
--- a/etc/nextcloudpi-config.d/nc-ramlogs.sh
+++ b/etc/nextcloudpi-config.d/nc-ramlogs.sh
@@ -18,57 +18,33 @@ ACTIVE_=no
DESCRIPTION="mount logs in RAM to prevent SD degradation (faster, consumes more RAM)"
INFOTITLE="Warning"
-INFO="If you are installing software other than NextCloud
-that creates folders under '/var/log/' disable this feature"
+INFO="You need to reboot for this change to take effect"
+
+install()
+{
+ curl -Lo log2ram.tar.gz https://github.com/azlux/log2ram/archive/master.tar.gz
+ tar xf log2ram.tar.gz
+ cd log2ram-master
+ chmod +x install.sh && sudo ./install.sh
+ cd ..
+ rm -r log2ram-master log2ram.tar.gz
+ rm /etc/cron.hourly/log2ram /usr/local/bin/uninstall-log2ram.sh
+}
configure()
{
[[ $ACTIVE_ != "yes" ]] && {
- sed -i '/tmpfs \/var\/log.* in RAM$/d' /etc/fstab
- sed -i '/tmpfs \/tmp.* in RAM$/d' /etc/fstab
- echo "Logs in SD. Reboot for changes to take effect"
+ systemctl disable log2ram
+ systemctl stop log2ram
+ echo "Logs in SD. Reboot to take effect"
return
}
+ systemctl enable log2ram
+ systemctl start log2ram
- grep -q "Logs in RAM" /etc/fstab || cat >> /etc/fstab <<EOF
-tmpfs /var/log tmpfs defaults,noatime,mode=1777,size=100M 0 0 # Logs in RAM
-tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0 # /tmp in RAM
-EOF
-
- # unit to recreate required logdirs
- mkdir -p /usr/lib/systemd/system
- cat > /usr/lib/systemd/system/ramlogs.service <<'EOF'
-[Unit]
-Description=Populate ramlogs dir
-Requires=network.target
-Before=redis-server.service apache2.service mysqld.service
-
-[Service]
-ExecStart=/bin/bash /usr/local/bin/ramlog-dirs.sh
-
-[Install]
-WantedBy=multi-user.target
-EOF
-
- cat > /usr/local/bin/ramlog-dirs.sh <<'EOF'
-#!/bin/bash
-mkdir -p /var/log/mysql
-chown mysql /var/log/mysql
-
-mkdir -p /var/log/apache2
-chown www-data /var/log/apache2
-
-mkdir -p /var/log/redis
-chown redis /var/log/redis
-EOF
- systemctl enable ramlogs
-
- grep -q vm.swappiness /etc/sysctl.conf || echo "vm.swappiness = 10" >> /etc/sysctl.conf && sysctl --load
- echo "Logs in RAM. Reboot for changes to take effect"
+ echo "Logs in RAM. Reboot to take effect"
}
-install() { :; }
-
# License
#
# This script is free software; you can redistribute it and/or modify it
diff --git a/update.sh b/update.sh
index 1256d884..08cff322 100755
--- a/update.sh
+++ b/update.sh
@@ -100,11 +100,11 @@ for file in etc/nextcloudpi-config.d/*; do
done
# install localization files
-cp -rT etc/nextcloudpi-config.d/l10n /usr/local/etc/nextcloudpi-config.d/l10n
+cp -rT etc/nextcloudpi-config.d/l10n "$CONFDIR"/l10n
# these files can contain sensitive information, such as passwords
-chown -R root:www-data /usr/local/etc/nextcloudpi-config.d
-chmod 660 /usr/local/etc/nextcloudpi-config.d/*
+chown -R root:www-data "$CONFDIR"
+chmod 660 "$CONFDIR"/*
# install web interface
cp -r ncp-web /var/www/
@@ -124,17 +124,17 @@ done
[[ ! -f /.ncp-image ]] && {
# update ncp-backup
- cd /usr/local/etc/nextcloudpi-config.d &>/dev/null
+ cd "$CONFDIR" &>/dev/null
install_script nc-backup.sh
cd - &>/dev/null
# update ncp-backup-auto
- cd /usr/local/etc/nextcloudpi-config.d &>/dev/null
+ cd "$CONFDIR" &>/dev/null
install_script nc-backup-auto.sh
cd - &>/dev/null
# refresh nc-backup-auto
- cd /usr/local/etc/nextcloudpi-config.d &>/dev/null
+ cd "$CONFDIR" &>/dev/null
grep -q '^ACTIVE_=yes$' nc-backup-auto.sh && activate_script nc-backup-auto.sh
cd - &>/dev/null
@@ -189,7 +189,6 @@ ExecStart=/bin/bash /usr/local/bin/ncp-provisioning.sh
[Install]
WantedBy=multi-user.target
EOF
-
systemctl enable nc-provisioning
NEED_UPDATE=false
@@ -219,8 +218,7 @@ EOF
# adjust services
systemctl mask nfs-blkmap
- grep -q '^ACTIVE_=yes$' /usr/local/etc/nextcloudpi-config.d/samba.sh || \
- update-rc.d nmbd disable
+ grep -q '^ACTIVE_=yes$' "$CONFDIR"/samba.sh || update-rc.d nmbd disable
# fix automount dependencies with other ncp-apps
sed -i \
@@ -231,11 +229,6 @@ EOF
's|^Before=.*|Before=nc-automount.service|' \
/usr/lib/systemd/system/nc-automount-links.service
- # fix ramlogs dependencies with other ncp-apps
- sed -i \
- 's|^Before=.*|Before=redis-server.service apache2.service mysqld.service|' \
- /usr/lib/systemd/system/ramlogs.service
-
# adjust when other services start
DBUNIT=/lib/systemd/system/mariadb.service
F2BUNIT=/lib/systemd/system/fail2ban.service
@@ -247,6 +240,23 @@ EOF
# disable ncp user login
chsh -s /usr/sbin/nologin ncp
+ # remove old instance of ramlogs
+ [[ -f /usr/lib/systemd/system/ramlogs.service ]] && {
+ systemctl disable ramlogs
+ rm -f /usr/lib/systemd/system/ramlogs.service /usr/local/bin/ramlog-dirs.sh
+ }
+ sed -i '/tmpfs \/var\/log.* in RAM$/d' /etc/fstab
+ sed -i '/tmpfs \/tmp.* in RAM$/d' /etc/fstab
+
+ # update ramlogs with log2ram
+ type log2ram &>/dev/null || {
+ cd "$CONFDIR" &>/dev/null
+ install_script nc-ramlogs.sh &>/dev/null
+ grep -q '^ACTIVE_=yes$' "$CONFDIR"/nc-ramlogs.sh && \
+ systemctl enable log2ram
+ cd - &>/dev/null
+ }
+
} # end - only live updates
exit 0