Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

FreeBSD et vfs.usermount

13 réponses
Avatar
Thomas Baruchel
Bonjour,

j'ai bien conscience de poser une question archi-classique, archi-documentée,
archi-tout ; j'ai bien conscience de poser une question que l'on trouve
posée telle quelle, dans les mêmes termes parmi les premières réponses de
Google. J'ai bien conscience de reposer une question que j'ai moi-même posée
il y a quelques années, et à laquelle certains avaient patiemment répondu
(ce qui ne veut pas dire qu'une solution avait marché...) Mais, malgré
tout ce que j'ai pu lire dans le Handbook, sur Internet, etc. je n'ai
absolument jamais réussi à monter quoi que ce soit en tant qu'utilisateur.

Précisions:

mon /etc/sysctl.conf contient
vfs.usermount=1
C'est la seule ligne qu'il comporte. On voit au démarrage que la ligne est
prise en compte, et un sysctl -a | grep usermount donne:
vfs.usermount: 1

Bon, par ailleurs la commande 'groups' (ou id -Gn pour les puristes) donne:
baruchel wheel operator

Or le seul utilisateur de ma machine s'appelle 'baruchel'

Passons aux droits des périphériques:
mon fichier /etc/devfs.conf contient
perm acd0 0660
own acd0 root:operator
ce qui est pris en compte au redémarrage : ls -l /dev/acd* donne
crw-rw---- 1 root operator 4, 13 1 jul 22:46 /dev/acd0
crw-r----- 1 root operator 4, 27 1 jul 22:46 /dev/acd0t01

Faut-il revenir sur le piège final des droits de montage ? Créons
un répertoire dans le HOME de l'utilisateur ; donnons-lui tous les
droits possibles et imaginables, puis tentons de le monter:
cd9660: /dev/acd0: Operation not permitted
Pour lever tout doute, précisons que la commande fonctionne sans problème
sous root...
Je ne comprends pas. Tout semble correctement réglé, mais je n'ai JAMAIS pu
réussir cela ni sous 5.1, ni sous 5.2 ni sous 5.3 :-(

Je ne peux donner ici la sortie, trop longue, de sysctl -a, mais à tout
hasard je donne ci-dessous toutes les lignes commençant par vfs.

Cordialement,

vfs.nfs4.access_cache_timeout: 60
vfs.nfs4.nfsv3_commit_on_close: 0
vfs.devfs.noverflow: 32768
vfs.devfs.generation: 97
vfs.devfs.inodes: 97
vfs.devfs.topinode: 100
vfs.nfs.downdelayinitial: 12
vfs.nfs.downdelayinterval: 30
vfs.nfs.realign_test: 0
vfs.nfs.realign_count: 0
vfs.nfs.bufpackets: 4
vfs.nfs.reconnects: 0
vfs.nfs.iodmaxidle: 120
vfs.nfs.iodmin: 4
vfs.nfs.iodmax: 20
vfs.nfs.defect: 0
vfs.nfs.nfs_ip_paranoia: 1
vfs.nfs.diskless_valid: 0
vfs.nfs.diskless_rootpath:
vfs.nfs.access_cache_timeout: 60
vfs.nfs.nfsv3_commit_on_close: 0
vfs.ufs.dirhash_minsize: 2560
vfs.ufs.dirhash_maxmem: 2097152
vfs.ufs.dirhash_mem: 189580
vfs.ufs.dirhash_docheck: 0
vfs.pfs.vncache.entries: 0
vfs.pfs.vncache.maxentries: 0
vfs.pfs.vncache.hits: 0
vfs.pfs.vncache.misses: 0
vfs.vmiodirenable: 1
vfs.runningbufspace: 0
vfs.bufspace: 30769152
vfs.maxbufspace: 33882112
vfs.bufmallocspace: 397312
vfs.maxmallocbufspace: 1661337
vfs.lobufspace: 33161216
vfs.hibufspace: 33226752
vfs.bufreusecnt: 1878
vfs.buffreekvacnt: 0
vfs.bufdefragcnt: 0
vfs.lorunningspace: 524288
vfs.hirunningspace: 1048576
vfs.dirtybufferflushes: 0
vfs.altbufferflushes: 0
vfs.recursiveflushes: 0
vfs.numdirtybuffers: 25
vfs.lodirtybuffers: 268
vfs.hidirtybuffers: 537
vfs.dirtybufthresh: 483
vfs.numfreebuffers: 2043
vfs.lofreebuffers: 119
vfs.hifreebuffers: 238
vfs.getnewbufcalls: 2033
vfs.getnewbufrestarts: 0
vfs.flushwithdeps: 0
vfs.cache.numneg: 87
vfs.cache.numcache: 1401
vfs.cache.numcalls: 67828
vfs.cache.dothits: 322
vfs.cache.dotdothits: 258
vfs.cache.numchecks: 66983
vfs.cache.nummiss: 3233
vfs.cache.nummisszap: 51
vfs.cache.numposzaps: 87
vfs.cache.numposhits: 60590
vfs.cache.numnegzaps: 21
vfs.cache.numneghits: 3266
vfs.cache.nchstats: 60590 3266 108 0 3284 0 192 498
vfs.cache.numcwdcalls: 98
vfs.cache.numcwdfail1: 0
vfs.cache.numcwdfail2: 0
vfs.cache.numcwdfail3: 0
vfs.cache.numcwdfail4: 0
vfs.cache.numcwdfound: 98
vfs.cache.numfullpathcalls: 0
vfs.cache.numfullpathfail1: 0
vfs.cache.numfullpathfail2: 0
vfs.cache.numfullpathfail3: 0
vfs.cache.numfullpathfail4: 0
vfs.cache.numfullpathfound: 0
vfs.write_behind: 1
vfs.read_max: 8
vfs.opv_numops: 64
vfs.usermount: 1
vfs.numvnodes: 1459
vfs.wantfreevnodes: 25
vfs.freevnodes: 489
vfs.reassignbufcalls: 1817
vfs.nameileafonly: 0
vfs.timestamp_precision: 0
vfs.worklist_len: 8
vfs.nfsrv.nfs_privport: 0
vfs.nfsrv.async: 0
vfs.nfsrv.commit_blks: 0
vfs.nfsrv.commit_miss: 0
vfs.nfsrv.realign_test: 0
vfs.nfsrv.realign_count: 0
vfs.nfsrv.gatherdelay: 10000
vfs.nfsrv.gatherdelay_v3: 0
vfs.ffs.doasyncfree: 1
vfs.ffs.doreallocblks: 1

--
Thomas Baruchel

3 réponses

1 2
Avatar
Olivier Brisson
Thomas Baruchel schrieb:
Le 01-07-2005, Olivier Brisson a écrit :
device ata
device atapicam
device scbus
device cd
device pass


Merci de cette réponse rapide ; c'est fait.

Ensuite, dès que tu as rebooté ta machine, tu peux faire un
$ camcontrol devlist


camcontrol: couldn't open /dev/xpt0: Permission denied


chmod 0660 /dev/xpt0

Peut-être dois-je donner des permissions au groupe operator
à xpt0 dans /etc/devfs ?

et tu obtiendras un truc du genre:
<PLEXTOR CD-R PX-W8220T 1.04> at scbus0 target 4 lun 0 (cd0,pass0)
<LITEON DVD-ROM LTD163D GHR3> at scbus2 target 1 lun 0 (cd1,pass1)


:-(


Normalement, en faisant un chmod tu devrais avoir la liste de tes
lecteurs.

Pour l'instant cela ne correspond pas, mais à tout hasard deux mount
(dans un répertoire qui m'appartient) :
cd9660: /dev/acd0: Operation not permitted
msdosfs: /dev/da0s1: Operation not permitted

:-(

Quand je disais que cela ne marche jamais ;-)


Courage! C'est bientôt fait!!!!

Olivier




Avatar
Marwan Burelle
In article , Olivier Brisson wrote:
Tu as oublié de mettre ceci dans le fichier de conf de ton Kernel:

device ata
device atapicam
device scbus
device cd
device pass

Ensuite, dès que tu as rebooté ta machine, tu peux faire un
$ camcontrol devlist

et tu obtiendras un truc du genre:
<PLEXTOR CD-R PX-W8220T 1.04> at scbus0 target 4 lun 0 (cd0,pass0)

<LITEON DVD-ROM LTD163D GHR3> at scbus2 target 1 lun 0 (cd1,pass1)

J'utilise cette méthode pour ripper des DVD en tant qu'user avec OGMRip.
Tu auras toutes les infos dans ma doc à l'adresse suivante:
http://ogmrip.sourceforge.net/docs/ogmrip-freebsd.html


Je ne vois pas le rapport entre le support de caml et l'accès au
lecteur CD (ou autre ... )

Le principal interet de CAM est de pouvoir utiliser un certains
nombres d'applis que ne peuvent passer que par la couche scsi. Ce
n'est pas nécessaire pour le montage.

--
Burelle Marwan,
Equipe Bases de Donnees - LRI
http://www.cduce.org
( | )

Avatar
Marwan Burelle
In article <42c5afe1$0$6373$, Thomas Baruchel wrote:
mon /etc/sysctl.conf contient
vfs.usermount=1
C'est la seule ligne qu'il comporte. On voit au démarrage que la ligne est
prise en compte, et un sysctl -a | grep usermount donne:
vfs.usermount: 1

Bon, par ailleurs la commande 'groups' (ou id -Gn pour les puristes) donne:
baruchel wheel operator

Or le seul utilisateur de ma machine s'appelle 'baruchel'

Passons aux droits des périphériques:
mon fichier /etc/devfs.conf contient
perm acd0 0660
own acd0 root:operator
ce qui est pris en compte au redémarrage : ls -l /dev/acd* donne
crw-rw---- 1 root operator 4, 13 1 jul 22:46 /dev/acd0
crw-r----- 1 root operator 4, 27 1 jul 22:46 /dev/acd0t01


Juste comme ça, tu as essayé en faisant un chmod 666 ?

Faut-il revenir sur le piège final des droits de montage ? Créons
un répertoire dans le HOME de l'utilisateur ; donnons-lui tous les
droits possibles et imaginables, puis tentons de le monter:
cd9660: /dev/acd0: Operation not permitted
Pour lever tout doute, précisons que la commande fonctionne sans problème
sous root...


Oui, mais quelle commande utilises tu ...

Je ne comprends pas. Tout semble correctement réglé, mais je n'ai JAMAIS pu
réussir cela ni sous 5.1, ni sous 5.2 ni sous 5.3 :-(


Chez moi ça marche © depuis 4 et des banannes ... (en fait, depuis que
j'ai découvert ce sysctl ... )

Pour info :

/etc/devfs.conf (juste ce qui est intéressant) :

# Commonly used by many ports
link acd0 cdrom
perm acd0 0666
perm cd0 0666

[ 17:23 ~]> sysctl vfs.usermount
vfs.usermount: 1

Bon, après pour rendre les choses plus simples, j'ai des points de
montages dans chaque home et une ligne dans le fstab pour chaque. Mais
le montage marche sans (par exemple avec :

mount -t cd9660 /dev/acd0 /usr/home/feanor/mnt/cdrom1

)

Il y a des bouts utilisables pour ton problème dans ma doc pour les
clefs USB ... (que je devrais mettre à jour d'ailleurs ... )

http://www.lri.fr/~burelle/BSD/USBKey-FreeBSD.html

Notament un petit script pour ajouter des entrées dans fstab à chaque
création d'utilisateur.

--
Burelle Marwan,
Equipe Bases de Donnees - LRI
http://www.cduce.org
( | )

1 2