4

I am trying to mount a smb share on my embedded Linux running on ARM (3.6.9) with busybox 1.21

mount -t cifs //192.168.0.12/mydata /mnt/myData 

results in an invalid argument error:

mount: mounting /192.168.0.12/mydata/ on /mnt/myData failed: Invalid argument

CIFS support is definetly installed and the directories exist. Is there any syntax difference in busybox's mount command? Thank in advance!

tzippy
  • 454

4 Answers4

1

The clue is in the output:

mount: mounting /192.168.0.12/mydata/ on /mnt/myData failed: Invalid argument

Shares are not referenced starting with a single /.

For CIFS shares you need to use backslashes. You then need to double up these to escape them, otherwise the shell thinks they have a special meaning.

Try:

mount -t cifs \\\\192.168.0.12\\mydata /mnt/myData
deed02392
  • 3,132
  • 6
  • 30
  • 36
1

In order to mount CIFS volumes, the mount command needs to prepare a bit of extra information for the kernel, which is why you have to use a special mount.cifs command for that. The regular mount command will automatically defer to that as long as it is installed, so you don't normally see that.

0

As mpy commented to the original question,

mount -t cifs //192.168.1.11/Files /mnt/files -o username=windows_user,password=windows_pwd

is doing the job. Just append the -o part to your command.

BusyBox v1.8.1

I also wanted to mention, that on my embedded system there is no mount.cifs available and anyway it works.

-1

Just put some quotes around the directory to escape the slashes. Also handy if there are spaces in directory names.

mount -t cifs '//192.168.1.123/Mateo Disk'  /dev/myData -o username=alison,password=monkey