You probably will not again faced with the problem that Ubuntu sees the Windows network. This problem is typical for many distributions with the Gnome desktop. Largely the reason for this was a bug in GVFS, which is still not really fixed, so this feature works not always and not in all distributions.
In this article we will discuss what to do if Ubuntu does not see Windows balls, as it is still connected and is it possible to solve the problem.
- Why Ubuntu does not see Windows network?
- 1. To Install Samba
- 2. The working group
- 3. The Protocol version
- 4. Correct name resolution order
- 5. Not the interface
- 6. Debug
- 7. Problem in GVFS
- 8. Connect directly
- 9. Sharing in Windows
Why Ubuntu does not see Windows network?
As I wrote above Nautilus to connect to and view shared folders Windows uses a virtual filesystem gvfs. And that, in turn, uses the libsmbclient library to obtain the necessary data. So we can try to correct the situation by overriding some settings in /etc/samba/smb.conf. But it works not always.
1. To Install Samba
If the file server Samba is not installed, then it should be set to the file was created /etc/samba/smb.conf with the default settings. They will then be used by the library libsmbclient and smbclient utility, which you can use for testing. To install run:
sudo apt install samba
Check the Samba configuration file for errors with this command:
2. The working group
The default is the working group WORKGROUP. Make sure your working group has this name, also make sure that in /etc/samba/smb.conf has the correct workgroup name in the workgroup:
sudo vi /etc/samba/smb.conf
workgroup = WORKGROUP
3. The Protocol version
In modern Windows systems for sharing folders the file system is CIFS, using modern versions of SMB2 and SMB3 protocols. These protocols do not support a review of available shared folders as it expects to Nautilus. So that all worked it is necessary to use the old Protocol NT1. To enable it add the client parameter max protocol after setting workgroup:
client max protocol = NT1
After that, save the changes and restart the computer and check.
4. Correct name resolution order
Wrong order of the network name resolution can also be a problem. To fix it look in smb.conf option and lead it to such type:
name resolve order = bcast lmhosts host wins
Here first is bcast, broadcast messages that are sent by your local network and look for computers with shared folders.
5. Not the interface
If your computer has multiple network interfaces may smbclient tries to use the wrong interface. To view the list of interfaces, use the command:
Then look in /etc/samba/smb.conf interface parameter and replace its value is eth0 with the name of your interface which provides communication with a local network. For example enp0s8:
interfaces = 127.0.0.0/8 enp0s8
After this you should restart the Samba service:
sudo systemctl restart smbd
sudo systemctl restart nmbd
If a Windows network is still not working, you can try to debug GVFS to understand where exactly the problem occurs and what is its essence. For this we need to complete the current server GVFS and run your terminal with enabled debug option. To do this, run:
pkill gvfs; pkill nautilus
GVFS_DEBUG=all GVFS_SMB_DEBUG=10 $(find /usr/lib* -name gvfsd 2>/dev/null) --replace 2>&1 | tee gvfsd.log
Then open Nautils and log into my network places, Windows network. In the terminal will displays the error messages of the service. You can use these messages to look for information in Google or ask for help on the forums.
7. Problem in GVFS
A bug in GVFS, which I wrote above was observed for Samba version 4.8 and below. If the server supports higher level Protocol, the client tries to use this Protocol, like SMB2 or SMB3, but these protocols do not work displaying available resources. If you have this problem, then the complete solution will have to wait for updates or use the workaround described below.
8. Connect directly
Even if you are not running network discovery Windows, you can still connect to the desired computer and get the files from it. Navigate to Other places in the left pane of Nautilus. At the bottom you will see the Connect to server enter smb://serveraddress in the left box, and hit Enter:
After that, the system will prompt you to enter a user name and password to access the shared resource. This user needs to really exist on the machine to which you want to connect.
Enter the password and you will see the available shared folders:
9. Sharing in Windows
Make sure that Windows sharing was enabled. If sharing is off, you will never be able to gain access to resources. Open Windows Explorer and navigate to Network. If network access is disabled, the system will issue an appropriate warning:
Click on it to enable sharing, then select Turn on network discovery and shared access to files.
After that, the system again asks whether to allow access to all social networks. Answer in the affirmative:
You will then be able to access the shared resources on that computer.
In this article, we briefly discussed why Ubuntu sees the Windows network, and how to fix the problem. If a problem with the network detection persists, you can always try to connect manually. It doesn’t solve the underlying problem, but allows to obtain the files you need. You know other solutions? Share them in the comments!