Met het Samba protocol kun je makkelijk bestanden delen over een netwerk met bijvoorbeeld Windows computers, en andere apparaten die Samba ondersteunen.
Ik ben geen expert in het instellen van Samba, maar ik heb het werkend gekregen. Hieronder de instellingen waarmee ik de Raspberry Pi instel als fileserver.
Opmerking: Als je een harde schijf of USB stick wilt delen met aparte mappen en meerdere aparte gebruikers, dan moet je die schijf eerst formatteren in het EXT4 (Linux) formaat.
Als je een schijf deelt met het FAT of NTFS (Windows) formaat, dan is het niet mogelijk om aparte mappen aan te maken voor speciale gebruikers.
Oplossing: formatteer de USB stick als EXT4 schijf: sudo mkfs.ext4 /dev/sda -L untitled
Dit commando geeft een lijstje met schijven en nummers:
sudo blkid
Een gebruiker toevoegen:
sudo adduser naam (bijvoorbeeld: huub)
Installeren van Samba:
sudo apt-get install samba samba-common-bin
Instellingen wijzigen van in het bestand smb.conf:
sudo nano /etc/samba/smb.conf
workgroup = Workgroup (of vul de werkgroep van je PC in).
wins support = yes
Verwijder # voor deze regel:
security = user
In "Share Definitions" gedeelte staat de gebruiker "home" map al gedeeld (met read-only aan).
Maar: je moet nog wel de gebruiker toevoegen aan samba met: smbpasswd -a huub
Toevoegen ergens bij "Share Definitions" gedeelte:
VOORBEELD:
[pihome]
comment= Pi Home
# path=/home/pi
path=/media/STORAGE
path=/media/STORAGE
browseable=Yes
writeable=Yes
# only guest=no
guest ok = no
guest ok = no
create mask=0777
directory mask=0777
public=no
[pi_map1]
comment= Pi huub
path=/media/STORAGE/huub
browseable=Yes
writeable=Yes
guest ok =no
create mask=0777
directory mask=0777
public=no
[pi_openbaar]
comment= Pi Openbaar
path=/media/STORAGE/openbaar
browseable=Yes
writeable=Yes
# only guest=no
guest ok = yes
create mask=0777
directory mask=0777
sudo /etc/init.d/samba restart
Gebruikers toevoegen aan samba:
smbpasswd -a pi
of: smbpasswd -a huub
Mounten (koppelen) van een schijf testen met dit commando:
sudo mount /dev/sda1 /media/STORAGE
Automatisch mounten van een schijf met fstab:
sudo nano /etc/fstab
EXT4 schijf delen (dit is een betere methode dan VFAT):
/dev/sda1 /media/STORAGE ext4 auto,user,rw,exec 0 0
Of een VFAT (FAT32) schijf delen:
/dev/sda1 /home/pi/usbdrv vfat uid=pi,gid=pi,umask=0022,sync,auto,nosuid,rw,nouser 0 0
OF:
/dev/sda1 /media/STORAGE vfat uid=pi,gid=pi,umask=0022,sync,auto,nosuid,rw,nouser 0 0
[pi_map1]
comment= Pi huub
path=/media/STORAGE/huub
browseable=Yes
writeable=Yes
guest ok =no
create mask=0777
directory mask=0777
public=no
[pi_openbaar]
comment= Pi Openbaar
path=/media/STORAGE/openbaar
browseable=Yes
writeable=Yes
# only guest=no
guest ok = yes
create mask=0777
directory mask=0777
sudo /etc/init.d/samba restart
Gebruikers toevoegen aan samba:
smbpasswd -a pi
of: smbpasswd -a huub
Mounten (koppelen) van een schijf testen met dit commando:
sudo mount /dev/sda1 /media/STORAGE
Automatisch mounten van een schijf met fstab:
sudo nano /etc/fstab
EXT4 schijf delen (dit is een betere methode dan VFAT):
/dev/sda1 /media/STORAGE ext4 auto,user,rw,exec 0 0
Of een VFAT (FAT32) schijf delen:
/dev/sda1 /home/pi/usbdrv vfat uid=pi,gid=pi,umask=0022,sync,auto,nosuid,rw,nouser 0 0
OF:
OF met DMASK 000 (= chmod 777):
/dev/sda /media/STORAGE vfat auto,users,rw,flush,utf8=1,uid=pi,gid=pi,dmask=000,fmask=113 0 0
/dev/sda /media/STORAGE vfat auto,users,rw,flush,utf8=1,uid=pi,gid=pi,dmask=000,fmask=113 0 0
Eventueel loskoppelen van een schijf:
Geforceerde umount (LET OP: dit lukt niet als de mount vast is gekoppeld in Windows, dan moet je die eerst verbreken):
Geforceerde umount (LET OP: dit lukt niet als de mount vast is gekoppeld in Windows, dan moet je die eerst verbreken):
sudo umount -f /media/STORAGE
Opmerking: een lege schijf mount niet goed... Zet er dan even een test bestand op.
Opmerking: een lege schijf mount niet goed... Zet er dan even een test bestand op.
USB Stick:
USB Stick formatteren als EXT4:
sudo mkfs.ext4 /dev/sda -L untitled
/etc/fstab wordt dan zoiets:
sudo mkfs.ext4 /dev/sda -L untitled
/etc/fstab wordt dan zoiets:
/dev/sda /media/STORAGE ext4 auto,user,rw,exec 0 0
Map maken op de USB stick: sudo mkdir huub.
Eigenaar wijzigingen van die map: chown huub:huub huub
Map maken op de USB stick: sudo mkdir huub.
Eigenaar wijzigingen van die map: chown huub:huub huub