Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2010-03-07 17:34:35

  Lutek - Użytkownik

Lutek
Użytkownik
Zarejestrowany: 2010-02-27

Problem z ntfs-3g : prawdopodobnie po upgrade kernela

Prawdopodobnie za sprawą aktualizacji sytemu pojawił się na moim siduksie problem z montowaniem partycji ntfs przez użytkownika.
W fstabie miałem następujące wpisy

Kod:

# /etc/fstab - static information about the filesystems - fstab(5)
#
# /etc/fstab is only read by programs, and not written; it is the duty of the
# system administrator to properly maintain this file.
#
# Instead  of giving the device explicitly, one may indicate the filesystem
# that is to be mounted by its UUID or VOLUME label. This will make the
# system more robust: adding or removing a disk changes the disk device name
# but not the filesystem UUID or VOLUME label.
#
# <filesystem>                                <mount point>                  <fstype>        <mount options>                          <dump> <pass>

#/dev/disk/by-uuid/58BCBC79BCBC536C            /media/disk1part2              ntfs            noauto,users,ro,dmask=0022,fmask=0133,nls=utf8   0      0

/dev/disk/by-uuid/606CEA6A6CEA3A84            /media/disk1part3              ntfs            noauto,users,ro,dmask=0022,fmask=0133,nls=utf8   0      0

#UUID=2d6d244f-285e-4f59-8ac2-82e06327e9cc     /media/disk1part5              ext3            auto,users,rw,exec,noatime                 0      2

UUID=90fe0cb9-eaab-42e3-96fc-341738cbccd8      /media/disk1part6              ext3           auto,users,rw,exec,noatime                 0      2

/dev/sda7                                     none                           swap            sw                                         0      0

UUID=c40480dc-1fdc-4678-950c-ea1505a72249     /                              ext4            defaults,errors=remount-ro,noatime,barrier=0   0      1

UUID=d9030f9c-77d4-4f9d-87f9-ceac2cf0af54     /home                          ext4            defaults,noatime                           0      2

#/dev/disk/by-uuid/7E08F4F108F4A973            /media/disk2part1              ntfs            noauto,users,ro,dmask=0022,fmask=0133,nls=utf8   0      0

/dev/disk/by-uuid/34C81119C810DB46            /media/disk2part2              ntfs            noauto,users,ro,dmask=0022,fmask=0133,nls=utf8   0      0

/dev/cdrom                                    /media/cdrom                   udf,iso9660     noauto,ro,users                            0      0

/dev/cdrom1                                   /media/cdrom1                  udf,iso9660     noauto,ro,users                            0      0

/dev/fd0                                      /media/fd0                     auto            noauto,rw,users                            0      0

Jak widać, zahaszowane mam dwie partycje systemowe dwóch windowsów, partycję systemową jednego linuksa, a dwie partycje ntfs mam oznaczone z opcją noauto, bo nie chcę ich montować przy starcie. Montowałem je klikając na ikonkę, w razie potrzeby i natychmiast odmontowywałem. Działało.
Po ostatniej aktualizacji do kernela

Kod:

 2.6.33-0.slh.5-sidux-686

pojawił się problem z montowaniem tych partycji ntfs z poziomu usera. Dostaję komunikat

Kod:

 
Error opening .... Permission denied
Failed to mount '/dev/sda3': Permission denied
Please check '/dev/sda3' and the ntfs-3g binary permissions,
and the mounting user ID. More explanation is provided at
http://ntfs-3g.org/support.html#unprivileged

Jako root oczywiście te dyski są montowane. Mogę je odmontować jako user, ale zamontować ponownie jako user nie.
Szukałem rozwiązania w sieci. W manualu ntfs-3g znalazłem  jak byk , że ntfs-3g domyślne jest ustawione tak, ze każdy może montować, czytać itp.
Problem o jakim piszę, był poruszany na róznych forach, ale żadne z wskazywanych tam rozwiązań nie działa całkowicie. Zmieniałem wpisy w fstabie, kombinowałem z uid, gid, umask=0 i nic.
Zmiany w fstabie nie powodują żadnych zmian, tzn nadal nie mogę montować jako user.
W manualu ntfs-3g znalazłem

Why do I get “fusermount: option blkdev is privileged” error?

Unprivileged block device mounts work only if all the below requirements are met:

   1. ntfs-3g is compiled with integrated FUSE support
   2. the ntfs-3g binary is at least version 1.2506
   3. the ntfs-3g binary is set to setuid-root
   4. the user has access right to the volume
   5. the user has access right to the mount point

