[mythtv-users] mythfilldatabase failing after OS upgrade
mikep at randomtraveller.org.uk
Fri Jan 6 23:09:37 UTC 2023
On 06/01/2023 21:01, Hika van den Hoven wrote:
> Hoi Daryl,
> There is one thing you always have to remember when you move data like
> this between old and new systems or even more important, share them
> between two installation on one physical system.
> usernames and groupnames are meaningless to the computer. The computer
> uses the numerical u(ser)id and g(roup)id. For our benefit as stupid
> mortals it translates it to a name.
> However the translation between the numerical id's and the names is
> unique to every installation, with the only exception of root. Root
> always has a uid of 0 and a gid of 0. Some of the groups have
> generally by agreement the same gid, but they could be another.
> So if you create a new installation and want to copy or share data
> with an old installation you have to ensure the involved users and
> groups have the same uid and gid on both installations. You can set
> the uid on user creation (if not already taken by another user).
> This is why I use ldap for network wide user and group management. The
> user hika and mythtv have the same uid on all computers and most
> groups likewise.
I would add another complication, which I discovered copying a disk from an old backend to a new one
(duff motherboard). Many of the users and groups generated by a fresh install are "system" users;
that means they are usually used only by OS subsystems. These are less than 1000 and typically
assigned the next available numbers. As the order of installation is indeterminate during an OS
install, these are essentially random and won't match the UIDs and GIDs on any other host.
Mythtv as installed from repos is often treated as a "system" install, meaning that the UID and GID
the user "mythtv" is assigned can often collide with UIDs from other subsystems like, for example,
gdm and lxd.
For this reason I now *always* create a mythtv user with a known UID and GID in the normal user
range (> 1000) before installing any software. That ensures (i) there are no collisions, (ii) any
existing video files still have the right UID and GID, (iii) the user is created under /home rather
than under /var, and (iv) if I access those directories from elsewhere I get sensible answers from NFS.
More information about the mythtv-users