Family shared desktop: how to properly create a family group and auto mount partition for every family member?

A PC is shared by the familly, aka adults & kids, let’s call them dad, mum, kid1, kid2, kid3
This issue appeared while trying to mirror the behaviour under win10
There is the OS partition(linux) and the data partition(ntfs) for storing shared data content (img, videos, docs, etc.)
Every user can have personnal data under home/
Everyone needs rw access to a data partition, aka auto mount it.
Everyone needs his/hers apps customization.
Everyone may leave the session open to come back to it later because another familly member needs to access now, for instance dad will continue his session, after kid2 has completed his homework.

So it’s sound logical to make 1 admin user to administrate the PC, while every family member ought to be a standard user, having access to shared ressources, but with his/her own preferences/customization.

In Manjaro KDE
I can go in the sys settings and add users to create a user for every family member.
Dolphin does not auto mount the data partition.

Suppose dad is mounting it, the path is then /run/media/dad/data
Suppose kid3 needs the PC and logs in, then again Dolphin is not auto mounting the data partition
But this time, kid3 can’t mount the partition with data, because dad is still active.

So how to solve shared access to the partition data, have automount it and preferably create a family group having this properties rather than giving them individually?

Thanks

I probably would create Data partitions for each $USER and mount them all via /etc/fstab into corresponding /home/$USER/Data where you have certainly replace $USER with the individual user names. Then only the $USER of that partition should have write permissions, read partitions and group partitions are free to be set as you wish to do it.

I probably would create Data partitions for each $USER
Some users might needs 30Gb while other 1Gb

Presently, under win10 there’s the OS partition with user profile = personal data and the other partition with a shared data.

I wish to do the same under linux.
I can have the linux partition which has $USER home directories
and the other data partition.
However, under Linux, I failed to have concurrent access to the shared partition & auto-mount it

Expand on shared data. What are you wanting to share? Photo albums and such? Or more on the order of kid 2 types a school assignment and everyone else can jump in and edit it (ala’ wiki)?

I see what you mean by share
No the partition data, is just a partition to store docs, img, videos, etc.
It’s common to everyone, for instance photos of last holiday.
There are lots of common documents, for instance cooking recipes, everyone can access or modify it for the benefit of all.

So by shared I meant common, not in the cloud with simultaneous concurrent edits.
It’s one active user on the PC, not a server, but a session might be opened for another user, aka switch of user, but not log out.

As in real life, you leave open task on the desk and the kid is taking your chair to work on his/her stuff, when finish, you’ll come back to continue where you were.

So at worst there could theoretically be a file lock, if an user switch while editing some file.

OK, so there are most likely better ways, but this is how I’d go about it (everyone in my family…wife…kids…grandkids…are terrified of my weird computer, and stays away from it), so I’m the only user…

BACKUP YOUR DATA, OR USE MEANINGLESS STUFF UNTIL YOU VERIFY CORRECT OPERATION

  1. Make a group (call it family for this exercise).
  2. Add everyone to the group.
  3. Put your data on a separate partition-this will be /dev/sdXx (Big X is the drive where the partition will reside, little x is the next unused partition number.
  4. Make a directory /home/family/, and change the owner to root:family
  5. Mount your partition to /home/family

Good luck.

1 Like

Linux is a born multiuser system - Windows became a multiuser system out of necessity - so Linux does all your requirements per default - separation of users and their data.

The only exception from your requirement is the shared partition for which you need to create a dedicated mount point (replace $SHARED with your chosen name)

sudo mkdir -p /data/$SHARED

The complete walkthrough for mounting the partition can be found in the following topic

And sample units for various use cases

When you have mounted the shared partition - set the permissions on the shared folder

sudo chmod ugo+rw /data/$SHARED

As for users - they are easily created using the commandline (replace $USERNAME with the actual name)

sudo useradd -mU $USERNAME

Then set a password for the user

sudo passwd $USERNAME
2 Likes

Windows became a multiuser system out of necessity
Well, maybe but I managed to do it, I’m just hoping to try a dual boot with same fonctionality.

The data partition is on a 2nd internal hdd.

The complete walkthrough for mounting the partition can be found in the following topic
Maybe you can enlight my candle and post the solution, as too complex for me
If every dad in a family needs to go through that, then no wonder merlock’s comment.

For 4. you mean??
sudo chown -R root:family /home/family/
For 5, you mean
sudo blkid
to identity the PARTITIONUUID
unmount the partition
then edit fstab(sudo nano /etc/fstab)
and add
PARTITIONUUID=“thePartitionUUIDnumber” /home/family/ ntfs defaults 0 0

Correct?

Good luck.
Not a good option

@artofit: Yes, to both.

@merlock Why put it in /home instead of the more conventional /media? Since it’s not a home directory.

@artofit
This is what I’d do:

sudo pacman -S ntfs-3g  # Just in case
sudo mkdir -p /media/shared

echo -e "\nUUID=<uuid> /media/shared ntfs-3g defaults 0 0 | sudo tee -a /etc/fstab

sudo mount -a
sudo groupadd family
sudo chown $USER:family /media/shared
sudo chmod ug+rw /media/shared

You’ll need to replace <uuid> with the UUID of your partition which can be found using lsblk -f.

Either way: You can test mount with the mount command above, and use lsblk to check it’s mounted. If it’s not mounted then you have an error in your fstab entry, so it should be removed or commented out by putting # at the start of the line.

EDIT: Note the ntfs-3g, you need this for write support, ntfs can only read.

@dmt: :man_shrugging: I don’t have (it’s one of the first things to disappear after an install) the conventional /media. :slight_smile: So, I’d rather it (again, for me) under /home.

That’s your issue and it is possible to make it work through the NTFS-3G advanced features, but:

  • Any file permissions need to be set on the Windows side
  • You need to map Windows users to Linux users
  • Mount the drive once and in /etc/fstab (Like @dmt already said)

I.E. you really need to RTFM above because there are very few people that use these features (Professional Linux admins do this when they need to mount NTFS NAS shares) so if you’re fully Linux, you should convert the NTFS volume to EXT4, which will give you less :exploding_head:

:crossed_fingers:

2 Likes

For my understanding, why no sgid bit on shared dir?

30 years using Linux, and suid/guid is one of those things that I’ve just never been able to get a full grasp of, so I stay away from it/them. Witchcraft, I tell ya! :slight_smile:

[1] Clarke's three laws - Wikipedia

2 Likes

https://forums.linuxmint.com/viewtopic.php?t=69834

Trying to find the solution, what do I need to put in fstab for permission:
drwxrwsr-x 2 root family 4096 Aug 7 21:50 Shared

I tried
UUID=myid /home/Shared vfat defaults,users,gid=1005,dmask=2001 0 2

where 1005 for gid stands for family

P.S. Fstab - Manjaro
Fstab - Community Help Wiki