如何在 /etc/fstab 中指定带有特殊字符的 label/path 作为 'ñ'?

How do I specify a label/path with special characters as 'ñ' in /etc/fstab?

我知道如果路径有空格,可以用 \040:

编码

路径示例:

"//server/folder with spaces"

fstab 条目:

//server/folder0with0spaces /mnt/share/folder_local cifs nofail,credentials=/root/.credfile 0 0

但是如果你有一个包含非英文字符的路径如何填充 fstab 'ñ'?

路径示例:

"//server/folderWith-ñ-char"

我试过:

fstab 条目:

//server/folderWith-\F1-char /mnt/share/folder_local cifs nofail,credentials=/root/.credfile 0 0

基于: https://www.degraeve.com/reference/urlencoding.php

但我收到错误消息:

 mount -a
mount error(2): No such file or directory

直接输入//server/folderWith-ñ-charñ也没什么特别的。

如有问题,您可以使用 linux-util 中的 mnt_mangle。编译这个小程序:

$ printf "%s\n" '#include "libmount/libmount.h"' 'int main(int argc, char *argv[]) { puts(mnt_mangle(argv[1])); }' | gcc -xc - -lmount -o mnt_mangle

那么你可以使用:

$ ./mnt_mangle '//server/folderWith-ñ-char'
//server/folderWith-ñ-char