mount not working properly on Cygwin - cygwin

I have WinXP box and Cygwin installed on it. There are many network drive mapped on windows. when I execute mount command on windows (which uses the same mount executable as Cygwin) a get list of network mapped drives. But same when I do through Cygwin, I see only C: is mapped.
On Windows command prompt.
C:\CodeDance> mount
C:\cygwin\bin on /usr/bin type system (textmode)
C:\cygwin\lib on /usr/lib type system (textmode)
C:\cygwin on / type system (textmode)
c:\Own on /own type system (binmode)
v: on /cygdrive/v type system (binmode)
c: on /cygdrive/c type system (textmode,noumount)
k: on /cygdrive/k type system (textmode,noumount)
l: on /cygdrive/l type system (textmode,noumount)
m: on /cygdrive/m type system (textmode,noumount)
o: on /cygdrive/o type system (textmode,noumount)
x: on /cygdrive/x type system (textmode,noumount)
y: on /cygdrive/y type system (textmode,noumount)
z: on /cygdrive/z type system (textmode,noumount)
Cygwin, on bash
code#DANCE /cygdrive $ mount
C:\cygwin\bin on /usr/bin type system (textmode)
C:\cygwin\lib on /usr/lib type system (textmode)
C:\cygwin on / type system (textmode)
c:\Own on /own type system (binmode)
v: on /cygdrive/v type system (binmode)
c: on /cygdrive/c type system (textmode,noumount)
The /cygdrive/v that shown mounted above is not accessible either.

On windows command prompt, try to get the mount commands you need execute to replicate what you have using:
mount -m
Then execute those command in the bash shell (the parts that are missing).

Related

register mount command for a custom filesystem

In both, mount command arguments and in /etc/fstab entries, we specify the filesystem of a mount point by its name, for exp. ext4, ntfs-3g, hfsplus
How does a linux system now how to properly mount each filesystem by name?
Is it possible to register a mount method for:
a kernel space filesystem (ko)
register a user space filesystem (fuse)

Gio Mount Returns Different Outputs

I'm trying to make python script for mounting using Gio Module, however when i add my script to crontab or run it as a service, i only get filesystem root:
In shell:
gio mount -l
returns every mountable drive and volume,
however, when i run:
sudo gio mount -l
or
sudo -u myuser gio mount -l
i only get Filesystem root and floppy.
The difference i realized is,
sudo, or my script auto ran by system returns the volumes with type "GUnixVolume",
and just "gio mount -l" returns type GProxyDrive.
So what is the difference, and how can i detect external drives when my script is ran by system?

Shell script to mount windows network location in linux machine

I have two questions here. I am able to mount a windows network path in my Ubuntu machine by doing following:
sudo mount -t cifs -o username=user \\\\my_windows\\test /net/loc
All the files and folders present in Windows machine is now available in Ubuntu machine with path '/net/loc'.
Here are my doubts:
I can see all files of windows in linux path. Is it possible to create files/folders in Linux path(the mount path where windows path is mounted) and it will be reflected in Windows machine? I am not able to write in Linux machine where windows network location is mounted. It throws me error "Can't open file for writing".
I am trying to write a shell script (a ksh file) which will mount the windows network path. I wrote the below mount command in my file but this command prompts for password. Is there any way, I can write the command in shell script that it will not ask me for password and I can pass it as either as a parameter or some other mechanism?
mount -t cifs -o username=user \\my_windows\test /net/loc
Thank you
Password can be passed as below
sudo mount -t cifs -o username=${USER},password=${PASSWORD},uid=,gid= //server-address/folder /mount/path/on/ubuntu
And with root access I am able to write in Linux path.
More information is here https://unix.stackexchange.com/questions/68079/mount-cifs-network-drive-write-permissions-and-chown

Extract VMDK file using power iso

