LINUX.ORG.RU

запрет автомонтирования разделов отсутствующих в fstab

 , , , ,


0

1

после выстрела себе в колено и последующего частичного исправления ситуации у меня монтируются все разделы, независимо от их наличия в fstab, немного погуглив, понял, что монтирует их системда, но как это запретить(отключить) я не понял. И так привожу термилальные выхлопы

systemctl -l --type mount
  UNIT                                                                                                                                                                                                             L>
  -.mount                                                                                                                                                                                                          l>
  dev-hugepages.mount                                                                                                                                                                                              l>
  dev-mqueue.mount                                                                                                                                                                                                 l>
  home.mount                                                                                                                                                                                                       l>
  media-home.mount                                                                                                                                                                                                 l>
  media-seagate.mount                                                                                                                                                                                              l>
  media-Soft.mount                                                                                                                                                                                                 l>
  proc-sys-fs-binfmt_misc.mount                                                                                                                                                                                    l>
  run-media-ypp-2608F27C08F24A77.mount                                                                                                                                                                             l>
  run-media-ypp-3ff487cf\x2d8405\x2d4013\x2db5dc\x2d7f876df6456a.mount                                                                                                                                             l>
  run-media-ypp-\xd0\x97\xd0\xb0\xd1\x80\xd0\xb5\xd0\xb7\xd0\xb5\xd1\x80\xd0\xb2\xd0\xb8\xd1\x80\xd0\xbe\xd0\xb2\xd0\xb0\xd0\xbd\xd0\xbe\x20\xd1\x81\xd0\xb8\xd1\x81\xd1\x82\xd0\xb5\xd0\xbc\xd0\xbe\xd0\xb9.mount l>
  run-media-ypp-macos.mount                                                                                                                                                                                        l>
  run-media-ypp-nhome.mount

все юниты с именем начинающимся на run-media-ypp монтируют разделы, которые монтироваться не должны, при попытке отключить юнит системда говорит, что его(юнита) не существует :/

$ systemctl status run-media-ypp-nhome.mount
● run-media-ypp-nhome.mount - /run/media/ypp/nhome
     Loaded: loaded (/proc/self/mountinfo)
     Active: active (mounted) since Sat 2021-11-27 14:13:55 EET; 1h 35min ago
      Where: /run/media/ypp/nhome
       What: /dev/sda2
$ systemctl disable run-media-ypp-nhome.mount
Failed to disable unit: Unit file run-media-ypp-nhome.mount does not exist.
systemctl list-unit-files | grep mount
proc-sys-fs-binfmt_misc.automount           static          -
-.mount                                     generated       -
dev-hugepages.mount                         static          -
dev-mqueue.mount                            static          -
etc-pacman.d-gnupg.mount                    static          -
home.mount                                  generated       -
media-home.mount                            generated       -
media-seagate.mount                         generated       -
media-Soft.mount                            generated       -
proc-fs-nfsd.mount                          static          -
proc-sys-fs-binfmt_misc.mount               disabled        disabled
snapshots.mount                             generated       -
sys-fs-fuse-connections.mount               static          -
sys-kernel-config.mount                     static          -
sys-kernel-debug.mount                      static          -
sys-kernel-tracing.mount                    static          -
tmp.mount                                   static          -
var-cache.mount                             generated       -
var-lib-machines.mount                      static          -
var-lib-nfs-rpc_pipefs.mount                static          -
nfs-mountd.service                          static          -
ostree-remount.service                      disabled        disabled
systemd-remount-fs.service                  enabled-runtime disabled
umount.target                               static          -

жду ваших советов.


немного погуглив, понял, что монтирует их системда

мало погуглил. mount != automount.

t184256 ★★★★★
()
Ответ на: комментарий от t184256
systemctl -l --type automount
  UNIT                              LOAD   ACTIVE SUB     DESCRIPTION                                                  
  proc-sys-fs-binfmt_misc.automount loaded active running Arbitrary Executable File Formats File System Automount Point

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.
1 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.

agafron
() автор топика

занятно, что если ты их в выводе cat /etc/mtab увидишь, то cat не виноват. но вот если в systemctl, то все, крайний найден.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

увидел

/dev/sdc1 /run/media/ypp/Зарезервировано\040системой fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096 0 0
/dev/sda2 /run/media/ypp/nhome ext4 rw,nosuid,nodev,relatime,errors=remount-ro 0 0
/dev/sdb2 /run/media/ypp/macos hfsplus ro,nosuid,nodev,relatime,umask=22,uid=1000,gid=1001,nls=utf8 0 0
/dev/sdc8 /run/media/ypp/3ff487cf-8405-4013-b5dc-7f876df6456a ext4 rw,nosuid,nodev,relatime,errors=remount-ro 0 0
/dev/sdc2 /run/media/ypp/2608F27C08F24A77 fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096 0 0

