diff --git a/libraries/entropy/client/interfaces/methods.py b/libraries/entropy/client/interfaces/methods.py index 11ab13750..f40c66d85 100644 --- a/libraries/entropy/client/interfaces/methods.py +++ b/libraries/entropy/client/interfaces/methods.py @@ -1356,8 +1356,18 @@ class Misc: path = os.path.realpath(path) tarinfo = tar.gettarinfo(path, arcname) - tarinfo.uname = id_strings.setdefault(tarinfo.uid, str(tarinfo.uid)) - tarinfo.gname = id_strings.setdefault(tarinfo.gid, str(tarinfo.gid)) + + uid = tarinfo.uid + gid = tarinfo.gid + user = self.entropyTools.get_user_from_uid(uid) + group = self.entropyTools.get_group_from_gid(gid) + if user == None: + user = str(uid) + if group == None: + group = str(gid) + + tarinfo.uname = id_strings.setdefault(tarinfo.uid, user) + tarinfo.gname = id_strings.setdefault(tarinfo.gid, group) if stat.S_ISREG(exist.st_mode): tarinfo.type = tarfile.REGTYPE