Samba

Via Samba naar je Android telefoon

Als gebruiker van zowel een Linux desktop (Ubuntu 12.04 beta) én een (custom rom) Android telefoon is het handig om die twee met elkaar te laten praten. Dat gaat natuurlijk prima met behulp van een usb kabel of bluetooth.

Maar je kan ook via je netwerk verbinding maken met je telefoon. De meest logische werkwijze lijkt mij het gebruik van het NFS protocol. Helaas komt Google Play  dan niet verder als het spel Need For Speed.

Maar met behulp van Samba kan je wel aan de slag. Het is echter wel noodzakelijk dat je telefoon is voorzien van root toegang.

Samba Filesharing

Daarnaast heb je op je Android telefoon een gratis applicatie nodig: Samba filesharing.

 

 

 

Access your Android device over wifi as a Windows shared folder.

* Samba filesharing server for Android.
* Your Android device becomes visible to other Windows (& SMB compatible) computers on your network.
* The ‘external’ storage in your Android device is accessible as a network shared folder.
* Copy files and folders to and from your Android device using drag and drop.
* Customizable username, password, Windows workgroup name, and device network (NETBIOS) name.

Als je dit programma hebt geïnstalleerd voeg je via “Menu” & “Settings” een username en wachtwoord toe en  en doet dan een (“menu”) mediascan. Vanaf dat moment kan je gewoon via Nautilus toegang verkrijgen tot je Android telefoon en eenvoudig bestanden uitwisselen met je desktop.

Automount een QNAP NFS Share

Als je een linux server bezit wil je die kunnen benaderen vanuit Ubuntu. Dat kan o.a. met Samba. Het is echter prettiger om gebruik te maken van het NFS protocol.

  • Het Network File System, of kortweg NFS, is een netwerkbestandssysteem dat oorspronkelijk werd ontworpen door Sun Microsystems in 1984 voor hun eigen Unix-werkstations.
  • NFS maakt het mogelijk om bestanden op te vragen over het netwerk op dezelfde manier als men dit zou doen voor bestanden op de lokale schijf.
  • NFS bestaat enkel uit een bestandssysteem en heeft niets te maken met procesbeheer of geheugenbeheer.

Een ander voordeel is dat je onder Nautilus de bestanden kan zien zoals je lokaal ook gewend bent. Zo worden foto’s dus keurig met een thumbnail weergegeven.

Zelf gebruik ik een QNAP TS-419P NAS en dat is natuurlijk ook een server. Gelukkig wordt daarin ook NFS als service aangeboden. Als je die aanzet dan kan je daar ook gebruik van maken.

Om zondermeer gebruik te kunnen maken van NFS op je Ubuntu desktop heb je een paar stappen te maken. Ten eerste installeer je nfs-common (sudo apt-get install nfs-common).

Let op: https://www.digiplace.nl/krijg-je-die-nfs-netwerkshare-niet-meer-automatisch-verbonden-onder-ubuntu-14-10/

Je maakt vervolgens een mountpoint aan op je computer. Zelf gebruik ik daarvoor /mnt/Nas (sudo mkdir /mnt/Nas). Straks wordt de NAS dus gekoppeld aan die plek op je computer. Belangrijk: Zorg dat je zelf de owner/eigenaar bent van die map. Doe dat met behulp van chown en de volgende syntax : sudo chown -R jouwinlognaam:jouwinlognaam /mnt/Nas (of jouw mountpoint)

Vervolgens edit  je fstab (gksudo gedit /etc/fstab) en plaatst daar een extra regel met de volgende syntax:

example.hostname.com:/jouwkeuze /local/ubuntu nfs rsize=8192,wsize=8192,timeo=14,intr

example.hostname.com:/ubuntu is de naam van de NAS (of het IP adres) met achter de dubbele punt de share map die je wil koppelen.
/local/ubuntu is de lokatie waarmee je wilt koppelen. In mijn voorbeeld is dat dus /mnt/Nas
De rest neem je over. De time0=14 is de timeout die het systeem in acht neemt voordat de koppeling tot stand komt. Dat kan sneller, maar deze waarde is veilig ingesteld.

Als je dan je desktop herstart en even die timeout afwacht kan je onder Nautilus naar je aangemaakte /mnt/Nas toe klikken om meteen toegang te krijgen tot je share op je NAS.

 

Kijk naar je netwerk shares

Een van de eigenaardigheden onder Ubuntu is het gegeven dat je met een ingeschakelde firewall (zoals bijv. ufw) geen mogelijkheid hebt om al je (Windows) Netwerk Shares te zien. Er zit onder de grafische interface van Gufw welliswaar een dienst als Samba ingebakken maar die dient alleen maar voor een eventueel ingestelde Samba server.

En ik wil dat mijn client gewoon alle beschikbare shares op mijn netwerk kan zien. Niets meer en niets minder.

Voor de oplossing van deze niet onlogische behoefte moet je even onder de motorkap van UFW duiken.

Vanuit een terminal:

gksudo gedit /etc/default/ufw

En voeg vervolgens de volgende regel toe aan het einde van dat bestand:

IPT_MODULES=”nf_conntrack_netbios_ns”

Vanaf dat moment kan je onder Nautilus gewoon op Netwerk klikken en al je netwerk shares vinden.

Bron:  bugrapport

Hoe verbind je Ubuntu automatisch met een Samba share op een QNAP NAS?

Liever een NFS oplossing? Kijk dan hier (werkt veel beter op een Linux computer)

