Linux has a bad reputation where local area networking is concerned, and up until a few years ago it was well-deserved. Since then Linux distros have become a lot better at finding and connecting to other PCs, whether these are running Linux or Windows. Unfortunately there’s still nothing in Mint as simple and elegant as the Windows networking wizards, but the basics have become a lot simpler.
In this section I’ve chosen to use IP numbers as the basis for identifying other PCs on the network, because I find it’s generally more reliable. But you should find that the network name (e.g. the name given to your PC when you installed Mint) works too. It has the advantage that the IP number may change, especially for wifi devices, whereas the network name shouldn’t. To see your PC’s own network name, type ‘hostname’ in a terminal window.
Connecting to Ethernet or Wifi
If you have an Ethernet cable running from a broadband router, then connecting to the internet should just be a matter of plugging it in to your PC. You should see an indicator in the notification area saying that you’re connected. This will not yet give you access to the other computers on your network, but it’s a start.
To connect to a router via wifi, right-click the networking icon in the notification area or go through Control Center/Network (MATE) or Preferences/Network (Cinnamon) or System Settings/Network Settings (KDE). Find the ‘Wireless’ tab and enter the SSID and the password for your wireless network.
Connecting to other Linux PCs – SSH
You can connect up to another Linux PC fairly easily, provided you have permission to do so. What that boils down to is having the username and password for a valid account on to the other PC. You’ll still need these even though you’re going in through the ‘back door’, as it were.
Linux systems use a basic networking protocol called SSH, for ‘Secure SHell’. Any Linux PCs which have SSH installed can connect up by using the File Manager. SSH is not installed with Mint by default, but it’s easy to add using the terminal command:
sudo apt-get install ssh
Make sure you’ve done this on both PCs. (Even if SSH was already installed, it won’t hurt to install it again.)
Stay in the terminal program on both PCs and type the command:
You should see a list of details about the network connection, including a line that starts something like this: ‘inet addr: 10.0.0.12’. That four-part number is the IP address of that PC on your local network. Write it down!
Once you know the IP address, and the user name and password of a valid account on the PC you want to connect to, start your File Manager program (Nemo in MATE and Cinnamon, Dolphin in KDE) and go to the File menu. Choose ‘Connect to Server’. Select ‘SSH’ as the Service Type and put the IP number of the other PC in as ‘Server’. The first time you do this you’ll also be required to enter the other PC account’s user name and password. Click on ‘Connect’, and you should find yourself looking at the files and folders on the other PC.
To make a permanent link, repeat the process but click the ‘Make bookmark’ checkbox in the ‘Connect to Server’ panel. A link to the remote PC will appear in the bookmarks list to the left of the File Manager window.
Note that you’ll only have the same permissions on the remote PC that you would if you had logged in as normal with that username and password. If you have logged in as ‘fred’ then you’ll only be able to do what ‘fred’ can do, not what root can do.
Connecting to Windows PCs – SSH
To connect from your Mint PC to other PCs running Windows, you have two choices:
- Make your Windows machines visible to Mint by installing an SSH client on them.
- Make your Mint PC able to see Windows network shares by installing the Samba program.
Installing an SSH client on a Windows PC is relatively simple, and there are many to choose from, including both free and commercial applications. Putty is a popular free SSH server for both Linux and Windows platforms – http://www.chiark.greenend.org.uk/~sgtatham/putty. Others include OpenSSH and BitVise.
Once the SSH server is up and running on the Windows PC you should be able to connect to it from your Mint PC File Manager as described above. You can find the IP number of a Windows PC by opening a Command Prompt window and typing ‘ipconfig’ (rather than ‘ifconfig’).
For a Windows PC user to work with files on your Mint PC, they will also need to have SSH client software installed. This will include a File-Manager-type window where they can login and access your files and directories.
Connecting to Windows PCs – Samba
If you don’t have the authority to install SSH in Windows PCs on your network, or you want to take advantage of existing Windows network settings, you’ll need to install the networking protocol Samba on your Mint PC. This will allow it to communicate directly with a Windows network.
You can install Samba from the terminal window with the command:
sudo apt-get install samba4
It is designed to run in the background, and stores its configuration away in a protected text file called /user/samba/smb.conf. You can use sudo to edit this directly with the command:
sudo pluma /etc/samba/smb.conf
or for KDE:
sudo kate /etc/samba/smb.conf
but it’s easier and safer to use a utility like gadmin-samba, which will find the file for you and make a backup before carrying out any changes. You can install this with:
sudo apt-get install gadmin-samba
This will add gadmin-samba to the Mint menu.
Unfortunately Samba is enormously complicated, and how you set it up will depend on your Windows network, your permissions, your Windows workgroup name and many other factors. A thorough guide can be found at http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/install.html, though even they admit that the outcome is sometimes ‘abject frustration’!
When (or if) you get Samba working, you should be able to use the Mint File Manager to access Windows shares. Choose ‘Connect to Server’ and select ‘Windows share’ instead of ‘SSH’. Then supply the workgroup name and a username and password that will log you on to the host machine. And good luck!
Mounting network shares as folders
The network shares that you have access to can be mounted as folders on your own PC, so that they look and behave as if they are on your own hard disk. Before you can do this you will need to create an empty ‘dummy’ folder somewhere to which the share can be linked. The share folder can be anywhere on your system, but the traditional location is in the /mnt directory. If you use this directory, or any other protected directory, enter your File Manager as root and set the permissions of the directory so you can work with the files it contains.
To mount directory shares on a one-off basis, you can issue a sudo terminal command. The command will vary according to your system and the network, but it should look something like this:
sudo mount -t cifs //192.168.0.199/Volume_1/Pessoais /media/lua -o guest,rw,uid=1000,gid=1000,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777
Here ‘cifs’ is the default mounting system, the bit between the double slash and the ‘-o’ is the network name of the share, the dummy mount folder is /media/lua, and and the rest is details about the level of access to the files.
To set up a permanent share mount, go into root mode and edit the settings file /etc/fstab. This is set up when you first install Mint, with details of the mount points and access details for all your drives and partitions. Add a line of text identifying each share to the bottom of /etc/fstab, e.g.
192.168.0.199:/mnt/HD_a2/Pessoais /media/lua nfs users,rw,auto 0 0
Save the file, then ‘run’ /etc/fstab with its new content by issuing the terminal command:
sudo mount -a
and all the shares listed in the file should be mounted.
This is advanced stuff, and you may need help with settings and parameters. Google ‘mount network shares in Mint’ to get the most up-to-date information from the Web.
To share a folder located on your own PC with network-based users, right-click on it in the File Manager and look for a ‘Share’ option. Naturally you can only share folders that you have permission to open.