I was trying to extract a vmdk file using poweriso in linux mint by using the following command,
poweriso extract sample-disk1.vmdk / -od /home/local/test/VMDK/extracted/
But, I am getting the following error ,
PowerISO Copyright(C) 2004-2008 PowerISO Computing, Inc
Type poweriso -? for help
sample-disk1.vmdk: The file format is invalid or unsupported.
According to the documentation here power iso supports vmdk file,
Support all popular virtual disc image files, such as VMWare Virtual Disc Images(*.vmdk), VirtualBox Virtual Disc Images(*.vdi), Virtual PC Virtual Disc Images(*.vdi).
How can I extract a vmdk file using power iso?
I am providing information which I used to mount the qcow2 image and I hope the same will apply for vmdk too.
Installation of GuestFish
$> apt-get install libguestfs-tools
Mount qcow2 image
$> guestfish
Welcome to guestfish, the guest filesystem shell for
editing virtual machine filesystems and disk images.
Type: 'help' for help on commands
'man' to read the manual
'quit' to quit the shell
><fs> add vAP.qcow2
><fs> run
><fs> list-filesystems
/dev/sda1: ext2
/dev/sda2: ext2
/dev/sda3: ext2
/dev/sda4: reiserfs
><fs> mount /dev/sda2 /
><fs> ls /
.ash_history
.rnd
.ssh
ash_env
bin
boot
bzImage
custom
defaults
dev
><fs> umount /
><fs> exit
You can make use of copy-in and copy-out to copy files from vmdk to host and vice versa

Vagrant unable to mount in Linux guest with VirtualBox Guest Additions on Windows 7

I'm trying to get a Linux VM using Virtual Box, Virtual Box Guest Additions, and Vagrant running and to mount a folder on my Windows 7 machine. I've tried the suggestions in this question, but still get the same error.
I'm running the following versions:
Virtual Box: 4.3.18 r96516
Virtual Box Guest Additions: 4.3.18
Vagrant: 1.6.5
Vagrant Plug-ins:
vagrant-login: 1.0.1
vagrant-share: 1.1.2
vagrant-vbguest: 0.10.0
When I run vagrant reload I get the following error:
Failed to mount folders in Linux guest. This is usually because
the "vboxsf" file system is not available. Please verify that
the guest additions are properly installed in the guest and
can work properly. The command attempted was:
mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group vagrant | cut -d: -f3`,
nolock,vers=3,udp,noatime core /tbm
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant`,nolock,vers=3,udp,noa
time core /tbm
The error output from the last command was:
stdin: is not a tty
unknown mount option `noatime'
valid options:
rw mount read write (default)
ro mount read only
uid =<arg> default file owner user id
gid =<arg> default file owner group id
ttl =<arg> time to live for dentry
iocharset =<arg> i/o charset (default utf8)
convertcp =<arg> convert share name from given charset to utf8
dmode =<arg> mode of all directories
fmode =<arg> mode of all regular files
umask =<arg> umask of directories and regular files
dmask =<arg> umask of directories
fmask =<arg> umask of regular files
I've tried un-installing, installing, updating the vagrant-vbguest plugin:
vagrant plugin install vagrant-vbguest
I've tried running the following command after running vagrant ssh, but still get the same error message:
sudo ln -s /opt/VBoxGuestAdditions-4.3.18/lib/VBoxGuestAdditions /usr/lib/VBoxGuestAdditions
I'm not super familiar with mount options, but I tried executing your command in a similar VM I'm running and got the same error regarding the noatime option.
I read through the documentation (man 8 mount) which states somewhere after line 300 or so, in the FILESYSTEM INDEPENDENT MOUNT OPTIONS that: Some of these options are only useful when they appear in the /etc/fstab file.
I suspect this is your problem. I edited my /ect/fstab file to change one of my mounts to /dev/mapper/precise64-root / ext4 noatime,errors=remount-ro 0 1 this option and then ran the following:
sudo mount -oremount /
vagrant#precise64:~$ mount
/dev/mapper/precise64-root on / type ext4 (rw,noatime,errors=remount-ro)
...
I edited the file again to remove the option and:
vagrant#precise64:~$ sudo mount -oremount /
vagrant#precise64:~$ mount
/dev/mapper/precise64-root on / type ext4 (rw,errors=remount-ro)
...
I don't know if you're providing these mount commands or if they come from a plugin, but it seems like (at least in your environment), the option works fine, but can't be specified on the command line.

Resources