Delen (file sharing) MSWindows in Linux Het bekijken van bestanden vanaf een Puppy(linux) naar een MSWindow machine kan met de Samba software . Deze bestaat uit een SambaClient (aanwezig in Puppy) en een Sambaserver (is niet standaard aanwezig in Puppy) . SambaClient. Dit programma praat met een Samba server of een MSWindow server . Kennelijk heeft MSWindows t.g.v. het feit dat je bestanden kunt delen ook een server bij zich . Ik draai nog steeds met MSWindows 98 en dit gebruikt ik dan zamen met Puppy(linux) . Om verbinding te maken met de Window machine kun je de grafische interface LinNeighborhood gebruiken . Maar de rechtstrekse opdrachten werken misschien wel netzo snel . Om te zien wat gedeeld is : smbclient -I -L -o password= (ik veronderstel dat je nergens passwords hebt gezet ) Dit geeft : Sharename Type Comment --------- ---- ------- D Disk PRINTER$ Disk BROTHER Printer IPC$ IPC Externe interprocescommunicatie (IPC) Server Comment --------- ------- SERVERWIN98 MENNO TER HASEBORG Workgroup Master --------- ------- MSHOME SERVERWIN98 Je ziet dat een disk genaamd D en de BROTHER als printer zijn gedeeld . Gedeelde Bestanden bekijken . Om de bestanden te kunnen bekijken moet je de disk mounten zoals alle andere apparaten . Mogelijk dat jouw mount een -t smbfs berijpt , mijn Puppy(linux) niet . Zoniet dan kun je met smbmount een type disk mounten . LinNeighborhood maakt in /mnt een folder aan // maar je kunt ook zelf een mount point kiezen . v.b. : smbmount //SERVERWIN98/D /mnt/data -o password= Nu zie je de inhoud van D op /mnt/data . Gedeelde Printer gebruiken . Je kunt m.b.v. Samba client ook opdrachten uitvoeren op de samba server . v.b. : smbclient -N //SERVERWIN98/D -c "dir *.*" of folder uit D : smbclient -N //SERVERWIN98/D -c "dir /mydocs/*.*" Op de zelfde manier kun je ook printer . v.b. : smbclient -N //SERVERWIN98/BROTHER -c "print " Bedenk hierbij wel dat de PCL6 code of ascii bevat want dat is wat de BROTHER printer van mij begrijpt . De andere manier is om m.b.v. PDQ te gaan werken dan kun je ABI e.d. gebruiken naar je printer . Je moet daartoe in .ect/pdq in /interfaces een driver voor samba zetten . interface samba { help "Use this interface if your printer is connected to a samba server." requires "smbclient" # This is part of the Samba package. required_args "WHICH_PRINTER" argument { var = "WHICH_PRINTER" desc = "Samba printer name" help = "This is the Samba name of the printer. eg //computer_name/printer_name ." } send_exec { /usr/sbin/smbclient -N "$WHICH_PRINTER" -c "print -" <$INPUT } } Je maakt nu m.b.v. PDQ een nieuw printer aan , vaak moet je eerst een keer de pqd-rc weer maken (geen idee waar dat wordt weggeschreven) door pqd --debug-rc tegeven . Als het goed gegaan is staat in printrc dat de beschrijving voor je sharedprinter . v.b. : printer "BROTHER" { # Added by the wizard on Sat Sep 23 20:37:29 2006 location "bureau" model "HL5040" driver "ijs-pcl-6" interface "samba" driver_opts { } driver_args {"paper" = "a4"} interface_opts { } interface_args { "WHICH_PRINTER" = "//SEVERWIN98/BROTHER"} } Delen (sharing) Linux in MSWindows . Als ik het goed begrepen heb moet je dat een Sambaserver op je Linux instaleren . Je kunt deze halen van dotpups.de/dotpups/Network daar staat een samba-3.0.21c.pup Het instaleren m.b.v. puppy's install is een fluitje van een cent . Bedenk dat de install het ook gelijk in rc.local zet waarmee het bij booten gestart wordt . Met de hand starten en stoppen kan door /ect/rc.d/rc.samba stop|start|restart te geven . Goed je heb nu wel Samba aan de loop maar dan begint het feest pas . Samba heeft een configuratie bestand in /etc/samba staan . Heel eerlijk gezegd , ondanks alle documentatie , begrijp ik er niet veel van . Daar ik het alleen gebruik en niet deel met het internet zijn beveiligingen slecht . Het enige wat gedaan is de verbindingen naar/van buiten dicht zetten : hosts allow = 192.168.1. 192.168.2.0/255.255.255.0 127.0.0.1 Wat ook moet als je verbinding wil hebben met je MS window machine is de naam opgeven : workgroup = MSHOME ; moet gelijk zijn aan je MS window machines netbios name = Puppy-Server ; kies maar wat server string = Samba Server Om te lezen en schrijven zet de gast op : guest account = root Voor windows98 en later moet de encrypt aan zetten encrypt passwords = yes Om je folder te kunnen zien heb ik het de delen (share) op zichtbaar gezet : browseable = yes En om te kunnen schrijven en lezen : public = yes Je moet je login naam voor je MS window machine plaatsen in /etc/passwd Het meest simple (mogelijk stomste) is : mijn.MSwindow.naam:x:0:0:root:/root:/bin/sh Hierbij ben je eigenaar van /root dit voorkomt allerlei toegangs fouten . Nu moet je bij Samba aanmelden met naam en passwoord (zelfde als in je MSwindowsysteem) smbpasswd -a naam ; voeg een gebruiker toe smbpasswd -e naam ; aktiveer een gebruiker (vraagt om je password) Na al deze handelingen kun je Samba starten en op je MSwindow machine kijken in Netwerk omgeving of je Puppy-Server ziet staan . Onder Win98 moet je wel bij het opstarten gelijk aanmelden voor de netwerk omgeving . Vanuit Linux kun je je nu aanmelden met hetzelfde naam/passwd als je gebruikt voor het MSnetwerk . Een andere manier is om op je Linux machine een ftp server aan te zetten . Puppy heeft twee servers bijzich a) /root/ghttpd/gtkftpd of b)BetaFtpd server . Slot Heel veel van deze informatie heb ik gevonden op Puppy Linux Discussion Forum . Wel is het vaak kreatief zoeken . Groeten Menno (menno@fwn.rug.nl)