Radarr/Radarr · error · LinuxPermissionsException

Unknown group: {0}

Error message

Unknown group: {0}

What it means

LinuxPermissionsException thrown by GetGroupId when the supplied group string is not empty, is not a numeric GID, and Syscall.getgrnam(group) returns null. A null result means the group name is absent from the group database, so the GID cannot be resolved. The group name is interpolated.

Source

Thrown at src/NzbDrone.Mono/Disk/DiskProvider.cs:510

        }

        private uint GetGroupId(string group)
        {
            if (group.IsNullOrWhiteSpace())
            {
                return UNCHANGED_ID;
            }

            if (uint.TryParse(group, out var groupId))
            {
                return groupId;
            }

            var g = Syscall.getgrnam(group);

            if (g == null)
            {
                throw new LinuxPermissionsException("Unknown group: {0}", group);
            }

            return g.gr_gid;
        }
    }
}

View on GitHub (pinned to ca451608dc)

Solutions

  1. Confirm the group exists from the service's perspective: sudo -u radarr getent group media.
  2. Fix the typo in the group setting.
  3. Create the group (groupadd) if missing, or pass the numeric GID instead.
  4. In containers, define the group in the image or pass the numeric GID.

Example fix

getent group media || sudo groupadd media
# set the chown group in Radarr settings to 'media'
Defensive patterns

Strategy: validation

Validate before calling

if (!group.IsNullOrWhiteSpace() && !uint.TryParse(group, out _) && Syscall.getgrnam(group) == null)
{
    _logger.Error("Group '{0}' does not resolve; refusing permission op", group);
    return;
}

Try / catch

try { var gid = GetGroupId(group); }
catch (LinuxPermissionsException ex) when (ex.Message.Contains("Unknown group"))
{
    _logger.Error(ex, "Create the group or fix the setting before retrying");
}

Prevention

When it happens

Trigger: GetGroupId(group): not whitespace, uint.TryParse fails, Syscall.getgrnam(group) == null -> throw.

Common situations: Typo in the configured group; group not created yet; group lives in an NSS backend unavailable to the service; container without the group in /etc/group.

Related errors


AI-assisted analysis of Radarr/Radarr@ca451608dc (2026-08-13). Data as JSON: /api/errors/02d25adbb948d7f3. Report an issue: GitHub.