Impossible de changer le flag "noexec" d'une partition NFS

Bonjour à toutes et à tous.

J’ai basculé dernièrement ma station de travail sur mon réseau
domestique vers la version wheezy. Hormis quelques embûches au sujet
d’un noyau et deux à trois bricoles insignifiantes, la mise à jour
s’est trés bien passé. Félicitations aux contributeurs!

Néanmoins, comme l’indique le sujet de ce post, je suis tombé sur un
problème d’exécution d’applications, sur ma partion /home en l’occurrence.

Et je n’arrive pas à le résoundre. J’ai fait des recherches sur
Internet, en français, en anglais, mais je n’ai pas trouvé de réponse
pertinente.

Voici quelques commandes et leurs sorties pour planter le décord. J’ai
rajouté quelques commentaires en fin de ligne derrière un
caractère #. Ils sont en lettres majuscules :

> script /home/disque_local/valrik/tmp/probleme_mount_nfs_noexec/premier_point_probleme_mount_nfs_noexec
Script started, file is /home/disque_local/valrik/tmp/probleme_mount_nfs_noexec/premier_point_probleme_mount_nfs_no
exec                                                                                                              
> more /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# / was on /dev/sda1 during installation
UUID=63aa80f7-2538-4169-bf70-c8a17cdcb70e /               ext3    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=3789689a-bc72-41e0-9d6a-12190b2d5ab7 none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto     0       0

# <|>121207<|> : Modification Valrik du 07/12/12.
# Permettre le montage nfs de "nfs_server:/home/..." divers.
nfs_server:/home/valrik/       /home/valrik          nfs     auto,user,exec   # TRÈS PERMISSIF!!!
nfs_server:/home/tmp           /home/tmp             nfs     auto,user
nfs_server:/home/public        /home/public          nfs     auto,user
nfs_server:/home/www           /home/www             nfs     auto,user
> mount | awk '/valrik/'
nfs_server:/home/valrik/ on /home/valrik type nfs (rw,nosuid,nodev,noexec,relatime,vers=3,rsize=131072,wsize=131072,namle
n=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=51939,mountproto=udp,l
ocal_lock=none,addr=192.168.0.1)                                                                                  
> .config/devices/periph/tablette/wacom_bamboo_cth-460/wacom_bamboo_cth-460.sh # EXEMPLE DE SCRIPT.
bash: .config/devices/periph/tablette/wacom_bamboo_cth-460/wacom_bamboo_cth-460.sh: Permission non accordée
> cp .config/devices/periph/tablette/wacom_bamboo_cth-460/wacom_bamboo_cth-460.sh /tmp/                            
> /tmp/wacom_bamboo_cth-460.sh 
> ls -l .config/devices/periph/tablette/wacom_bamboo_cth-460/wacom_bamboo_cth-460.sh
-rwxr-xr-x 1 valrik valrik 942 juin   5 12:14 .config/devices/periph/tablette/wacom_bamboo_cth-460/wacom_bamboo_cth
-460.sh                                                                                                           
> #... Ctrl D
Script done, file is /home/disque_local/valrik/tmp/probleme_mount_nfs_noexec/premier_point_probleme_mount_nfs_noexe
c                                                                                                                 

A voir mon fstab, mon souci n’est pas sécuritaire :wink:.

Premières investigations :

Script started on jeu. 06 juin 2013 23:17:36 CEST
> ls -l /etc/mtab 
lrwxrwxrwx 1 root root 12 mai   23 14:21 /etc/mtab -> /proc/mounts
> cat /proc/mounts 
rootfs / rootfs rw 0 0
sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
udev /dev devtmpfs rw,relatime,size=2036424k,nr_inodes=214574,mode=755 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=408300k,mode=755 0 0
/dev/disk/by-uuid/63aa80f7-2538-4169-bf70-c8a17cdcb70e / ext3 rw,relatime,errors=remount-ro,barrier=1,data=ordered 0
 0
tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0
tmpfs /run/shm tmpfs rw,nosuid,nodev,noexec,relatime,size=1447240k 0 0
rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0
fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,nosuid,nodev,noexec,relatime 0 0
nfs_server:/home/valrik/ /home/valrik nfs rw,nosuid,nodev,noexec,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard
,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=51939,mountproto=udp,local_lock=n
one,addr=192.168.0.1 0 0
nfs_server:/home/tmp /home/tmp nfs rw,nosuid,nodev,noexec,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=
tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=51939,mountproto=udp,local_lock=none,add
r=192.168.0.1 0 0
nfs_server:/home/public /home/public nfs rw,nosuid,nodev,noexec,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,
proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=51939,mountproto=udp,local_lock=no
ne,addr=192.168.0.1 0 0
...
nfs_server:/home/www /home/www nfs rw,nosuid,nodev,noexec,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=
tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=51939,mountproto=udp,local_lock=none,add
r=192.168.0.1 0 0
> exit

Script done on jeu. 06 juin 2013 23:22:48 CEST
>   

La nouveauté, c’est que mtab est maintenant un lien symbolique qui
pointe vers /proc/mounts. Selon les promoteurs de cette nouvelle
organisation, celle-ci est plus robuste puisque mise à jour
automatiquement par le noyau.

Fort bien! Mais pourquoi donc celui-ci ne tient pas compte de fstab?
j’exige de lui qu’il monte ma partition en exécution autorisée, mais
ce garnement ne veut rien entendre!

Maintenant, la ruse :

Script started on jeu. 06 juin 2013 23:43:54 CEST
> sudo mount -t nfs -o remount,exec nfs_server:/home/valrik/ /home/valrik/
mount.nfs: access denied by server while mounting (null)
> exit
exit

Script done on jeu. 06 juin 2013 23:45:14 CEST
>   

Piteuse tentative, n’est-ce pas?

En désespoir de cause, le bricolage. Je me suis donc confectionné un
petit script /usr/local/etc/init.d/bootmisc.sh, lui-même appelé par
/etc/init.d/bootmisc.sh avec dedans :

mount -t nfs -o rw,nosuid,exec nfs_server:/home/valrik /home/valrik  

Évidemment, l’entrée correspondante dans la fstab à été désactivée. Ça marche,
mais ça ralentit énormément le boot. Tous les utilisateurs du réseau
vont en pâtir. Ce ne peut donc pas être une solution pérenne.

Toute idée serait la bien venues, car là, je nage un peu… :frowning:

Conf kimarch:

# fstab client
10.42.42.95:/machin /truc nfs _netdev,rw,rsize=32768,wsize=32768,soft,intr 0 0

#/etc/exports server
/machin 10.42.42.150(rw,async,no_subtree_check,no_root_squash)

Peux-tu donner la configuration serveur ?