Just in case, I tried fixing the permissions anyway with sudo chown user:salsa /config/config/migration.xml
.
However, this gives another error: chown: invalid user: 'user:salsa'
. Even though it is a valid user and shows up when checking getent passwd | grep 'salsa'
GeekySalsa
So, I'm connected through SSH as the admin user. Lets call it salsa. When calling docker run, I passed the --user 1000:1000, which matches salsa. This actually results in the browser not even finding jellyfin. Returning some 4xx (probably 401).
However, originally I was running docker run without the --user field, which yields the result I mentioned before. Where it shows Jellyfin, lists the server, but then fails to connect.
From this, docker logs show no errors:
spoiler
- [09:03:41] [INF] [1] Main: Jellyfin version: 10.9.9
- [09:03:41] [INF] [1] Main: Environment Variables: ["[JELLYFIN_FFMPEG, /usr/lib/jellyfin-ffmpeg/ffmpeg]", "[JELLYFIN_DATA_DIR, /config]", "[JELLYFIN_CONFIG_DIR, /config/config]", "[JELLYFIN_WEB_DIR, /jellyfin/jellyfin-web]", "[JELLYFIN_LOG_DIR, /config/log]", "[JELLYFIN_CACHE_DIR, /cache]"]
- [09:03:41] [INF] [1] Main: Arguments: ["/jellyfin/jellyfin.dll"]
- [09:03:41] [INF] [1] Main: Operating system: Debian GNU/Linux 12 (bookworm)
- [09:03:41] [INF] [1] Main: Architecture: X64
- [09:03:41] [INF] [1] Main: 64-Bit Process: True
- [09:03:41] [INF] [1] Main: User Interactive: True
- [09:03:41] [INF] [1] Main: Processor count: 8
- [09:03:41] [INF] [1] Main: Program data path: /config
- [09:03:41] [INF] [1] Main: Log directory path: /config/log
- [09:03:41] [INF] [1] Main: Config directory path: /config/config
- [09:03:41] [INF] [1] Main: Cache path: /cache
- [09:03:41] [INF] [1] Main: Web resources path: /jellyfin/jellyfin-web
- [09:03:41] [INF] [1] Main: Application directory: /jellyfin/
- [09:03:41] [INF] [1] Jellyfin.Server.Migrations.MigrationRunner: Marking following migrations as applied because this is a fresh install: ["CreateNetworkConfiguration", "MigrateMusicBrainzTimeout", "MigrateNetworkConfiguration"]
- [09:03:41] [INF] [1] Emby.Server.Implementations.AppBase.BaseConfigurationManager: Setting cache path: /cache
- [09:03:41] [INF] [1] Emby.Server.Implementations.ApplicationHost: Loading assemblies
- [09:03:41] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]
- [09:03:41] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions: []
- [09:03:41] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Used LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]
- [09:03:41] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered interface addresses: ["127.0.0.1", "10.0.0.23", "100.64.37.178"]
- [09:03:41] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Bind Addresses ["0.0.0.0"]
- [09:03:41] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Remote IP filter is Allowlist
- [09:03:41] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered subnets: []
- [09:03:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: TMDb 10.9.9.0
- [09:03:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: Studio Images 10.9.9.0
- [09:03:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: OMDb 10.9.9.0
- [09:03:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: MusicBrainz 10.9.9.0
- [09:03:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: AudioDB 10.9.9.0
- [09:03:42] [INF] [1] Jellyfin.Server.Migrations.MigrationRunner: Marking following migrations as applied because this is a fresh install: ["DisableTranscodingThrottling", "CreateLoggingConfigHeirarchy", "MigrateActivityLogDatabase", "RemoveDuplicateExtras", "MigrateUserDatabase", "MigrateDisplayPreferencesDatabase", "RemoveDownloadImagesInAdvance", "MigrateAuthenticationDatabase", "FixPlaylistOwner", "MigrateRatingLevels", "FixAudioData"]
- [09:03:42] [INF] [1] Main: Kestrel is listening on 0.0.0.0
- [09:03:42] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: No XML encryptor configured. Key {088145f8-6aa5-420c-b690-406299d35e5b} may be persisted to storage in unencrypted form.
- [09:03:43] [WRN] [1] Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware: The WebRootPath was not found: /wwwroot. Static files may be unavailable.
- [09:03:43] [INF] [1] Emby.Server.Implementations.ApplicationHost: Running startup tasks
- [09:03:43] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Generate Trickplay Images set to fire at 2024-08-08 03:00:00.000 +00:00, which is 17:56:16.5092379 from now.
- [09:03:43] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Extract Chapter Images set to fire at 2024-08-08 02:00:00.000 +00:00, which is 16:56:16.5067972 from now.
- [09:03:43] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Found ffmpeg version 6.0.1
- [09:03:43] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available decoders: ["libdav1d", "av1", "av1_cuvid", "av1_qsv", "h264", "h264_qsv", "h264_cuvid", "hevc", "hevc_qsv", "hevc_cuvid", "mpeg2video", "mpeg2_qsv", "mpeg2_cuvid", "mpeg4", "mpeg4_cuvid", "msmpeg4", "vc1_qsv", "vc1_cuvid", "vp8", "libvpx", "vp8_cuvid", "vp8_qsv", "vp9", "libvpx-vp9", "vp9_cuvid", "vp9_qsv", "aac", "ac3", "dca", "flac", "mp3", "truehd"]
- [09:03:43] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available encoders: ["libsvtav1", "av1_nvenc", "av1_qsv", "av1_amf", "av1_vaapi", "libx264", "h264_amf", "h264_nvenc", "h264_qsv", "h264_v4l2m2m", "h264_vaapi", "libx265", "hevc_amf", "hevc_nvenc", "hevc_qsv", "hevc_vaapi", "mjpeg_qsv", "mjpeg_vaapi", "mpeg4", "msmpeg4", "libvpx", "libvpx-vp9", "aac", "libfdk_aac", "ac3", "alac", "dca", "flac", "libmp3lame", "libopus", "truehd", "libvorbis", "srt"]
- [09:03:43] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available filters: ["deinterlace_qsv", "deinterlace_vaapi", "hwupload_cuda", "hwupload_vaapi", "libplacebo", "overlay_opencl", "overlay_qsv", "overlay_vaapi", "overlay_vulkan", "overlay_cuda", "procamp_vaapi", "scale_cuda", "scale_opencl", "scale_qsv", "scale_vaapi", "scale_vulkan", "tonemap_cuda", "tonemap_opencl", "tonemap_vaapi", "vpp_qsv", "yadif_cuda", "zscale", "alphasrc"]
- [09:03:43] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available hwaccel types: ["cuda", "vaapi", "qsv", "drm", "opencl", "vulkan"]
- [09:03:44] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: FFmpeg: /usr/lib/jellyfin-ffmpeg/ffmpeg
- [09:03:44] [INF] [1] Emby.Server.Implementations.ApplicationHost: ServerId: 20accacd2d674450b3c157b6f96d5533
- [09:03:44] [INF] [1] Emby.Server.Implementations.ApplicationHost: Core startup complete
- [09:03:44] [INF] [1] Main: Startup complete 0:00:03.0145715
- [09:03:46] [INF] [16] Emby.Server.Implementations.ScheduledTasks.TaskManager: Clean up collections and playlists Completed after 0 minute(s) and 0 seconds
- [09:03:47] [INF] [10] Emby.Server.Implementations.ScheduledTasks.TaskManager: Update Plugins Completed after 0 minute(s) and 1 seconds
EDIT: Also, with this, ~/jellyfin/config/logs is still showing no new logs.
Oh! I wasn't aware of these logs. Yep, I'm seeing an error repeating many times here: "Unhandled exception. System.UnauthorizedAccessException: Access to the path '/config/config/migrations.xml' is denied."
jellyfin/jellyfin:latest
These are the last logs before they stopped showing up:
spoiler
- [2024-08-07 06:38:53.717 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"AccessSchedule"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"ActivityLog"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"CustomItemDisplayPreferences"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"DisplayPreferences"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"HomeSection"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"ImageInfo"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"ItemDisplayPreferences"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"Permission"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"Preference"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"ApiKey"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"Device"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"DeviceOptions"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:38:53.718 +00:00] [WRN] [11] Microsoft.EntityFrameworkCore.Model.Validation: The entity type '"User"' is configured to use schema '"jellyfin"', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
- [2024-08-07 06:39:17.228 +00:00] [INF] [10] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : "* [10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:17.228 +00:00] [INF] [10] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : "[]"
- [2024-08-07 06:39:17.229 +00:00] [INF] [10] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:18.297 +00:00] [INF] [20] Emby.Dlna.DlnaManager: No matching device profile found. The default will need to be used. DeviceIdentification { FriendlyName: "Aquaria", ModelNumber: "1.0", SerialNumber: "", ModelName: "LG TV", ModelDescription: "LG WebOSTV DMRplus", ModelUrl: "", Manufacturer: "LG Electronics.", ManufacturerUrl: "http://www.lge.com", Headers: [] }
- [2024-08-07 06:39:18.303 +00:00] [INF] [20] Emby.Dlna.Main.DlnaEntryPoint: DLNA Session created for "Aquaria" - "LG TV"
- [2024-08-07 06:39:19.233 +00:00] [INF] [20] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:19.233 +00:00] [INF] [20] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : "[]"
- [2024-08-07 06:39:19.234 +00:00] [INF] [20] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:21.232 +00:00] [INF] [8] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:21.232 +00:00] [INF] [8] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : "[]"
- [2024-08-07 06:39:21.232 +00:00] [INF] [8] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:23.237 +00:00] [INF] [11] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:23.237 +00:00] [INF] [11] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : "[]"
- [2024-08-07 06:39:23.237 +00:00] [INF] [11] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:25.240 +00:00] [INF] [11] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:39:25.240 +00:00] [INF] [11] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : "[]"
- [2024-08-07 06:39:25.240 +00:00] [INF] [11] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
- [2024-08-07 06:45:16.881 +00:00] [INF] [2] Main: Received a SIGTERM signal, shutting down
- [2024-08-07 06:45:16.881 +00:00] [INF] [2] Main: Running query planner optimizations in the database... This might take a while
- [2024-08-07 06:45:16.888 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "CoreAppHost"
- [2024-08-07 06:45:16.889 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "UserDataChangeNotifier"
- [2024-08-07 06:45:16.889 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "ExternalPortForwarding"
- [2024-08-07 06:45:16.890 +00:00] [INF] [2] Emby.Server.Implementations.EntryPoints.ExternalPortForwarding: Stopping NAT discovery
- [2024-08-07 06:45:16.892 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "DlnaEntryPoint"
- [2024-08-07 06:45:16.892 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: Disposing PlayToManager
- [2024-08-07 06:45:16.893 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: Disposing DeviceDiscovery
- [2024-08-07 06:45:16.893 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: Disposing SsdpCommunicationsServer
- [2024-08-07 06:45:16.893 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: "SsdpCommunicationsServer" disposing _BroadcastListenSocket
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: "SsdpCommunicationsServer" Disposing 3 sendSockets
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: "SsdpCommunicationsServer" disposing sendSocket from "0.0.0.0"
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: "SsdpCommunicationsServer" disposing sendSocket from "10.0.0.23"
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Dlna.Main.DlnaEntryPoint: "SsdpCommunicationsServer" disposing sendSocket from "127.0.0.1"
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "MusicBrainzAlbumProvider"
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "DeviceAccessEntryPoint"
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "EntryPoint"
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "EntryPoint"
- [2024-08-07 06:45:16.895 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "NotificationEntryPoint"
- [2024-08-07 06:45:16.896 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "EmbyTV"
- [2024-08-07 06:45:16.897 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "SchedulesDirect"
- [2024-08-07 06:45:16.897 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "LibraryChangedNotifier"
- [2024-08-07 06:45:16.898 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "RecordingNotifier"
- [2024-08-07 06:45:16.899 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "UdpServerEntryPoint"
- [2024-08-07 06:45:16.899 +00:00] [INF] [2] Emby.Server.Implementations.ApplicationHost: Disposing "LibraryMonitorStartup"
I feel like the real problem isn't Lithium-Ion batteries, but specifically non-removable Li-ion batteries. With some devices, non-removable isn't as huge of a deal, but with other items such as headphones, mice, and gamepads, I'd rather have AA batteries than non-removable Li-ion. In the event that a battery dies while using the device, having to tether yourself sucks. Whereas taking 2 seconds to swap the battery is simple and quick.
Now, the best of both worlds is just a removable Li-Ion battery. That way you can charge overnight, and just swap to another battery when it unexpectedly dies. My headset does that and I love it. Similarly, I used to have that with my LG G4 and it was amazing. This combo yields the best convenience and is best for the environment as you don't need to recycle as many batteries or replace the whole product when the non-removable battery starts dying too quickly.
I see in the other comments that you have sidetone disabled in the OS. Are you certain you didn't install any software when using the headset? If so, could you try using the headset with another pc or your phone and see if it still happens?
Did you install anything to use them? If so, perhaps the turtle beach software has a setting for this. If not, which OS are you on? Windows 10? 11? Linux?
There're a few things that can cause this. The headphones themselves may have a feature that enables it which you should be able to disable. Otherwise, you may have it configured in your os.
Which headphones and os are you using?
This comment has major Grampa Simpson vibes and I love it.
I'm just repeating what many others have already said, but for this setup you really don't need a liquid cooler. A simple air cooler would more than suffice and would save you like $100-$120. Additionally, it looks like you're paying a premium for an SFX power supply when an ATX power supply would fit. SFX power supplies are super cool in that they can pack so much power in a tiny size. But you wouldn't benefit from that in this case.
After changing the above, perhaps you could then fit a decent GPU into your budget.
Actually, I managed to fix the issue. Tbh, idk why/how this fixed it and perhaps I should've mentioned this as well, but I have tailscale set up on my server to allow remote connections. I was connecting to the server through tailscale even though I'm in the local network. This should work just fine and has in the past, but perhaps it doesn't when first signing into a fresh install. I disabled tailscale on my client and retried and that worked. I was able to reattempt the install wizard, completed it, and now have a working server once again.
I haven't yet validated playback as my library is being rescanned now, but I'm at least able to navigate. I'm also unsure why I was able to attempt the wizard before just for it to get stuck...
Thanks for the help! Your swift responses have been appreciated and I learned a good bit :)