CollaboraOnline / online

Collabora Online is a collaborative online office suite based on LibreOffice technology. This is also the source for the Collabora Office apps for iOS and Android.
https://collaboraonline.com
Other
1.85k stars 702 forks source link

upgraded coolwsd on ubuntu 18.04 lts from 21.06 to 22.05 - doesn't start anymore (no docker) #5155

Closed redglobuli closed 2 years ago

redglobuli commented 2 years ago

Describe the bug Everything worked with 21.06, now i upgraded to 22.05 and coolwsd isn't responding on 9980 anymore.

The instance is running on OpenVZ VPS.

curl -k http://127.0.0.1:9980 times out

journalctl shows (i set logging to trace) a loop like this:

Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521830 +0200 [ forkit ] TRC  ppoll start, timeoutMicroS: 1000000 size 1| net/Socket.cpp:337
Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521816 +0200 [ forkit ] TRC  #13: setupPollFds getPollEvents: 0x1| net/Socket.hpp:859
Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521800 +0200 [ forkit ] TRC  cleanupChildren reaped 0 children to have 0 left: | kit/ForKit.cpp:325
Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521785 +0200 [ forkit ] TRC  cleanupChildren with 0 children| kit/ForKit.cpp:290
Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521769 +0200 [ forkit ] TRC  forkLibreOfficeKit limit: 0| kit/ForKit.cpp:436
Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521751 +0200 [ forkit ] TRC  #13: Revents: 0x0| net/Socket.hpp:1296
Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521733 +0200 [ forkit ] TRC  #13: Starting handling poll results of forkit at index 0 (of 1): 0| net/Socket.cpp:435
Aug 16 09:25:39  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:39.521647 +0200 [ forkit ] TRC  Poll completed with 0 live polls max (1000000us)(timedout)| net/Socket.cpp:356
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520755 +0200 [ forkit ] TRC  ppoll start, timeoutMicroS: 1000000 size 1| net/Socket.cpp:337
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520747 +0200 [ forkit ] TRC  #13: setupPollFds getPollEvents: 0x1| net/Socket.hpp:859
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520736 +0200 [ forkit ] TRC  cleanupChildren reaped 0 children to have 0 left: | kit/ForKit.cpp:325
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520724 +0200 [ forkit ] TRC  cleanupChildren with 0 children| kit/ForKit.cpp:290
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520714 +0200 [ forkit ] TRC  forkLibreOfficeKit limit: 0| kit/ForKit.cpp:436
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520701 +0200 [ forkit ] TRC  #13: Revents: 0x0| net/Socket.hpp:1296
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520688 +0200 [ forkit ] TRC  #13: Starting handling poll results of forkit at index 0 (of 1): 0| net/Socket.cpp:435
Aug 16 09:25:38  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:38.520621 +0200 [ forkit ] TRC  Poll completed with 0 live polls max (1000000us)(timedout)| net/Socket.cpp:356
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519740 +0200 [ forkit ] TRC  ppoll start, timeoutMicroS: 1000000 size 1| net/Socket.cpp:337
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519732 +0200 [ forkit ] TRC  #13: setupPollFds getPollEvents: 0x1| net/Socket.hpp:859
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519721 +0200 [ forkit ] TRC  cleanupChildren reaped 0 children to have 0 left: | kit/ForKit.cpp:325
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519709 +0200 [ forkit ] TRC  cleanupChildren with 0 children| kit/ForKit.cpp:290
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519697 +0200 [ forkit ] TRC  forkLibreOfficeKit limit: 0| kit/ForKit.cpp:436
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519685 +0200 [ forkit ] TRC  #13: Revents: 0x0| net/Socket.hpp:1296
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519672 +0200 [ forkit ] TRC  #13: Starting handling poll results of forkit at index 0 (of 1): 0| net/Socket.cpp:435
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:37.519610 +0200 [ forkit ] TRC  Poll completed with 0 live polls max (1000000us)(timedout)| net/Socket.cpp:356
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518767 +0200 [ forkit ] TRC  ppoll start, timeoutMicroS: 1000000 size 1| net/Socket.cpp:337
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518758 +0200 [ forkit ] TRC  #13: setupPollFds getPollEvents: 0x1| net/Socket.hpp:859
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518746 +0200 [ forkit ] TRC  cleanupChildren reaped 0 children to have 0 left: | kit/ForKit.cpp:325
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518734 +0200 [ forkit ] TRC  cleanupChildren with 0 children| kit/ForKit.cpp:290
Aug 16 09:25:37  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518725 +0200 [ forkit ] TRC  forkLibreOfficeKit limit: 0| kit/ForKit.cpp:436
Aug 16 09:25:36  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518711 +0200 [ forkit ] TRC  #13: Revents: 0x0| net/Socket.hpp:1296
Aug 16 09:25:36  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518698 +0200 [ forkit ] TRC  #13: Starting handling poll results of forkit at index 0 (of 1): 0| net/Socket.cpp:435
Aug 16 09:25:36  coolwsd[6975]: frk-06983-06983 2022-08-16 09:25:36.518627 +0200 [ forkit ] TRC  Poll completed with 0 live polls max (1000000us)(timedout)| net/Socket.cpp:356
Aug 16 09:25:35  coolwsd[6975]: wsd-06975-06982 2022-08-16 09:25:35.518257 +0020 [ prisoner_poll ] TRC  ppoll start, timeoutMicroS: 5000000 size 2| net/Socket.cpp:337