то cat не виноват. но вот если в systemctl, то все, крайний найден

cat в отличии от systemd не создает юниты и не выполняет их, я просто предположил, что причина в systemd или с его помощью это можно устранить

agafron
() автор топика
Последнее исправление: agafron (всего исправлений: 1)

понял, что монтирует их системда

systemd […] создает юниты и […] выполняет их

при попытке отключить юнит системда говорит, что его(юнита) не существует :/

Интересно, что бы это значило?

intelfx ★★★★★
()
Ответ на: комментарий от anonymous
$ mount
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sys on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
dev on /dev type devtmpfs (rw,nosuid,relatime,size=4030460k,nr_inodes=1007615,mode=755,inode64)
run on /run type tmpfs (rw,nosuid,nodev,relatime,mode=755,inode64)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
/dev/sdb1 on / type btrfs (rw,noatime,compress=lzo,nossd,discard,space_cache,autodefrag,subvolid=975,subvol=/@)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,inode64)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=9167)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,nr_inodes=409600,inode64)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
none on /run/credentials/systemd-sysusers.service type ramfs (ro,nosuid,nodev,noexec,relatime,mode=700)
/dev/sdb1 on /home type btrfs (rw,noatime,compress=lzo,nossd,discard,space_cache,autodefrag,subvolid=258,subvol=/@home)
/dev/sdb1 on /var/cache type btrfs (rw,noatime,compress=lzo,nossd,discard,space_cache,autodefrag,subvolid=259,subvol=/@cache)
/dev/sdb1 on /snapshots type btrfs (rw,noatime,compress=lzo,nossd,discard,space_cache,autodefrag,subvolid=260,subvol=/@snapshots)
/dev/sda1 on /media/seagate type ext4 (rw,relatime)
/dev/sdc6 on /media/home type ext4 (rw,relatime)
/dev/sdc5 on /media/Soft type ntfs3 (rw,relatime,uid=0,gid=0,fmask=37777600000,dmask=37777600000,iocharset=utf8)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=808656k,nr_inodes=202164,mode=700,uid=1000,gid=1001,inode64)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1001)
/dev/sdc1 on /run/media/ypp/Зарезервировано системой type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)
/dev/sda2 on /run/media/ypp/nhome type ext4 (rw,nosuid,nodev,relatime,errors=remount-ro,uhelper=udisks2)
/dev/sdb2 on /run/media/ypp/macos type hfsplus (ro,nosuid,nodev,relatime,umask=22,uid=1000,gid=1001,nls=utf8,uhelper=udisks2)
/dev/sdc8 on /run/media/ypp/3ff487cf-8405-4013-b5dc-7f876df6456a type ext4 (rw,nosuid,nodev,relatime,errors=remount-ro,uhelper=udisks2)
/dev/sdc2 on /run/media/ypp/2608F27C08F24A77 type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)
portal on /run/user/1000/doc type fuse.portal (rw,nosuid,nodev,relatime,user_id=1000,group_id=1001)

agafron
() автор топика
Ответ на: комментарий от intelfx

Интересно, что бы это значило?

и что же?

agafron
() автор топика
Ответ на: комментарий от anonymous

из всего прочитанного я понял, что используя udisks2 я могу эти разделы просто скрыть, но не запретить им монтироваться

Если вы не хотите, чтобы определённые разделы или носители отображались на рабочем столе, можно создать правило udev, например, /etc/udev/rules.d/10-local.rules: В результате на рабочем столе будут отображаться все разделы, кроме sda1 и sda2. Имейте в виду, что это не сработает, если вы используете udisks2, потому что переменная UDISKS_PRESENTATION_HIDE больше не поддерживается. Вместо неё используйте UDISKS_IGNORE:

KERNEL=="sda1", ENV{UDISKS_IGNORE}="1"
KERNEL=="sda2", ENV{UDISKS_IGNORE}="1"

таким образом это костыль, а не решение

agafron
() автор топика
Ответ на: комментарий от agafron

Сперва найди что у тебя монтирует их используя udisks это может быть файловый менеджер ( настройка монтировать диски при подключении) или настройки дисков в DE (xfce kde .. ) (тоже монтировать диски при подключении) С помощью политик можно вообще запретить монтирование дисков обычным юзерам как конкретного так и всех. Разрешение на монтирование задается в политиках по ссылке выше

В [2] описаны стандартные настройки прав для группы storage, в [3] приведён пример с более жёсткими ограничениями. Если вы используете Dolphin, то стоит также изучить [4].

polkit.addRule(function(action, subject) {
    if ((action.id == "org.freedesktop.udisks2.filesystem-mount-system" ||
         action.id == "org.freedesktop.udisks.filesystem-mount-system-internal") &&
        subject.local && subject.active && subject.isInGroup("users"))
    {
            return polkit.Result.YES;
    }
});
anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.