The root user can make an ntfs-3g binary setuid-root as shown below
chown root $(which ntfs-3g)
chmod 4755 $(which ntfs-3g) In such case the driver will also be able

    * to fix common FUSE kernel module loading problems
    * to create the required but sometimes incorrectly removed or missing FUSE device file

Please note that using setuid-root can result unforeseen privilege escalation and its usage is discouraged. Only the absolutely trusted users must be granted such access. Below is an example how this can be done for users in the ntfsuser group to be able to mount any NTFS volume if they have also the needed volume access rights. chown root.ntfsuser $(which ntfs-3g)
chmod 4750 $(which ntfs-3g) The setuid-root ntfs-3g driver applies the principle of least privilege during its lifetime as a safety measure.

Działa, o ile ręcznie zmienię właściciela punktów montowania , tj. /media/disk1part3 i  /media/disk2part2 na użytkownika, a także zmienię /dev/sda3 i /dev/sdb2 także na usera.
Oczywiście, działa do czasu restartu systemu. Po  restarcie udev zmienia prawa do dev/sda3 i /dev/sdb2 na roota.
Nie bardzo widzę w swoim udevie opcje do zmiany tego. Tzn wcale nie widzę :)
Po drugie, nie wiem czy grzebanie w udevie jest dobrym pomysłem.
Po trzecie, nie wiem jaka była konfiguracja systemu sprzed awarii - czy punkty montowania były  z prawami na usera?
Bo że /dev/sd3 i /dev/sdb2 to nie jestem przekonany.

Reasumując: fstab mam OK. Punty montowania, nie wiem czemu miały uprawnienia na roota, zmieniłem na usera i chyba tak powinno być.
Jak teraz zmienić konfigurację w udev, żeby po starcie user miał prawa do tych partycji które chcę montować czy w ogóle należy to robić? A jeśli nie, to co i gdzie jest nie tak?

Offline

 

#2  2010-03-07 17:56:09

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: Problem z ntfs-3g : prawdopodobnie po upgrade kernela

Please check '/dev/sda3' and the ntfs-3g binary permissions,
and the mounting user ID. More explanation is provided at
http://ntfs-3g.org/support.html#unprivileged

Offline

 

#3  2010-03-07 18:08:34

  Lutek - Użytkownik

Lutek
Użytkownik
Zarejestrowany: 2010-02-27

Re: Problem z ntfs-3g : prawdopodobnie po upgrade kernela

No przecież pisałem w poście, że czytałem manuala i nawet wkleiłem kluczowy wątek z niego.
Innego rodzaju problem tu się pojawia.

Offline

 

#4  2010-03-07 20:53:59

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: Problem z ntfs-3g : prawdopodobnie po upgrade kernela

A to sory, nie czytałem całości, troche sporo. A chyba by wystarczyło ostatnie zdanie z pytaniem. Póki co nie wiem jak to rozwiązać. Poza tym osobiście nigdy mi nie przeszkadzała konieczność montowania jako root. Chyba dobrze, że nie każdy może to zrobić. Z sudo da się żyć. No ale poczytam coś o udev, jest troche ciekawych rzeczy na sieci, polecam. O np. http://reactivated.net/writing_udev_rules.html#ownership

Ostatnio edytowany przez kamikaze (2010-03-07 20:55:46)

Offline

 

#5  2010-03-08 22:34:15

  Lutek - Użytkownik

Lutek
Użytkownik
Zarejestrowany: 2010-02-27

Re: Problem z ntfs-3g : prawdopodobnie po upgrade kernela

Zgłaszam że problem został rozwiązany. I mam nadzieję że ten temat komuś się przyda więc nie będzie to niepotrzebne zawracanie głowy.
Kluczowe okazało się

Please note that using setuid-root can result unforeseen privilege escalation and its usage is discouraged. Only the absolutely trusted users must be granted such access. Below is an example how this can be done for users in the ntfsuser group to be able to mount any NTFS volume if they have also the needed volume access rights.  chown root.ntfsuser $(which ntfs-3g)
chmod 4750 $(which ntfs-3g) The setuid-root ntfs-3g driver applies the principle of least privilege during its lifetime as a safety measure.

Co daje userowi prawa do działania z nfts-3g oraz prawidłowe ustawienie praw dostępu do dysków. Działa.
Dzięki kamikaze za zainteresowanie.

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)