kubernetes/kops · error
error looking up user %q: %v
Error message
error looking up user %q: %v
What it means
Thrown by EnsureFileOwner when LookupUser fails to resolve the configured owner name to a system user. The named user does not exist in /etc/passwd (or the equivalent lookup source) on the machine performing the write — a typo in the owner name, or the user is created later by another task.
Source
Thrown at upup/pkg/fi/files_owner.go:43
"k8s.io/klog/v2"
)
// EnsureFileOwner will set the owner & group for a file.
// Empty values for owner/group will leave the owner/group unchanged.
func EnsureFileOwner(destPath string, owner string, groupName string) (bool, error) {
changed := false
stat, err := os.Lstat(destPath)
if err != nil {
return changed, fmt.Errorf("error getting file stat for %q: %v", destPath, err)
}
actualUserID := int(stat.Sys().(*syscall.Stat_t).Uid)
userID := actualUserID
if owner != "" {
user, err := LookupUser(owner) // user.Lookup(owner)
if err != nil {
return changed, fmt.Errorf("error looking up user %q: %v", owner, err)
}
if user == nil {
return changed, fmt.Errorf("user %q not found", owner)
}
userID = user.Uid
}
actualGroupID := int(stat.Sys().(*syscall.Stat_t).Gid)
groupID := actualGroupID
if groupName != "" {
group, err := LookupGroup(groupName)
if err != nil {
return changed, fmt.Errorf("error looking up group %q: %v", groupName, err)
}
if group == nil {
return changed, fmt.Errorf("group %q not found", groupName)
}
groupID = group.GidView on GitHub (pinned to 4c8573c808)
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at upup/pkg/fi/files_owner.go:43 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05).
Data as JSON: /api/errors/d63588d5d5d5f662.
Report an issue: GitHub.