Input/output error when attempting to mount a Windows NFS share – A server stack is the collection of software that forms the operational infrastructure on a given machine. In a computing context, a stack is an ordered pile. A server stack is one type of solution stack — an ordered selection of software that makes it possible to complete a particular task. Like in this post about Input/output error when attempting to mount a Windows NFS share was one problem in server stack that need for a solution. Below are some tips in manage your linux server when you find problem about linux, windows-server-2012, nfs, network-share, .
I created the Windows Server 2012 share using:
PS C:Windowssystem32> nfsshare testshare2=C:testshare2 -o anon=yes anonuid=0 anongid=0 rw=uuu.uuu.uuu.uuu testshare2 was shared successfully
Where uuu.uuu.uuu.uuu is the IP of my Ubuntu system.
Next, from the Ubuntu machine I mounted the Windows NFS share as follows:
sudo mount -t nfs xxx.xxx.xxx.xxx:/testshare2 /mnt/testshare2
Where xxx.xxx.xxx.xxx is the IP of the Windows Server 2012 machine.
No errors are shown when mounting, but when I
ls the mounted directory, the following appears:
ls: cannot open directory /mnt/testshare2/: Input/output error
I’m not showing any errors in Ubuntu’s syslog.
Edit 1: I get the same input/output error when attempting to mount the Server 2012 NFS share from a RHEL7 machine. Mount works fine I just can’t ls directory or touch files.
Edit 2: In Server 2012, the NFS log shows a successful mount to both Ubuntu and RHEL machines.
This is solved. On Server 2012:
Server Manager -> Shares
Removed the existing share
Deleted the previously shared folder
NFS Share - Quickthen clicked Next.
- Selected a new folder to share in
Type a custom paththen clicked
remote pathsthen clicked
- On the Authentication window, I selected
No server authentication, then selected
Enable unmapped user access by UID/GID
and made sure the
Allow unmapped user acess by UID/GIDradio
button was selected. Then clicked Next.
On the Share Permissions window, I clicked
Add Permissionswindow popped up. Here, next to
entered the IP of the remote Linux computer that would be mounting,
ANSI, and set
Read/Write. I then clicked
Addat the bottom which closed the
- On the Share Permissions window I confirmed settings entered in the
previous step, then clicked Next.
- On the Specify Permissions window, I clicked Next without making
- I confirmed settings on the
Confirm selectionswindow then clicked
Then from my RHEL7 system I issued:
mount -t nfs sss.sss.sss.sss:/somedata /mnt/somedata/
sss.sss.sss.sss is the IP of the Server 2012 system.
From the RHEL7 machine, I confirmed write access by issuing
date >> /mnt/somedata/date.txt
Then checked that the file existed from Server 2012.
When creating an NFS share from Windows Server 2016, the above instructions helped alot. One important piece is to also install the File Server Resource Manager role. Prior to that I only got input/output error and linux reported mount as nfs version 3. Afterward, linux reported nfs version 4.1 and the mount worked.