Если при создании пользователя altlinux, я задам, что его gid=100 (users), или поменяю её на gid=100, то все созданные им файлы будут иметь gid=100.
Это понятно. Но толку от этого ноль.
В ситуации, когда пользователь user_local работает локально и имеет свою папку /home/user_local. Пользователь хотел бы в своей папке видеть файлы от владельца user_local:user_local, чтобы не было возможности даже теоретически почитать его приватные файлы. А вот в общей папке вне его домашней (например, /opt/share) уже другая история. Вот в этой папке удобнее создавать от другой группы для того, чтобы "сетевой" пользователь мог эти файлы читать и менять.
Для "сетевого" пользователя (он работает на другом ПК, но может и локально на "сервере") ситуация иная. Он лезет на "сервер" по fish и создает в разделяемой папке файл. Его было бы разумно создать с владельцем user_net:group, а не user_net:user_net. Если допустить, что "сетевой" пользователь никогда не будет работать локально, то можно ему сменить основную группу, как Вы описали.
Но что делать с "локальным" пользователем (тот, для которого "сервер" - основной ПК)?
У Samba, как ни странно, решение нашлось. У fish - нет.