quando executo mount
, posso ver meu disco rígido montado como fuseblk
.
/dev/sdb1 on /media/ecarroll/hd type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)
No entanto, fuseblk
não me diz qual sistema de arquivos está em meu dispositivo. Eu encontrei usando gparted
, mas quero saber como encontrar o fs usando os utilitários de linha de comando.
Comentários
-
lsblk -no name,fstype
- @don_crissti deseja que isso seja uma resposta?
Resposta
Eu descobri que a resposta fornecida por nos comentários de Don Crissti é a melhor
lsblk -no name,fstype
Isso me mostra exatamente o que eu quero e não preciso desmontar o dispositivo,
mmcblk0 └─mmcblk0p1 exfat
Veja também,
Resposta
Em geral al, não é possível ir de um ponto de montagem do FUSE para o processo de implementá-lo .
Se você sabe algo sobre como esse sistema de arquivos funciona, talvez seja possível. Você tem que rastrear o lado do dispositivo, não o ponto de montagem. Por exemplo, no seu caso, o sistema de arquivos FUSE está expondo um sistema de arquivos em um dispositivo de bloco, então você pode procurar processos que tenham o dispositivo de bloco aberto: lsof /dev/sdb1
ou fuser /dev/sdb1
. Da mesma forma, com SSHFS, você pode usar lsof
ou netstat
para procurar um processo que tenha uma conexão com o servidor correto, etc. fornece um ID de processo e ps
pode então dizer qual programa esse processo está executando.
Resposta
Você pode encontrar o fs
de /dev/sdb1
por meio de:
:
fsck -N /dev/sdb1
mount
comando:
mount | grep /dev/sdb1
file
comando:
file -sL /dev/sdb1
df
comando:
df -T | grep /dev/sdb1
Comentários
- Isso só funciona no caso especial onde a entrada do dispositivo é um dispositivo real, o que raramente é o caso com o FUSE. Além disso, ele relata apenas a aparência do conteúdo do dispositivo, o que nem sempre é uma indicação completa de qual driver do sistema de arquivos está sendo usado.
Resposta
Uma maneira genérica de consultar o sistema de arquivos de apoio para qualquer arquivo é fazer
lsblk -no name,fstype,mountpoint "$(findmnt --target "$FILE" -no SOURCE)"
A saída será semelhante a
sdd1 exfat /media/USER/CARD-A123
onde sdd1
é o nome do dispositivo, exfat
é o subjacente tipo de sistema de arquivos (por exemplo, mount
mostrará apenas fuseblk
para NFTS e exFat e isso mostrará o sistema de arquivos real) e o resto da saída é o ponto de montagem para este sistema de arquivos.
Se você obter um erro como
lsblk: : not a block device
o $FILE
não apontou para um arquivo ou diretório legível.