Als je naast je ‘gewone’ computer ook nog andere computers in je netwerk hebt hangen dan wil je daar op enig moment natuurlijk ook naar toe kunnen gaan. Als die andere computers werken onder Windows dan maak je daarvoor meestal gebruik van het zgn. Samba protocol. Het werkt snel, wordt goed ondersteund door Linux en je kan er zondermeer gebruik van maken via bijvoorbeeld Nautilus. Samba is zo ingeburgerd dat ook Linuxservers Samba bijna standaard aan boord hebben.

Het is eenvoudig om verbinding te krijgen met een samba share. In nautilus tik je in smb://usernaam@ipadresvanserver/sharenaam en je komt binnen. Maar is het niet gemakkelijker om het automatisch te doen? Je zet je computer aan en de samba share is beschikbaar. Hoe dat gaat staat in dit artikel.

Aan de slag op de server

In mijn situatie gaat het om een gewenste permanente  verbinding tussen mijn Ubuntu desktop en een in mijn netwerk opererende QNAP NAS (TS-419P). Die NAS geeft de mogelijkheid om met Samba te werken. Dankzij de eenvoudige webinterface van QNAP is het een kwestie van een vinkje plaatsen bij de Netwerk Services.

Het instellen van de cliënt

Op de desktop moet er wel wat meer gebeuren. Om te beginnen installeer je het pakket smbfs met het commando sudo apt-get install smbfs

The SMB/CIFS protocol provides support for cross-platform file sharing with Microsoft Windows, OS X, and other Unix systems.

Omdat ik specifiek wil dat een share op mijn QNAP NAS constant is gemount moet ik ervoor zorgen dat bij het booten de inloggegevens van die NAS bekend zijn. Daarom maak je een klein onzichtbaar tekstbestandje (gksudo gedit /root/.naslogin) en plaatst daarin je gebruikersnaam en je wachtwoord. Let wel..de gebruikersnaam en het wachtwoord van de gebruiker op je NAS.

In dit voorbeeld noem ik  dat bestand dus .naslogin waardoor de PUNT ervoor zorgt dat het bestand niet automatisch zichtbaar wordt weergegeven. In dit bestand komen maar twee regels tekst te staan:

username=
password=

En inderdaad, achter het = teken komt dan de gebruikersnaam en wachtwoord te staan van de gebruiker op die NAS. Omdat het bestand onzichtbaar in de /root map komt te staan heeft het in ieder geval een veilig plekje gevonden.

Dit bestand moet je aanpassen met het commando: sudo chmod 600 /root/.naslogin

Vervolgens open je met rootrechten wederom je editor en past het bestand /etc/hosts aan (gksudo gedit /etc/hosts) In dit bestand voeg je het IP adres van je server met daarachter de netwerknaam toe. De standaard netwerknaam van een QNAP NAS is QNAP en als je die niet zou hebben veranderd komt er dus QNAP achter het IP adres van je NAS te staan.

De volgende stap is het aanmaken van een zgn. mountpoint. Dat is een map die straks de complete inhoud van de QNAP share laat zien alsof het op jouw computer staat. Je maakt die map aan met het commando sudo mkdir /media/mapnaam. In dit voorbeeld noem ik die map dus ‘mapnaam’

Die map moet je vervolgens even goed in zijn rechten zetten. Vanuit de terminal doe je dat met het commando sudo chmod 777 /media/mapnaam

We zijn er nu bijna. Je moet nu het bestand /etc/fstab aanpassen. Dat doe wederom met rootrechten en dus met gksudo gedit /etc/fstab. Maak het venster van gedit wat groter zodat alles keurig wordt uitgelijnd en voeg een nieuwe regel toe met de volgende syntax:

//ipadresvanjeserver/sharenameopserver /media/mapnaam cifs credentials=/root/.naslogin,rw,iocharset=utf8,dir_mode=0777,file_mode=0777  0 0

Let dus goed op dat je de juiste waardes vermeld (ipadres, mapnaam, sharenaam en inlogbestand). Als het allemaal correct is wordt de verbinding gemaakt als je daarna het commando sudo mount -a intikt in je terminal. Je ziet dan een icoon van de share op je bureaublad verschijnen.

Tot slot:

Als je hierna je computer herstart zie je meteen weer dat icoon op je bureaublad staan én een vermelding in Nautilus. Als je liever geen icoon op je bureaublad ziet staan dan kan je kiezen om sudo gconf-editor in te voeren en dan het  vinkje te verwijderen bij de entry:  Apps/nautilus/desktop.. volumes_visible.

Bestanden delen tussen Windows en Ubuntu

Digiplace heeft op Livre een nieuwe bijdrage geleverd in de serie “Tips en Trucs”. Dit keer is een greep gedaan uit het eigen archief.

Windows gebruikers kunnen onderling bestanden uitwisselen dankzij het Server Message Blocks (SMB) protocol. Denk dan aan het delen (sharen) van mappen en bestanden. Maar gelukkig is daar ook een opensource variatie op gemaakt die naadloos kan samenwerken met die Windows gebruikers: Samba-server. De mogelijkheden van Samba-server zijn zeer uitgebreid. Zo kan je b.v. Samba integreren in Active Directory. Op oudere systemen kan je Samba server zelfs inzetten als Primary Domain Controller (PDC). Maar die mogelijkheden laten we hier verder onbesproken.

Laten we gewoon eens kijken hoe de samenwerking kan verlopen tussen Ubuntu Linux  en een Windows computer. Bedenk wel dat Samba-server met name is bedoeld om in een (Windows) omgeving ingezet te worden als fileserver. Dan heb je b.v. geen grafische interface (zoals Gnome, KDE of XFCE) op die server draaien. Deze handleiding laat de eerste grondbeginselen zien vanuit een desktop situatie. Het is zeker geen handleiding om een fileserver mee op te zetten.

Meer lezen? Dan snel naar Livre: Bestanden delen tussen Ubuntu en Windows computers.

Scroll naar boven