Gapadriel: Unterschied zwischen den Versionen
(→Update) |
(→Update: des rätsels lösung stand weiter unten im artikel) |
||
Zeile 65: | Zeile 65: | ||
sudo git rebase -i $version | sudo git rebase -i $version | ||
sudo bin/installDeps.sh # und dann warten. | sudo bin/installDeps.sh # und dann warten. | ||
− | # wd | + | # falls wd failt: (siehe https://github.com/admc/wd/issues/483#issuecomment-410725658 ) |
− | sudo npm install --unsafe-perm wd | + | # sudo npm install --unsafe-perm wd |
− | sudo bin/installDeps.sh # und dann warten. | + | # sudo bin/installDeps.sh # und dann warten. |
+ | sudo chmod go-w . | ||
+ | sudo chown root:etherpad . | ||
sudo chmod g+rw -R var/ # CSS minified cache muss schreibbar sein | sudo chmod g+rw -R var/ # CSS minified cache muss schreibbar sein | ||
sudo chown etherpad:etherpad -R var/ | sudo chown etherpad:etherpad -R var/ | ||
Zeile 74: | Zeile 76: | ||
sudo chown root:etherpad settings.json | sudo chown root:etherpad settings.json | ||
− | # | + | # damit etherpad Plugins initialisieren und ep_$module/.ep_initialized anlegen kann -.- |
− | sudo | + | sudo chmod g+w node_modules/ep_* |
sudo systemctl start etherpad.service | sudo systemctl start etherpad.service | ||
+ | sudo chmod g-w node_modules/ep_* | ||
==== Plugins installieren ==== | ==== Plugins installieren ==== |
Version vom 25. August 2018, 12:21 Uhr
Gapadriel | |
---|---|
Beschreibung: | VM für Etherpad |
Ort: | endor |
Status: | working (Was heißt das?) |
Kontakt: | Kasalehlia, Daniel Bohrer |
Links: | https://pad.stratum0.org |
Inhaltsverzeichnis
SSH-Keys
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 $ for i in /etc/ssh/ssh_host_*.pub; do ssh-keygen -lf $i; done 1024 59:75:2b:98:88:d7:a0:ed:62:54:c4:78:07:2b:0c:3f /etc/ssh/ssh_host_dsa_key.pub (DSA) 256 25:95:d4:0b:eb:67:fc:7e:b1:4a:eb:59:dc:f1:0a:b0 /etc/ssh/ssh_host_ecdsa_key.pub (ECDSA) 256 80:60:fb:21:d3:e1:2d:12:53:83:e8:bc:cb:9a:2b:17 /etc/ssh/ssh_host_ed25519_key.pub (ED25519) 2048 4d:e6:78:d4:9c:21:c4:da:ae:7f:b0:ba:60:b6:96:51 /etc/ssh/ssh_host_rsa_key.pub (RSA) -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAEBCgAGBQJVXhO2AAoJEMOZylE6vjlS+Q0H/3uXhm9edAb14iLA4KVm54Cn 7raApgCyAxX7OdDffRr41N9tT2BJobmYLFx9tla7EekE2lijCSF4YGDDXdamH2nT TxCSIl9711W8BZA+zVg/u7UKcL20HenqzQRW2VSz+u7580uIQ8oJ8SWTtfWbcNdj YswKrESRxd6NrIbEHTpzhYe2yQ/DTlRwLituN1F5VwMon5xjQHRHllBH55re5oTo NgXxJ1LcpbkqlvJ7fy1qnx22gtAqt8Z7p8ZaL7G9Bh/gW6v6WV0RqG7+1uQIbASR /MSoOVKGnxrFUgfOCRxv5dI/f14KcY6Z78eZ/AY945zRLa+fqAW7BtL6bBsgQy0= =nmaB -----END PGP SIGNATURE-----
Doku
- Debian jessie, systemd
- 1 GB RAM mit Option bis 2 GB
- 8 GB Platte
- 4 CPU-Kerne
- Netzwerk intern, per DHCP
- HTTP kommt über gandolf als (SSL-)Proxy
Node.js / npm
Debian hat kein npm mehr. Etherpad braucht npm. (Keine schöne, aber eine) Lösung: [1]
sudo apt install apt-transport-https NODEREPO="node_10.x" DISTRO=$(lsb_release -c -s) echo "deb-src https://deb.nodesource.com/${NODEREPO} ${DISTRO} main" | sudo tee -a /etc/apt/sources.list.d/nodesource.list wget https://deb.nodesource.com/gpgkey/nodesource.gpg.key sudo apt-key add nodesource.gpg.key sudo apt update sudo apt install nodejs # bringt npm mit
Etherpad
Etherpad-Lite liegt als Git-Repo in /var/lib/etherpad/etherpad-lite, wird aus /etc/systemd/system/etherpad.service als User etherpad gestartet und loggt nach /var/log/syslog.
Einige Änderungen sind als Commits im Branch deploy eingepflegt. Diese beim Update bitte rebasen.
MySQL als Datenbank, siehe /var/lib/etherpad/etherpad-lite/settings.json.
Etherpad-Updates etc. bitte per sudo, nicht sudo -u etherpad. Aus Sicherheitsgründen soll der etherpad-Benutzer möglichst wenig irgendwohin schreiben können.
Update
cd /var/lib/etherpad/etherpad-lite sudo git fetch sudo systemctl stop etherpad.service sudo git rebase -i $version sudo bin/installDeps.sh # und dann warten. # falls wd failt: (siehe https://github.com/admc/wd/issues/483#issuecomment-410725658 ) # sudo npm install --unsafe-perm wd # sudo bin/installDeps.sh # und dann warten. sudo chmod go-w . sudo chown root:etherpad . sudo chmod g+rw -R var/ # CSS minified cache muss schreibbar sein sudo chown etherpad:etherpad -R var/ sudo chmod g+r -R settings.json # config muss lesbar sein sudo chown root:etherpad settings.json
# damit etherpad Plugins initialisieren und ep_$module/.ep_initialized anlegen kann -.- sudo chmod g+w node_modules/ep_*
sudo systemctl start etherpad.service sudo chmod g-w node_modules/ep_*
Plugins installieren
Admin-Login auf der Weboberfläche funktioniert zwar lesend, aber kann halt keine Packages installieren, weil der etherpad-User in node_modules/ nicht schreiben soll. Stattdessen:
cd /var/lib/etherpad/etherpad-lite sudo npm install ep_$plugin # damit etherpad beim restart eine node_modules/ep_$plugin/.ep-initialized anlegen kann: -.- sudo chown etherpad node_modules/ep_$plugin sudo systemctl restart etherpad.service sudo chown -R root:root node_modules/ep_$plugin
Sonstiges
- /var/lib/etherpad/etherpad-lite/var/ muss für die Gruppe etherpad schreibbar sein, dort werden beim Start des Dienstes die minifizierten CSS/JS-Files abgelegt.
Installierte Plugins
for module in \ ep_ether-o-meter \ ep_headings2 \ ep_infopanel \ ep_latexexport \ ep_markdown \ ep_pad_activity_nofication_in_title \ ep_ruler \ ep_scrollto \ ep_subscript \ ep_superscript \ ep_table_of_contents \ ep_mediawiki \ https://gitli.stratum0.org/rohieb/ep_hide_referrer/-/archive/feature/auto-redirect/ep_hide_referrer-feature-auto-redirect.tar.gz \ https://gitli.stratum0.org/stratum0/ep_stratum_faqlink/-/archive/master/ep_stratum_faqlink-master.tar.gz \ https://gitli.stratum0.org/kasalehlia/ep_stratum0_blogpreview/-/archive/master/ep_stratum0_blogpreview-master.tar.gz \ ; do sudo npm i $module done # Abhängigkeit von ep_headings, kann aber danach wieder gelöscht werden, ep_headings2 ist ausreichend: sudo rm -rf node_modules/ep_headings
Log
- Update auf etherpad-lite 1.6.5, deploy-Branch angelegt und font-size-Änderungen revertet --Daniel Bohrer 23:16, 11. Apr. 2018 (CEST)
- Update etherpad 1.6.1, ep_hide_referrer 0.0.13 + autoredirect --Daniel Bohrer 03:38, 21. Mär. 2017 (CET)
- Update ep_hide_referrer, fix URL detection: [2]
- Update auf Etherpad-Lite v1.5.7 --Daniel Bohrer 00:35, 29. Jan. 2016 (CET)
- Unicode-Issues behoben, die den Server abstürzen ließen: [3], [4] --Daniel Bohrer 00:34, 29. Jan. 2016 (CET)
- Update auf Debian 8.3 --Daniel Bohrer 22:27, 25. Jan. 2016 (CET)
- Restart=always in /etc/systemd/system/etherpad.service gesetzt, das stirbt gern mal mit errors. --Daniel Bohrer 04:24, 9. Sep. 2015 (CEST)
- Datenbankmigration vom alten Pad-Server erfolgreich. --Daniel Bohrer 03:58, 2. Aug. 2015 (CEST)
- unattended-upgrades eingerichtet, erstmal nur aus debian-security. siehe /etc/apt/apt.conf.d/02.periodic und /etc/cron.daily/apt für Doku --Daniel Bohrer 01:32, 23. Mai 2015 (CEST)
- Hardware: -CDROM, -Tablet, -3 USB Redirectors, -Sound, RAM auf 1024-2048 MB festgelegt. --Daniel Bohrer 00:09, 22. Mai 2015 (CEST)
- initial install: --Daniel Bohrer 23:48, 21. Mai 2015 (CEST)
- apt-get install npm curl nodejs-legacy (letzters für Symlink /usr/bin/node -> nodejs)
- überflüssige Pakete entfernt: eject, m4, nfs-common, rpcbind, laptop-detect, procmail, mutt, tasksel, [wi]{american,british}, ungenutze Libs und ungenutzte automatisch installierte Pakete
- pinentry-gtk2 -> pinentry-curses, vim-tiny -> vim-runtime
- git clone etherpad, checkout releases/1.5.6
- einmal sudo bin/run.sh, um Abhängigkeiten zu installieren
- chgrp etherpad, chmod g+rwxs /var/lib/etherpad/etherpad-lite/var/
- Plugins per npm installiert
- systemd-Unit-File für etherpad geschrieben und unter /etc/systemd/system abgelegt
- System aufgesetzt von shoragan, 21. Mai 2015 (CEST)