only problem i see may be this:

Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.529468 +0200 [ forkit ] DBG  Removing [/opt/cool/child-roots/Z2w60fwA3PxMoVyn] only.| common/FileUtil.cpp:252
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.529381 +0200 [ forkit ] TRC  Unmounted [/opt/cool/child-roots/Z2w60fwA3PxMoVyn] successfully.| common/JailUtil.cpp:70
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.521529 +0200 [ forkit ] TRC  Executing coolmount command: /usr/bin/coolmount -u  /opt/cool/child-roots/Z2w60fwA3PxMoVyn| common/JailUtil.cpp:36
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.521506 +0200 [ forkit ] DBG  Unmounting [/opt/cool/child-roots/Z2w60fwA3PxMoVyn]| common/JailUtil.cpp:67
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.521412 +0200 [ forkit ] TRC  Unmounted [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/lo] successfully.| common/JailUtil.cpp:70
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.510934 +0200 [ forkit ] TRC  Executing coolmount command: /usr/bin/coolmount -u  /opt/cool/child-roots/Z2w60fwA3PxMoVyn/lo| common/JailUtil.cpp:36
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.510901 +0200 [ forkit ] DBG  Unmounting [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/lo]| common/JailUtil.cpp:67
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.510804 +0200 [ forkit ] TRC  Unmounted [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp] successfully.| common/JailUtil.cpp:70
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498973 +0200 [ forkit ] TRC  Executing coolmount command: /usr/bin/coolmount -u  /opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp| common/JailUtil.cpp:36
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498951 +0200 [ forkit ] DBG  Unmounting [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp]| common/JailUtil.cpp:67
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498930 +0200 [ forkit ] DBG  Removing [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp] recursively.| common/FileUtil.cpp:252
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498911 +0200 [ forkit ] INF  Removing jail [/opt/cool/child-roots/Z2w60fwA3PxMoVyn]| common/JailUtil.cpp:126
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498896 +0200 [ forkit ] TRC  cleanupChildren reaped 1 children to have 0 left: | kit/ForKit.cpp:325
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498881 +0200 [ forkit ] WRN  No live Kits exist, and we are not terminating yet.| kit/ForKit.cpp:304
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498864 +0200 [ forkit ] INF  Child 7727 has exited, will remove its jail [/opt/cool/child-roots/Z2w60fwA3PxMoVyn].| kit/ForKit.cpp:298
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498837 +0200 [ forkit ] TRC  cleanupChildren with 1 child| kit/ForKit.cpp:290
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498823 +0200 [ forkit ] TRC  forkLibreOfficeKit limit: 0| kit/ForKit.cpp:436
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498804 +0200 [ forkit ] TRC  #13: Revents: 0x0| net/Socket.hpp:1296
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498784 +0200 [ forkit ] TRC  #13: Starting handling poll results of forkit at index 0 (of 1): 0| net/Socket.cpp:435
Aug 16 09:32:18  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:18.498692 +0200 [ forkit ] TRC  Poll completed with 0 live polls max (1000000us)(timedout)| net/Socket.cpp:356
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.536556 +0200 [ kit_spare_001 ] FTL  Forced Exit with code: 0| common/Util.cpp:1096
Aug 16 09:32:17  coolwsd[7714]: Forced Exit with code: 0
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.536536 +0200 [ kit_spare_001 ] INF  Kit process for Jail [Z2w60fwA3PxMoVyn] finished.| kit/Kit.cpp:2978
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.536515 +0200 [ kit_spare_001 ] ERR  Poco Exception: File not found: /opt/cool/child-roots/Z2w60fwA3PxMoVyn//delete.me| kit/Kit.cpp:2969
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.536424 +0200 [ kit_spare_001 ] INF  Mounting is disabled, will link/copy /opt/cool/systemplate -> /opt/cool/child-roots/Z2w60fwA3PxMoVyn/| kit/Kit.cpp:2707
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.536288 +0200 [ kit_spare_001 ] DBG  Removing [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/] only.| common/FileUtil.cpp:252
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.536179 +0200 [ kit_spare_001 ] TRC  Unmounted [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/] successfully.| common/JailUtil.cpp:70
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.531037 +0200 [ kit_spare_001 ] TRC  Executing coolmount command: /usr/bin/coolmount -u  /opt/cool/child-roots/Z2w60fwA3PxMoVyn| common/JailUtil.cpp:36
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.531019 +0200 [ kit_spare_001 ] DBG  Unmounting [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/]| common/JailUtil.cpp:67
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.530961 +0200 [ kit_spare_001 ] TRC  Unmounted [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/lo] successfully.| common/JailUtil.cpp:70
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.525755 +0200 [ kit_spare_001 ] TRC  Executing coolmount command: /usr/bin/coolmount -u  /opt/cool/child-roots/Z2w60fwA3PxMoVyn/lo| common/JailUtil.cpp:36
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.525737 +0200 [ kit_spare_001 ] DBG  Unmounting [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/lo]| common/JailUtil.cpp:67
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.525674 +0200 [ kit_spare_001 ] TRC  Unmounted [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp] successfully.| common/JailUtil.cpp:70
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.519777 +0200 [ kit_spare_001 ] TRC  Executing coolmount command: /usr/bin/coolmount -u  /opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp| common/JailUtil.cpp:36
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.519746 +0200 [ kit_spare_001 ] DBG  Unmounting [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp]| common/JailUtil.cpp:67
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.519654 +0200 [ kit_spare_001 ] DBG  Removing [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/tmp] recursively.| common/FileUtil.cpp:252
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.519635 +0200 [ kit_spare_001 ] INF  Removing jail [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/]| common/JailUtil.cpp:126
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.519625 +0200 [ kit_spare_001 ] INF  Cleaning up jail before linking/copying.| kit/Kit.cpp:2697
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.519608 +0200 [ kit_spare_001 ] ERR  Failed to mount [/opt/cool/systemplate] -> [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/], will link/copy contents.| kit/Kit.cpp:2654
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.519540 +0200 [ kit_spare_001 ] ERR  Failed to mount [/opt/cool/systemplate] -> [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/] readonly.| common/JailUtil.cpp:60
Aug 16 09:32:17  coolwsd[7714]: /usr/bin/coolmount: mount failed remount [/opt/cool/child-roots/Z2w60fwA3PxMoVyn] readonly: Operation not permitted.
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.510993 +0200 [ kit_spare_001 ] TRC  Executing coolmount command: /usr/bin/coolmount -r /opt/cool/systemplate /opt/cool/child-roots/Z2w60fwA3PxMoVyn| common/JailUtil.cpp:36
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.510965 +0200 [ kit_spare_001 ] DBG  Remounting [/opt/cool/systemplate] -> [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/].| common/JailUtil.cpp:54
Aug 16 09:32:17  coolwsd[7714]: kit-07727-07724 2022-08-16 09:32:17.510886 +0200 [ kit_spare_001 ] TRC  Bind-mounted [/opt/cool/systemplate] -> [/opt/cool/child-roots/Z2w60fwA3PxMoVyn/].| common/JailUtil.cpp:46
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497983 +0200 [ forkit ] TRC  ppoll start, timeoutMicroS: 1000000 size 1| net/Socket.cpp:337
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497969 +0200 [ forkit ] TRC  #13: setupPollFds getPollEvents: 0x1| net/Socket.hpp:859
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497951 +0200 [ forkit ] TRC  cleanupChildren reaped 0 children to have 1 left: 7727 | kit/ForKit.cpp:325
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497932 +0200 [ forkit ] TRC  cleanupChildren with 1 child| kit/ForKit.cpp:290
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497917 +0200 [ forkit ] TRC  forkLibreOfficeKit limit: 0| kit/ForKit.cpp:436
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497899 +0200 [ forkit ] TRC  Done consuming response, had 201 bytes, consumed 201 leaving 0 unused.| net/HttpRequest.cpp:643
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497884 +0200 [ forkit ] TRC  #13 Accepted incoming websocket response| net/WebSocketHandler.hpp:949
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497849 +0200 [ forkit ] TRC  Finishing| net/HttpRequest.hpp:828
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497827 +0200 [ forkit ] TRC  State::Complete| net/HttpRequest.hpp:803
Aug 16 09:32:17  coolwsd[7714]: hasContentLength: false, contentLength: -1, chunked: false| net/HttpRequest.cpp:162
Aug 16 09:32:17  coolwsd[7714]: Sec-WebSocket-Accept: /UsXbFLqnspHUbjYdCBHMCIVtOE=
Aug 16 09:32:17  coolwsd[7714]: Connection: Upgrade
Aug 16 09:32:17  coolwsd[7714]: Upgrade: websocket
Aug 16 09:32:17  coolwsd[7714]: Server: COOLWSD HTTP Server 22.05.5.3
Aug 16 09:32:17  coolwsd[7714]: Date: Tue, 16 Aug 2022 07:32:17
Aug 16 09:32:17  coolwsd[7714]: HTTP/1.1 101 Switching Protocols
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497774 +0200 [ forkit ] TRC  Read 199 bytes of header:
Aug 16 09:32:17  coolwsd[7714]: Server: COOLW| net/HttpRequest.cpp:119
Aug 16 09:32:17  coolwsd[7714]: Date: Tue, 16 Aug 2022 07:32:17
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497612 +0200 [ forkit ] TRC  Parsing header given 201 bytes: HTTP/1.1 101 Switching Protocols
Aug 16 09:32:17  coolwsd[7714]: frk-07724-07724 2022-08-16 09:32:17.497587 +0200 [ forkit ] TRC  readData: 201 bytes| net/HttpRequest.cpp:424
Aug 16 09:32:17  coolwsd[7714]: | net/WebSocketHandler.hpp:938
Aug 16 09:32:17  coolwsd[7714]: [1B blob data]
Aug 16 09:32:17  coolwsd[7714]: Sec-WebSocket-Accept: /UsXbFLqnspHUbjYdCBHMCIVtOE=
Aug 16 09:32:17  coolwsd[7714]: Connection: Upgrade
Aug 16 09:32:17  coolwsd[7714]: Upgrade: websocket
Aug 16 09:32:17  coolwsd[7714]: Server: COOLWSD HTTP Server 22.05.5.3
Aug 16 09:32:17  coolwsd[7714]: Date: Tue, 16 Aug 2022 07:32:17

