A montagem FUSE do udev fornece “O terminal de transporte não está conectado”, bem como root

2

Eu tenho uma regra do udev que monta meu disco de backup criptografado por encfs:

ACTION=="add",KERNEL=="sd*1",ENV{ID_SERIAL}=="Seagate_GoFlex_Desk_NA0MEYKM-0:0" ,SYMLINK="ext_hd",RUN+="/root/bin/mount.encfs 'Large Backup Drive' /dev/%k"

O conteúdo do mount.encfs é:

#!/bin/bash

set -e

export XAUTHORITY=/home/me/.Xauthority
export DISPLAY=:0.0

NAME=$1
DEV=$2
ENCRYPTED_MOUNT_POINT=/media/ext_hd.encfs
UNENCRYPTED_MOUNT_POINT=/media/ext_hd

[ ! -e $ENCRYPTED_MOUNT_POINT ] && mkdir $ENCRYPTED_MOUNT_POINT
[ ! -e $UNENCRYPTED_MOUNT_POINT ] && mkdir $UNENCRYPTED_MOUNT_POINT

mount -t ext4 $DEV $ENCRYPTED_MOUNT_POINT

encfs -o allow_other --extpass="ssh-askpass $NAME" \
$ENCRYPTED_MOUNT_POINT $UNENCRYPTED_MOUNT_POINT

Quando eu insiro o disco, recebo o prompt, mas quando tento ls / media / ext_hd, eu obtenho o FUSE clássico:

ls: cannot access '/media/ext_hd': Transport endpoint is not connected

Se eu desmontar manualmente, então execute manualmente o meu mount.encfs, ele funciona.

A saída da montagem é a mesma para os dois casos:

encfs on /media/ext_hd type fuse.encfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other)

Não sei o que poderia causar isso, de quem é a falha ou até mesmo qual deve ser a próxima etapa de depuração. Alguma ideia?

    
por Greg Bell 15.09.2016 / 05:43

0 respostas

Tags