openhab / openhabian

openHABian - empowering the smart home, for Raspberry Pi and Debian systems
https://community.openhab.org/t/13379
ISC License
818 stars 251 forks source link

Removing ZRAM sync? #1287

Closed ecdye closed 3 years ago

ecdye commented 3 years ago

I had a random inspiration to try removing the sync service from ZRAM and see if I could get it to work, and it appears that I did.

@mstormi can you test this on the zramSync branch of this repository? If it works for you too, I'll work on getting it formally and properly submitted as a PR to both repositories.

I tested using the following commands (Make sure you are running OH3 as I branched the changes from the openHAB3 branch): date | sudo tee /var/lib/openhab/persistence/date && sudo shutdown -h -r now and cat /var/lib/openhab/persistence/date

Note that if you had ZRAM previously installed, you should remove it, reboot, then switch branches. Also ensure that you delete the old /opt/zram folder before reinstalling as it points to my repository in the zramSync branch.

Let me know if you have any questions or issues.

mstormi commented 3 years ago

good thinking. I had that idea as well but didn't dare to endeavor because it was such a hassle last time to get it working. will do asap but I'm busy ATM migrating my home to OH3

FWIW, I just fixed a typo in https://github.com/openhab/openhabian/issues/1286 I didn't analyse but there was a zram.tar in there. So it wasn't stored in the right location and possibly even not in use.

BTW did you watch the meetup? openHABian starts at 01:45:30

ecdye commented 3 years ago

good thinking. I had that idea as well but didn't dare to endeavor because it was such a hassle last time to get it working. will do asap but I'm busy ATM migrating my home to OH3

Nice, I have been running OH3 for ~2 months now and it has been surprisingly stable and nice to work with.

FWIW, I just fixed a typo in #1286

I noticed, that was one of the things that prompted this.

BTW did you watch the meetup? openHABian starts at 01:45:30

I haven't had a chance to yet, I will try to this evening.

mstormi commented 3 years ago

If I'm not mistaken all the difference is in zram-config (and not even relevant diff w.r.t. storing stuff on reboot) so I can simply replace that and disable the zramsync service, am I right here ? Worked on my test system but do not wanna mess with my prod system just to test this (it took me the full last 2 days to get it running in the first place so now it finally does ...).

mstormi commented 3 years ago

Hmm, didn't work on my prod machine. I noticed (yes 2x "ExecStart") ExecStart=/usr/local/sbin/zram-config "start" ExecStart=/usr/local/sbin/zram-config "stop"

Changed that, this time it worked.

mstormi commented 3 years ago

Seems we need to clean up more properly, could you please have a look?

https://community.openhab.org/t/zram-install-fails/104939/34

ecdye commented 3 years ago

He is in stable. We need to forward it to get rid of the issue

PatrickGlatz commented 3 years ago

He is in stable. We need to forward it to get rid of the issue

@ecdye, @mstormi

is it worth to wait for the next stable? Or shall i switch to the latest snapshot of openhabian (menu 40, followed by 41 snapshot) to see if that fixes the issues? Maybe i am a good test person for that

mstormi commented 3 years ago

Or shall i switch to the latest snapshot of openhabian (menu 40, followed by 41 snapshot) to see if that fixes the issues? Maybe i am a good test person for that

Yes please test before we forward. But in order to do that you must set clonebranch=master in openhabian.conf on boot install. Menu 41 is openHAB itself.

PatrickGlatz commented 3 years ago

Freshly installed the latest OH3.0.0RC1 as you have proposed by specifying clonebranch=master. Following remarks:

$ systemctl restart zram-config.service 
+ systemctl restart zram-config.service
Failed to restart zram-config.service: Unit zram-config.service not found.
+ return 5
+ echo 'FAILED (restart ZRAM)'
FAILED (restart ZRAM)
+ return 1

After i had reinstalled Zulu Java 11 32bit from the openhabian-config, i reinstalled ZRAM which seemed to work and also the webinterface was reachable. Looks as if have now a fresh system. I will give it a shot and try once more with specifiying java 11 in the openhabian.conf file prior to the first boot, maybe this fixes it

mstormi commented 3 years ago

Java shouldn't be related to ZRAM. Use debugmode=maximum before install and look for the ZRAM install in /boot/first-boot.log. Also show the lines before.

@ecdye is it intentional to still have java8 as the default ? I'd think we should move to 11 by default as it also seems to work for 2.5.X

