![SMBFS/CIFS — невозможно перейти по путям с пробелами](https://rvso.com/image/1035915/SMBFS%2FCIFS%20%E2%80%94%20%D0%BD%D0%B5%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%20%D0%BF%D0%B5%D1%80%D0%B5%D0%B9%D1%82%D0%B8%20%D0%BF%D0%BE%20%D0%BF%D1%83%D1%82%D1%8F%D0%BC%20%D1%81%20%D0%BF%D1%80%D0%BE%D0%B1%D0%B5%D0%BB%D0%B0%D0%BC%D0%B8.png)
Используя Ubuntu Server 10.04 LTS, я недавно обновил Samba и SMBFS до последней версии через apt-get, и когда я монтирую наш общий ресурс Windows через SMB, я получаю следующую ошибку:
root@orbital testsmb/test# mkdir "spaces test"
root@orbital testsmb/test# ll
total 5
drwxr-xr-x 3 nobody nobody 0 Aug 4 17:32 .
drwxr-xr-x 37 nobody nobody 0 Aug 4 17:24 ..
drwxr-xr-x 0 nobody nobody 4096 Aug 4 17:32 spaces test
root@orbital testsmb/test# cd spaces\ test/
dirname: extra operand `test'
Try `dirname --help' for more information.
dirname: missing operand
Try `dirname --help' for more information.
-su: [: =: unary operator expected
basename: missing operand
Try `basename --help' for more information.
root@orbital /spaces# pwd
/home/testsmb/test/spaces test
dirname: extra operand `test'
Try `dirname --help' for more information.
dirname: missing operand
Try `dirname --help' for more information.
-su: [: =: unary operator expected
basename: missing operand
Try `basename --help' for more information.
Даже использование кавычек, одинарных и двойных, не работает:
root@orbital /spaces# cd ..
root@orbital testsmb/test# cd "spaces test"
dirname: extra operand `test'
Try `dirname --help' for more information.
dirname: missing operand
Try `dirname --help' for more information.
-su: [: =: unary operator expected
basename: missing operand
Try `basename --help' for more information.
root@orbital /spaces# cd ..
root@orbital testsmb/test# cd 'spaces test'
dirname: extra operand `test'
Try `dirname --help' for more information.
dirname: missing operand
Try `dirname --help' for more information.
-su: [: =: unary operator expected
basename: missing operand
Try `basename --help' for more information.
Вот мой очищенный /etc/fstab:
//192.168.xx.xx/winshare /home/testsmb smbfs rw,credentials=/etc/samba/winshare.creds,uid=nobody,gid=nobody,auto 0 0
- Ничего из этого не происходит в локальных файловых системах.
- Кроме того, более старая версия SuSE с древней smbfs не сталкивается с этими проблемами.
решение1
У вас есть сломанная настройка псевдонима для команды cd, которая пытается сделать что-то с участием dirname
и su
. Исправьте или удалите сломанный псевдоним.