жучара писал(а): ↑02.03.2020 14:13
Когда значок появляется это означает, что флэшка УЖЕ примонтирована (смотрю командой df)
Стоп. Это означает, что автоматика не выключена.
жучара писал(а): ↑02.03.2020 14:13
Я потом поменял foo c bar местами в файле /etc/fstab, так оказалось наоборот, bar монтируется, а foo нет, так что тут всё точно.
Всё правильно. При невыключенной автоматике всё так и должно быть.
Если Вы пока не поняли, разъясняю:
Автоматика работает от рута. И поэтому имеет возможность монтировать что угодно куда угодно.
Из Вашего файла
Shell
bar@debian:~$ cat /etc/fstab | grep sdc1
/dev/sdc1 /home/foo/temp auto rw,user,noauto 0 0
/dev/sdc1 /home/bar/temp auto rw,user,noauto 0 0
берется первая подходящая запись и монтируется.
В данном случае монтируется в /home/foo/temp.
Но поскольку Вы проверяете результаты от пользователя bar, Вы не увидите ни примонтированной флешки, ни значка на рабочем столе.
Я не могу утверждать наверняка, проходит монтирование успешно или нет конкретно в Вашем случае, но даже если проходит, результатов не видно. Разделение доступа в действии. Нужно либо смотреть lsblk и df от рута, либо от пользователя foo. Ну, по идее, команда mount без параметров должна показать смонтированные устройства.
Кстати, значок на рабочем столе пользователя bar всё-таки появляется и тут же исчезает. Это можно заметить, если держать два рабочих стола одновременно.
Это всё относится к случаю, когда действует автоматика.
А вот когда автоматика выключена, всё существенно иначе.
Значок на рабочем столе появляется, поскольку есть запись в /etc/fstab.
Но монтирование не происходит, потому что автоматика выключена, а в /etc/fstab присутствует опция noauto.
В результате каждый из пользователей видит значок флешки на своём рабочем столе. И значок этот относится к той точке монтирования, которая доступна данному пользователю (/home/foo/temp - для foo и /home/bar/temp - для bar). Если в /etc/fstab не прописано ни одной точки монтирования, доступной данному пользователю - не будет и значка.
Таким образом, пользователь может щелчком по значку смонтировать устройство и оно смонтируется туда, куда надо. Но это, скажем так, "работа по очереди", в каждый момент времени залогинен только один из пользователей. Поэтому, несмотря на одинаковые имена устройств, коллизии не возникает. Именно так всё срабатывает на моей системе. Я проверял при выключенной автоматике. При включенной поведение было таким же, как в Вашем случае.
Если же нужно прямо вот одновременную работу, чтобы в каждый момент времени были активны несколько пользователей,
тогда нужны уникальные имена устройств, например, идентификаторы. Но это как бы само собой разумеется. У Вас же не будут два пользователя втыкать одновременно одну и ту же флешку. Флешки всё-таки будут разными. В этом случае, кстати, автоматика вполне себе может быть включенной - отработает, не запутается.
На всякий случай замечу, что если пользователю нужно несколько устройств (несколько флешек), то для каждой флешки будет своя запись в /etc/fstab - свой идентификатор и своя точка монтирования, потому что флешки могут вставляться одновременно.
жучара писал(а): ↑02.03.2020 14:13
Если пользователь sudo
sudo здесь вообще ни при чем. В том и весь прикол, что опция "user", которую Вы указали в /etc/fstab, позволяет монтировать без sudo, но монтировать исключительно в соответствии с записью в /etc/fstab. В команде монтирования в этом случае указывается только точка монтирования (без имени устройства):
mount /home/foo/temp