ecdye commented 3 years ago

Only intentional because we never thought to change it outside of the openHAB 3 branch. I can change it later tonight.

PatrickGlatz commented 3 years ago

just checked /boot/first-boot.log. Even here it failed to install zram properly. I just extracted the zram related part. Cant tell you what i have done since then (sudo apt-get update && sudo apt-get upgrade + java 11 + reinstall zram + 1 reboot) but now systemctl status zram-config shows "active"

+ zram_setup
+ is_pifour_8GB
+ [[ '' == \p\i\4\_\8\g\b ]]
++ awk '/MemTotal/ {print $2}' /proc/meminfo
+ totalMemory=3919796
+ is_pifour
+ [[ '' == \p\i\4 ]]
+ grep -q '^Revision\s*:\s*[ 123][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]11[0-9a-fA-F]$' /proc/cpuinfo
+ return 0
+ [[ 3919796 -gt 5000000 ]]
+ return 1
+ [[ -n 1 ]]
+ [[ enable == \d\i\s\a\b\l\e ]]
+ is_arm
+ is_armv6l
+ [[ '' == \a\r\m\v\6\l ]]
+ case "$(uname -m)" in
++ uname -m
+ return 1
+ is_armv7l
+ [[ '' == \a\r\m\v\7\l ]]
+ case "$(uname -m)" in
++ uname -m
+ return 0
+ return 0
+ has_lowmem
+ local totalMemory
++ awk '/MemTotal/ {print $2}' /proc/meminfo
+ totalMemory=3919796
+ [[ -z 3919796 ]]
+ [[ 3919796 -lt 900000 ]]
+ return 1
+ is_pione
+ [[ '' == \p\i\1 ]]
+ grep -q '^Revision\s*:\s*00[0-9a-fA-F][0-9a-fA-F]$' /proc/cpuinfo
+ grep -q '^Revision\s*:\s*[ 123][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]0[0-36][0-9a-fA-F]$' /proc/cpuinfo
+ return 1
+ is_cmone
+ [[ '' == \c\m\1 ]]
+ grep -q '^Revision\s*:\s*[ 123][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]06[0-9a-fA-F]$' /proc/cpuinfo
+ return 1
+ is_pizero
+ [[ '' == \p\i\0 ]]
+ grep -q '^Revision\s*:\s*[ 123][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]09[0-9a-fA-F]$' /proc/cpuinfo
+ return 1
+ is_pizerow
+ [[ '' == \p\i\0\w ]]
+ grep -q '^Revision\s*:\s*[ 123][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]0[cC][0-9a-fA-F]$' /proc/cpuinfo
+ return 1
+ openhab_is_running
+ openhab_is_installed
+ openhab2_is_installed
++ dpkg -s openhab2
++ grep Status
++ cut '-d ' -f2
+ [[ install == \i\n\s\t\a\l\l ]]
+ return 0
+ return 0
++ systemctl is-active openhab2
+ [[ active == \a\c\t\i\v\e ]]
+ return 0
+ cond_redirect systemctl stop openhab2.service
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ systemctl stop openhab2.service \033[39;49;00m'

$ systemctl stop openhab2.service 
+ systemctl stop openhab2.service
+ return 0
++ timestamp
++ date +%F_%T_%Z
+ echo -n '2020-12-14_22:55:50_CET [openHABian] Installing ZRAM... '
2020-12-14_22:55:50_CET [openHABian] Installing ZRAM... + cond_redirect init_zram_mounts install
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ init_zram_mounts install \033[39;49;00m'

$ init_zram_mounts install 
+ init_zram_mounts install
+ is_arm
+ is_armv6l
+ [[ '' == \a\r\m\v\6\l ]]
+ case "$(uname -m)" in
++ uname -m
+ return 1
+ is_armv7l
+ [[ '' == \a\r\m\v\7\l ]]
+ case "$(uname -m)" in
++ uname -m
+ return 0
+ return 0
+ local disklistFileAWS=/etc/amanda/openhab-aws/disklist
+ local disklistFileDir=/etc/amanda/openhab-dir/disklist
+ local 'introText=You are about to activate the ZRAM feature.\nBe aware you do this at your own risk of data loss.\nPlease check out the "ZRAM status" thread at https://community.openhab.org/t/zram-status/80996 before proceeding.'
+ local 'lowMemText=Your system has less than 1 GB of RAM. It is definitely NOT recommended to run ZRAM (AND openHAB) on your box. If you proceed now you will do so at your own risk!'
+ local zramInstallLocation=/opt/zram
+ local storageDir=/storage
+ [[ install == \i\n\s\t\a\l\l ]]
+ [[ -f /etc/ztab ]]
+ [[ -n '' ]]
+ dpkg -s make libattr1-dev
++ timestamp
++ date +%F_%T_%Z
+ echo -n '2020-12-14_22:55:50_CET [openHABian] Installing ZRAM required packages (make, libattr1-dev)... '
2020-12-14_22:55:50_CET [openHABian] Installing ZRAM required packages (make, libattr1-dev)... + cond_redirect apt-get install --yes make libattr1-dev
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ apt-get install --yes make libattr1-dev \033[39;49;00m'

$ apt-get install --yes make libattr1-dev 
+ apt-get install --yes make libattr1-dev
Reading package lists...
Building dependency tree...
Reading state information...
make is already the newest version (4.2.1-1.2).
make set to manually installed.
The following packages were automatically installed and are no longer required:
  gyp javascript-common libbrotli1 libc-ares2 libjs-inherits
  libjs-is-typedarray libssl-dev libuv1 libuv1-dev node-abbrev node-ajv
  node-ansi node-ansi-align node-ansi-regex node-ansi-styles node-ansistyles
  node-aproba node-archy node-are-we-there-yet node-asn1 node-assert-plus
  node-asynckit node-aws-sign2 node-aws4 node-balanced-match node-bcrypt-pbkdf
  node-bluebird node-boxen node-brace-expansion node-builtin-modules
  node-builtins node-cacache node-call-limit node-camelcase node-caseless
  node-chalk node-chownr node-cli-boxes node-cliui node-clone node-co
  node-color-convert node-color-name node-combined-stream node-concat-map
  node-concat-stream node-config-chain node-console-control-strings
  node-copy-concurrently node-core-util-is node-cross-spawn node-cyclist
  node-dashdash node-decamelize node-decompress-response node-deep-extend
  node-defaults node-delayed-stream node-delegates node-detect-indent
  node-detect-newline node-duplexer3 node-duplexify node-ecc-jsbn node-editor
  node-encoding node-end-of-stream node-errno node-escape-string-regexp
  node-execa node-extend node-extsprintf node-find-up node-flush-write-stream
  node-forever-agent node-form-data node-from2 node-fs-vacuum
  node-fs-write-stream-atomic node-fs.realpath node-gauge node-get-caller-file
  node-get-stream node-getpass node-glob node-got node-graceful-fs
  node-har-schema node-har-validator node-has-flag node-has-symbol-support-x
  node-has-to-string-tag-x node-has-unicode node-hosted-git-info
  node-http-signature node-iconv-lite node-iferr node-import-lazy
  node-imurmurhash node-inflight node-inherits node-ini node-invert-kv
  node-is-builtin-module node-is-npm node-is-object node-is-plain-obj
  node-is-retry-allowed node-is-stream node-is-typedarray node-isarray
  node-isexe node-isstream node-isurl node-jsbn node-json-parse-better-errors
  node-json-schema node-json-stable-stringify node-json-stringify-safe
  node-jsonify node-jsonparse node-jsonstream node-jsprim node-latest-version
  node-lazy-property node-lcid node-libnpx node-locate-path node-lockfile
  node-lowercase-keys node-lru-cache node-mem node-mime-types node-mimic-fn
  node-mimic-response node-minimatch node-minimist node-mississippi
  node-mkdirp node-move-concurrently node-mute-stream node-node-uuid node-nopt
  node-normalize-package-data node-npm-package-arg node-npm-run-path
  node-npmlog node-oauth-sign node-object-assign node-once node-opener
  node-os-locale node-osenv node-p-cancelable node-p-finally node-p-limit
  node-p-locate node-p-timeout node-package-json node-parallel-transform
  node-path-exists node-path-is-absolute node-path-is-inside
  node-performance-now node-prepend-http node-process-nextick-args
  node-promise-inflight node-promzard node-proto-list node-prr node-pump
  node-pumpify node-punycode node-qs node-qw node-rc node-read
  node-read-package-json node-readable-stream node-registry-auth-token
  node-registry-url node-request node-require-directory
  node-require-main-filename node-resolve-from node-retry node-rimraf
  node-run-queue node-safe-buffer node-semver node-semver-diff
  node-set-blocking node-sha node-shebang-command node-shebang-regex
  node-signal-exit node-slash node-slide node-sorted-object node-spdx-correct
  node-spdx-expression-parse node-spdx-license-ids node-sshpk node-ssri
  node-stream-each node-stream-iterate node-stream-shift node-string-decoder
  node-string-width node-strip-ansi node-strip-eof node-strip-json-comments
  node-supports-color node-tar node-term-size node-text-table node-through
  node-through2 node-timed-out node-tough-cookie node-tunnel-agent
  node-tweetnacl node-typedarray node-uid-number node-unique-filename
  node-unpipe node-url-parse-lax node-url-to-options node-util-deprecate
  node-uuid node-validate-npm-package-license node-validate-npm-package-name
  node-verror node-wcwidth.js node-which node-which-module node-wide-align
  node-widest-line node-wrap-ansi node-wrappy node-write-file-atomic
  node-xdg-basedir node-xtend node-y18n node-yallist node-yargs
  node-yargs-parser nodejs-doc python-pkg-resources triggerhappy
Use 'apt autoremove' to remove them.
The following NEW packages will be installed:
  libattr1-dev
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/33.8 kB of archives.
After this operation, 79.9 kB of additional disk space will be used.
Selecting previously unselected package libattr1-dev:armhf.
(Reading database ... 56100 files and directories currently installed.)
Preparing to unpack .../libattr1-dev_1%3a2.4.48-4_armhf.deb ...
Unpacking libattr1-dev:armhf (1:2.4.48-4) ...
Setting up libattr1-dev:armhf (1:2.4.48-4) ...
Processing triggers for man-db (2.8.5-2) ...
Updating FireMotD available updates count ... 
+ return 0
+ echo OK
OK
+ install_zram_code /opt/zram
+ local overlayfsGit=https://github.com/kmxz/overlayfs-tools
+ local zramGit=https://github.com/mstormi/openhabian-zram
++ timestamp
++ date +%F_%T_%Z
+ echo -n '2020-12-14_22:55:57_CET [openHABian] Installing ZRAM code... '
2020-12-14_22:55:57_CET [openHABian] Installing ZRAM code... + cond_redirect mkdir -p /opt/zram
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ mkdir -p /opt/zram \033[39;49;00m'

$ mkdir -p /opt/zram 
+ mkdir -p /opt/zram
+ return 0
+ [[ -d /opt/zram/overlayfs-tools ]]
+ cond_redirect update_git_repo /opt/zram/overlayfs-tools master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ update_git_repo /opt/zram/overlayfs-tools master \033[39;49;00m'

$ update_git_repo /opt/zram/overlayfs-tools master 
+ update_git_repo /opt/zram/overlayfs-tools master
+ local branch
+ local path
+ branch=master
+ path=/opt/zram/overlayfs-tools
++ timestamp
++ date +%F_%T_%Z
++ basename /opt/zram/overlayfs-tools
+ echo -n '2020-12-14_22:55:57_CET [openHABian] Updating overlayfs-tools, master branch from git... '
2020-12-14_22:55:57_CET [openHABian] Updating overlayfs-tools, master branch from git... + cond_redirect git -C /opt/zram/overlayfs-tools fetch origin
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/overlayfs-tools fetch origin \033[39;49;00m'

$ git -C /opt/zram/overlayfs-tools fetch origin 
+ git -C /opt/zram/overlayfs-tools fetch origin
+ return 0
+ cond_redirect git -C /opt/zram/overlayfs-tools fetch --tags --force --prune
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/overlayfs-tools fetch --tags --force --prune \033[39;49;00m'

$ git -C /opt/zram/overlayfs-tools fetch --tags --force --prune 
+ git -C /opt/zram/overlayfs-tools fetch --tags --force --prune
+ return 0
+ cond_redirect git -C /opt/zram/overlayfs-tools reset --hard origin/master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/overlayfs-tools reset --hard origin/master \033[39;49;00m'

$ git -C /opt/zram/overlayfs-tools reset --hard origin/master 
+ git -C /opt/zram/overlayfs-tools reset --hard origin/master
HEAD is now at 77bf3f7 Merge pull request #11 from amir73il/deref-cmd
+ return 0
+ cond_redirect git -C /opt/zram/overlayfs-tools clean --force -x -d
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/overlayfs-tools clean --force -x -d \033[39;49;00m'

$ git -C /opt/zram/overlayfs-tools clean --force -x -d 
+ git -C /opt/zram/overlayfs-tools clean --force -x -d
+ return 0
+ cond_redirect git -C /opt/zram/overlayfs-tools checkout master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/overlayfs-tools checkout master \033[39;49;00m'

$ git -C /opt/zram/overlayfs-tools checkout master 
+ git -C /opt/zram/overlayfs-tools checkout master
Already on 'master'
Your branch is up to date with 'origin/master'.
+ return 0
+ echo OK
OK
+ return 0
+ [[ -d /opt/zram/openhabian-zram ]]
+ cond_redirect update_git_repo /opt/zram/openhabian-zram master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ update_git_repo /opt/zram/openhabian-zram master \033[39;49;00m'

$ update_git_repo /opt/zram/openhabian-zram master 
+ update_git_repo /opt/zram/openhabian-zram master
+ local branch
+ local path
+ branch=master
+ path=/opt/zram/openhabian-zram
++ timestamp
++ date +%F_%T_%Z
++ basename /opt/zram/openhabian-zram
+ echo -n '2020-12-14_22:55:59_CET [openHABian] Updating openhabian-zram, master branch from git... '
2020-12-14_22:55:59_CET [openHABian] Updating openhabian-zram, master branch from git... + cond_redirect git -C /opt/zram/openhabian-zram fetch origin
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram fetch origin \033[39;49;00m'

$ git -C /opt/zram/openhabian-zram fetch origin 
+ git -C /opt/zram/openhabian-zram fetch origin
From https://github.com/mstormi/openhabian-zram
   2f51a14..5f2ffc8  master     -> origin/master
 * [new branch]      openHAB3   -> origin/openHAB3
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram fetch --tags --force --prune
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram fetch --tags --force --prune \033[39;49;00m'

$ git -C /opt/zram/openhabian-zram fetch --tags --force --prune 
+ git -C /opt/zram/openhabian-zram fetch --tags --force --prune
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram reset --hard origin/master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram reset --hard origin/master \033[39;49;00m'

$ git -C /opt/zram/openhabian-zram reset --hard origin/master 
+ git -C /opt/zram/openhabian-zram reset --hard origin/master
HEAD is now at 5f2ffc8 Remove zramsync service (#7)
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram clean --force -x -d
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram clean --force -x -d \033[39;49;00m'

$ git -C /opt/zram/openhabian-zram clean --force -x -d 
+ git -C /opt/zram/openhabian-zram clean --force -x -d
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram checkout master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram checkout master \033[39;49;00m'

$ git -C /opt/zram/openhabian-zram checkout master 
+ git -C /opt/zram/openhabian-zram checkout master
Already on 'master'
Your branch is up to date with 'origin/master'.
+ return 0
+ echo OK
OK
+ return 0
+ echo OK
OK
++ timestamp
++ date +%F_%T_%Z
+ echo -n '2020-12-14_22:56:01_CET [openHABian] Setting up OverlayFS... '
2020-12-14_22:56:01_CET [openHABian] Setting up OverlayFS... + cond_redirect make --always-make --directory=/opt/zram/overlayfs-tools
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ make --always-make --directory=/opt/zram/overlayfs-tools \033[39;49;00m'

$ make --always-make --directory=/opt/zram/overlayfs-tools 
+ make --always-make --directory=/opt/zram/overlayfs-tools
make: Entering directory '/opt/zram/overlayfs-tools'
gcc -Wall -std=c99 -c main.c
gcc -Wall -std=c99 -c logic.c
gcc -Wall -std=c99 -c sh.c
gcc -lm main.o logic.o sh.o -o overlay
make: Leaving directory '/opt/zram/overlayfs-tools'
+ return 0
+ cond_redirect mkdir -p /usr/local/lib/zram-config/
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ mkdir -p /usr/local/lib/zram-config/ \033[39;49;00m'

$ mkdir -p /usr/local/lib/zram-config/ 
+ mkdir -p /usr/local/lib/zram-config/
+ return 0
+ cond_redirect install -m 755 /opt/zram/overlayfs-tools/overlay /usr/local/lib/zram-config/overlay
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ install -m 755 /opt/zram/overlayfs-tools/overlay /usr/local/lib/zram-config/overlay \033[39;49;00m'

$ install -m 755 /opt/zram/overlayfs-tools/overlay /usr/local/lib/zram-config/overlay 
+ install -m 755 /opt/zram/overlayfs-tools/overlay /usr/local/lib/zram-config/overlay
+ return 0
+ echo OK
OK
++ timestamp
++ date +%F_%T_%Z
+ echo -n '2020-12-14_22:56:02_CET [openHABian] Setting up ZRAM... '
2020-12-14_22:56:02_CET [openHABian] Setting up ZRAM... + cond_redirect install -m 755 /opt/zram/openhabian-zram/zram-config /usr/local/sbin
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ install -m 755 /opt/zram/openhabian-zram/zram-config /usr/local/sbin \033[39;49;00m'

$ install -m 755 /opt/zram/openhabian-zram/zram-config /usr/local/sbin 
+ install -m 755 /opt/zram/openhabian-zram/zram-config /usr/local/sbin
+ return 0
+ cond_redirect install -m 755 /opt/zram/openhabian-zram/zramsync /usr/local/sbin
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ install -m 755 /opt/zram/openhabian-zram/zramsync /usr/local/sbin \033[39;49;00m'

$ install -m 755 /opt/zram/openhabian-zram/zramsync /usr/local/sbin 
+ install -m 755 /opt/zram/openhabian-zram/zramsync /usr/local/sbin
install: cannot stat '/opt/zram/openhabian-zram/zramsync': No such file or directory
+ return 1
+ echo 'FAILED (zramsync)'
FAILED (zramsync)
+ return 1
+ return 1
+ echo FAILED
FAILED
+ return 1
+ exim_setup
mstormi commented 3 years ago

Ethan this was changed in #1293 to point to your new repo, any idea why it's the old one again ?

ecdye commented 3 years ago

No idea, as far as I can tell on master it is still to my repo. Perhaps he is not changing branches correctly

mstormi commented 3 years ago

@PatrickGlatz pls check your first-boot.log which branch was cloned Have you been offline by the time you installed ?

PatrickGlatz commented 3 years ago

@mstormi these are the respective excerpts of my /boot/first-boot.log. Looks for me as if it has used the master branch?! You can see it also in my previous post above.

In the meantime: Thanks to both of you for looking into. Appreciate it

Section reading the openhabian.conf file, at the very top of /boot/first-boot.log

OK
+ load_create_config
+ local 'questionText=\nWelcome to openHABian!\n\nPlease provide the name of your Linux user i.e. the account you normally log in with.\n\nTypical user names are '\''pi'\'' or '\''ubuntu'\''.'
+ local input
+ [[ -f /etc/openhabian.conf ]]
++ timestamp 
++ date +%F_%T_%Z
+ echo -n '2020-12-14_21:47:24_GMT [openHABian] Loading configuration file '\''/etc/openhabian.conf'\''... '
2020-12-14_21:47:24_GMT [openHABian] Loading configuration file '/etc/openhabian.conf'... ++ getent group openhabadm
+ [[ ! -n openhabadm:x:1000: ]] 
+ id -u openhabadm
+ source /etc/openhabian.conf
++ hostname=openHAB
++ username=openhabadm
++ userpw=abcd
++ timezone=Europe/Berlin
++ locales='en_US.UTF-8 de_DE.UTF-8'
++ system_default_locale=en_US.UTF-8
++ wifi_ssid=
++ wifi_psk=
++ wifi_country=
++ ipv6=enable
++ repositoryurl=https://github.com/openhab/openhabian
++ clonebranch=master
++ debugmode=maximum
++ cached_java_opt=Zulu11-32
++ java_opt=Zulu11-32
++ zraminstall=enable
++ hotspot=enable
+ echo OK
OK

Example that master branch is used

^[[90;01m$ update_git_repo /opt/FireMotD master ^[[39;49;00m
+ update_git_repo /opt/FireMotD master
+ local branch
+ local path
+ branch=master
+ path=/opt/FireMotD
++ timestamp
++ date +%F_%T_%Z
++ basename /opt/FireMotD
+ echo -n '2020-12-14_22:49:26_CET [openHABian] Updating FireMotD, master branch from git... '
2020-12-14_22:49:26_CET [openHABian] Updating FireMotD, master branch from git... + cond_redirect git -C /opt/FireMotD fetch origin
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/FireMotD fetch origin \033[39;49;00m'

Section for zram installation, also refering to master

^[[90;01m$ update_git_repo /opt/zram/openhabian-zram master ^[[39;49;00m
+ update_git_repo /opt/zram/openhabian-zram master
+ local branch
+ local path
+ branch=master
+ path=/opt/zram/openhabian-zram
++ timestamp
++ date +%F_%T_%Z
++ basename /opt/zram/openhabian-zram
+ echo -n '2020-12-14_22:55:59_CET [openHABian] Updating openhabian-zram, master branch from git... '
2020-12-14_22:55:59_CET [openHABian] Updating openhabian-zram, master branch from git... + cond_redirect git -C /opt/zram/openhabian-zram fetch origin
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram fetch origin \033[39;49;00m'

^[[90;01m$ git -C /opt/zram/openhabian-zram fetch origin ^[[39;49;00m
+ git -C /opt/zram/openhabian-zram fetch origin
From https://github.com/mstormi/openhabian-zram
   2f51a14..5f2ffc8  master     -> origin/master
 * [new branch]      openHAB3   -> origin/openHAB3
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram fetch --tags --force --prune
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram fetch --tags --force --prune \033[39;49;00m'

^[[90;01m$ git -C /opt/zram/openhabian-zram fetch --tags --force --prune ^[[39;49;00m
+ git -C /opt/zram/openhabian-zram fetch --tags --force --prune
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram reset --hard origin/master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram reset --hard origin/master \033[39;49;00m'

^[[90;01m$ git -C /opt/zram/openhabian-zram reset --hard origin/master ^[[39;49;00m
+ git -C /opt/zram/openhabian-zram reset --hard origin/master
HEAD is now at 5f2ffc8 Remove zramsync service (#7)
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram clean --force -x -d
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram clean --force -x -d \033[39;49;00m'

^[[90;01m$ git -C /opt/zram/openhabian-zram clean --force -x -d ^[[39;49;00m
+ git -C /opt/zram/openhabian-zram clean --force -x -d
+ return 0
+ cond_redirect git -C /opt/zram/openhabian-zram checkout master
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ git -C /opt/zram/openhabian-zram checkout master \033[39;49;00m'

^[[90;01m$ git -C /opt/zram/openhabian-zram checkout master ^[[39;49;00m
+ git -C /opt/zram/openhabian-zram checkout master
Already on 'master'
Your branch is up to date with 'origin/master'.
+ return 0
+ echo OK
OK
+ return 0
+ echo OK
OK

This one is weird. On java Zulu11 installation, master is set to \s\t\a\b\l\e ( [[ master == \s\t\a\b\l\e ]] )

OK
+ return 0
+ [[ master == \s\t\a\b\l\e ]]
+ java_zulu_fetch Zulu11-32
+ local downloadLink
+ local jdkInstallLocation
+ local link
+ jdkInstallLocation=/opt/jdk
+ link='https://api.azul.com/zulu/download/community/v1.0/bundles/latest/binary/?os=linux&ext=tar.gz&javafx=false'
+ [[ Zulu11-32 == \Z\u\l\u\8\-\3\2 ]]
+ [[ Zulu11-32 == \Z\u\l\u\1\1\-\3\2 ]]
++ timestamp
++ date +%F_%T_%Z
+ echo -n '2020-12-14_22:49:53_CET [openHABian] Downloading Java Zulu 11 32-Bit OpenJDK... '
2020-12-14_22:49:53_CET [openHABian] Downloading Java Zulu 11 32-Bit OpenJDK... + is_arm
+ is_armv6l
+ [[ '' == \a\r\m\v\6\l ]]
+ case "$(uname -m)" in
++ uname -m
+ return 1
+ is_armv7l
+ [[ '' == \a\r\m\v\7\l ]]
+ case "$(uname -m)" in
++ uname -m
+ return 0
+ return 0
++ curl 'https://api.azul.com/zulu/download/community/v1.0/bundles/latest/binary/?os=linux&ext=tar.gz&javafx=false&jdk_version=11&arch=arm&hw_bitness=32&abi=hard_float' -s -L -I -o /dev/null -w '%{url_effective}'
+ downloadLink=https://cdn.azul.com/zulu-embedded/bin/zulu11.43.88-ca-jdk11.0.9-linux_aarch32hf.tar.gz
+ [[ -z https://cdn.azul.com/zulu-embedded/bin/zulu11.43.88-ca-jdk11.0.9-linux_aarch32hf.tar.gz ]]
+ mkdir -p /opt/jdk
+ rm -rf /opt/jdk/zulu8.50.0.259-ca-jdk8.0.272-linux_aarch32hf
+ cond_redirect wget -O /opt/jdk/zulu.tar.gz https://cdn.azul.com/zulu-embedded/bin/zulu11.43.88-ca-jdk11.0.9-linux_aarch32hf.tar.gz
+ [[ -n '' ]]
+ echo -e '\n\033[90;01m$ wget -O /opt/jdk/zulu.tar.gz https://cdn.azul.com/zulu-embedded/bin/zulu11.43.88-ca-jdk11.0.9-linux_aarch32hf.tar.gz \033[39;49;00m'
mstormi commented 3 years ago

please upload the full first-boot.log. The complete file, no interpretation please.

PatrickGlatz commented 3 years ago

There you go https://raw.githubusercontent.com/PatrickGlatz/debugfiles/master/first-boot.log

mstormi commented 3 years ago

No idea, as far as I can tell on master it is still to my repo. Perhaps he is not changing branches correctly

As I don't spot anything in his log it's likely because the executed code is taken from the offline copy of /opt/openhabian. Not sure why, you know that part of the code better than I do. So we would need to either put your changes into my zram repo, too, or build another image - right ?

mstormi commented 3 years ago

@PatrickGlatz please flash the image from https://github.com/openhab/openhabian/actions/runs/423867443 and try again with clonebranch=master

ecdye commented 3 years ago

Ahh, probably because we cached your repo in the image, so yes a new build would be needed.

PatrickGlatz commented 3 years ago

@mstormi did that and worked perfectly. Now the upgrade to OH3.0.0. RC1 is working perfectly fine including #1299 and also zram was installed proper. But i have 3 remarks/questions:

  1. ZRAM duration The shutdown as well as the reboot is now taking much longer (something like 6-7min after the system is reachable again). Is this related to usage of ZRAM and normal or should i have a look into this again?
  2. ZRAM status Looking at the systemctl status of zram-config.service it mentions 'active (exited)'. Is this the status which is intended or is it loosing some link
[00:17:03] openhabadm@openHAB:~$ sudo systemctl status zram-config.service 
● zram-config.service - zram-config
   Loaded: loaded (/etc/systemd/system/zram-config.service; enabled; vendor preset: enabled)
   Active: active (exited) since Wed 2020-12-16 00:05:15 CET; 12min ago
 Main PID: 314 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 4915)
   CGroup: /system.slice/zram-config.service

Dec 16 00:05:13 openHAB zram-config[314]: + [[ active == \a\c\t\i\v\e ]]
Dec 16 00:05:13 openHAB zram-config[314]: + export rsyslogActive=true
Dec 16 00:05:13 openHAB zram-config[314]: + rsyslogActive=true
Dec 16 00:05:13 openHAB zram-config[314]: + systemctl stop syslog.socket rsyslog.service
Dec 16 00:05:13 openHAB zram-config[314]: ++ systemctl is-active systemd-journald.service
Dec 16 00:05:13 openHAB zram-config[314]: + [[ active == \a\c\t\i\v\e ]]
Dec 16 00:05:13 openHAB zram-config[314]: + export journaldActive=true
Dec 16 00:05:13 openHAB zram-config[314]: + journaldActive=true
Dec 16 00:05:13 openHAB zram-config[314]: + systemctl stop systemd-journald.socket systemd-journald-audit.socket systemd-journald-dev-log.socket systemd-journald.service
Dec 16 00:05:15 openHAB systemd[1]: Started zram-config.
  1. mosquitto I had issues with mosquitto. Directly after the OH3 installation i installed mosquitto from openhabian-config. Installation was fine (without specifying mosquitto password). But the service did not start as it had no access to /var/log/mosquitto. Finally found your fix at https://community.openhab.org/t/openhabian-mosquitto-mqtt-failed-to-start/102951/41 which worked perfectly fine but thought you would be interested to know, that i had the issue with a fresh new install as well.
mstormi commented 3 years ago

1 & 2 are normal behavior. 3) is unrelated so open another issue. But I just installed mosquitto on a virgin box and it properly created the log dir and started.

PatrickGlatz commented 3 years ago

@mstormi @ecdye Thanks for all the support to both of you 👍