| 
			
			 | 
		#1 | 
| 
			
			
			
			 Junior Member 
			
			![]() Posts: 9 
				Karma: 10 
				Join Date: Sep 2021 
				
				
				
				Device: Onyx Boox 
				
				
				 | 
	
	
	
		
		
			
			 
				
				Server auth requiring double login
			 
			
			
			Hey, 
		
	
		
		
		
		
		
		
		
		
		
		
	
	First off, awesome software. I'm encountering two odd behaviours with my calibre server, wondering if there is a fix or if it's just a side effect of my potentially odd set-up. Behaviour 1: I have to log in twice when accessing the server. That is, I enter the username/password, submit, the login modal returns, I re-enter, submit, and I'm in. Behaviour 2: On boot up my server logs some warnings: Code: 
	-- Journal begins at Wed 2021-09-01 11:36:23 PDT, ends at Mon 2021-09-06 09:35:51 PDT. --
Sep 06 09:27:18 babel systemd[1]: Started calibre content server.
Sep 06 09:27:29 babel calibre-server[455]: QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-lucas'
Sep 06 09:27:30 babel calibre-server[455]: calibre server listening on 0.0.0.0:8080
Sep 06 09:27:30 babel calibre-server[455]: OPDS feeds advertised via BonJour at: 192.168.86.29 port: 8080
Sep 06 09:31:30 babel calibre-server[455]: Unhandled exception in state: State: _job_done Client: 192.168.86.242:57751 Request: POST /interface-data/set-sess>
Sep 06 09:31:30 babel calibre-server[455]: Traceback (most recent call last):
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/loop.py", line 621, in tick
Sep 06 09:31:30 babel calibre-server[455]:     conn.handle_event(event)
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/loop.py", line 345, in _job_done
Sep 06 09:31:30 babel calibre-server[455]:     self.job_done(*event)
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/http_response.py", line 502, in job_done
Sep 06 09:31:30 babel calibre-server[455]:     reraise(etype, e, tb)
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/polyglot/builtins.py", line 61, in reraise
Sep 06 09:31:30 babel calibre-server[455]:     raise value
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/pool.py", line 35, in run
Sep 06 09:31:30 babel calibre-server[455]:     result = func()
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/http_response.py", line 459, in run_request_handler
Sep 06 09:31:30 babel calibre-server[455]:     result = self.request_handler(data)
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/routes.py", line 313, in dispatch
Sep 06 09:31:30 babel calibre-server[455]:     ans = endpoint_(self.ctx, data, *args)
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/code.py", line 327, in set_session_data
Sep 06 09:31:30 babel calibre-server[455]:     ctx.user_manager.set_session_data(rd.username, ud)
Sep 06 09:31:30 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/users.py", line 145, in set_session_data
Sep 06 09:31:30 babel calibre-server[455]:     c.execute('UPDATE users SET session_data=? WHERE name=?', (data, username))
Sep 06 09:31:30 babel calibre-server[455]: apsw.ReadOnlyError: ReadOnlyError: attempt to write a readonly database
Sep 06 09:32:09 babel calibre-server[455]: Unhandled exception in state: State: _job_done Client: 192.168.86.1:50046 Request: POST /interface-data/set-sessio>
Sep 06 09:32:09 babel calibre-server[455]: Traceback (most recent call last):
Sep 06 09:32:09 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/loop.py", line 621, in tick
Sep 06 09:32:09 babel calibre-server[455]:     conn.handle_event(event)
Sep 06 09:32:09 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/loop.py", line 345, in _job_done
Sep 06 09:32:09 babel calibre-server[455]:     self.job_done(*event)
Sep 06 09:32:09 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/http_response.py", line 502, in job_done
Sep 06 09:32:09 babel calibre-server[455]:     reraise(etype, e, tb)
Sep 06 09:32:09 babel calibre-server[455]:   File "/usr/lib/calibre/polyglot/builtins.py", line 61, in reraise
Sep 06 09:32:09 babel calibre-server[455]:     raise value
Sep 06 09:32:09 babel calibre-server[455]:   File "/usr/lib/calibre/calibre/srv/pool.py", line 35, in run
Sep 06 09:32:09 babel calibre-server[455]:     result = func()
My potentially-odd build that I mentioned is: I'm running calibre 5.12 (aware it's not fully up to date) on a headless debian server hosted on a raspberry Pi 4b. The calibre library is being synced onto the pi via rsync from Dropbox.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#2 | 
| 
			
			
			
			 creator of calibre 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 45,609 
				Karma: 28549044 
				Join Date: Oct 2006 
				Location: Mumbai, India 
				
				
				Device: Various 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			1 is probably because of 2. 2 is complaining about a read only database, so check the permission on the users database (--userdb)
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| Advert | |
| 
         | 
    
| 
			
			 | 
		#3 | 
| 
			
			
			
			 Junior Member 
			
			![]() Posts: 9 
				Karma: 10 
				Join Date: Sep 2021 
				
				
				
				Device: Onyx Boox 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Thanks - That led me to the solution.  
		
	
		
		
		
		
		
		
		
		
		
		
	
	I created the userdb as a root user and then was running the server non-root. Non-root didn't have write permissions to the db. Fix: sudo chmod 777 /srv/calibre Both issues are resolved.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
![]()  | 
            
        
    
            
  | 
    
			 
			Similar Threads
		 | 
	||||
| Thread | Thread Starter | Forum | Replies | Last Post | 
| Login failure with userdb with content server | rodvp | Server | 7 | 11-27-2020 01:48 AM | 
| Content Server Login method | SASSBS | Server | 1 | 07-23-2018 03:55 AM | 
| Send Mail via SMTP-Server without Auth? | bluebell | Devices | 1 | 10-15-2011 07:53 AM | 
| Calibre Content Server - login | The QCC | Calibre | 2 | 03-14-2011 11:13 PM | 
| Login/Password for Calibre Server | myudkowsky | Calibre | 15 | 11-21-2010 11:07 PM |