I also tried to apt purge every package, removed /opt/cool, /opt/collaboraoffice /etc/cool and re-installed everything.

Then i changed protocol to IPv4, listen on loopback, disable ssl, enable ssl termination, wopi.host set to my nextcloud instance.

Permissions look the following:

drwxr-xr-x  6 root      root      4096 Aug 16 08:52 collaboraoffice
drwxr-xr-x  6 cool      cool      4096 Aug 16 09:13 cool

Anything i may have missed upgrading?

brknkfr commented 2 years ago

I have exactly the same problem and logs. I did a fresh installation of coolwsd in an unprivileged lxc container running debian 11 (amd64). It has been working fine before in an unprivileged container. It stopped working with the two latest releases.

However, in an privileged container it is working fine.

What did change so that it is not working anymore in an unprivileged container?

iasdeoupxe commented 2 years ago

Cross-post from #5164:

Noticed the same this week on an unprivileged LXC container running Debian 10.

After digging a little bit around this looks like some kind of missing file capabilities. The current ones for /usr/bin/coolmount looks like the following:

root@myhost:~# getcap /usr/bin/coolmount
/usr/bin/coolmount = cap_sys_admin+ep

After doing the following to set the same file capabilities like already set for /usr/bin/coolforkit:

root@myhost:~# setcap cap_chown,cap_fowner,cap_sys_chroot,cap_mknod+ep /usr/bin/coolmount
root@myhost:~# service coolmount restart

the issue disappears and the connection to the 9980 port of coolwsd isn't timing out anymore (getting a HTTP 200 now) for me.

DISCLAIMER: Not sure if only one of these new file capabilities are required so use at your own risk because i don't know the impact of setting too much capabilities.

redglobuli commented 2 years ago

yep, that worked.

Let's see if the collabora folks can tell us if these rights are too open.

timar commented 2 years ago

/usr/bin/coolmount needs cap_sys_admin privilege, because this privilege is required for the mount syscall. If you remove this privilege and add cap_chown,cap_fowner,cap_sys_chroot,cap_mknod instead, then the check for mount will fail, and bind mounting will not be used. So, it fixes your problem, but not the way you expected. The real fix was pushed, and COOL/CODE 22.05.6.3 will contain it. In short: unexpectedly in some cases mount works but unmount doesn't, therefore the code has to check for success of both mount and unmount before enabling bind mounting.

iasdeoupxe commented 2 years ago

For references #5289 and #5291 seems to contain the mentioned fix.