"-1: Unspecified error."
My personal favorite when copying a file to or from the device, the "-6: Not Supported."
Removed demonstration gist, but you can view it here if you are interested.
After more use, I found that jmtpfs is useful for one or two files, but if you need to transfer, say, all of your phone data to your computer as a backup, it was not reliable. I found the go-mtpfs solution to work very well. Initially I was not very excited about this solution because it required installing another language (Google's "Go") and some usb libraries, BUT -- the author has kindly provided (or linked to) compiled binaries, which eliminate these worries!
All you need to do is download the binary for your environment. In my case I chose go-mtpfs.x86_64.
Make the binary executable and test it to see if it runs:
Then plug in your phone and mount it:
That's it! You should see your phone mounted at ~/phone. Now you can use Nautilus or whatever to copy and move files. The author warns that renaming between directories isn't implemented, and you may not see updates to the filesystem done by the phone. These concerns are minor for what I'm after.
To unmount the phone, do:
Works very reliably. I just transferred 2GB of data without an issue.