V tomto návodu si ukážeme, jak nastavit sdílení souborů mezi vaším LXC kontejnerem a Windows PC. Konfigurace je nastavena pro sdílení na lokální síti, takže oprávnění jsou benevolentní. V případě, že by se jednalo o instalaci veřejně dostupnou, bude nutné nastavit sdílení mnohem restriktivnějším způsobem.
V tomto článku si ukážeme jednoduchý postup, jak zpřístupnit složku Proxmox LXC kontejneru, tak aby byla dostupná z lokální sítě prostřednictvím Windows.
Mít přístup k souborům uloženým v kontejneru Proxmox v místní síti přímo z Windows může být užitečné - v mém případě byl hlavní důvod transcoding video a audio soborů, které v tomto kontejneru leží.
Krok 1: Instalace Samba v LXC Kontejneru
Připojte se k vašemu LXC kontejneru pomocí SSH klienta (např. PUTTY) a nainstalujte Sambu.
sudo apt-get install samba
Krok 2: Vytvoření Uživatele
Vytvoření nového uživatele "sambauser" pro přístup do sdílené složky a nastavení uživatelského heslo.
sudo adduser sambauser
sudo smbpasswd -a sambauser
Nyní ještě nastvíme oprávnění uživatele - pokud ještě nemáte nainstalován ACL, můžete jej nainstalovat pomocí sudo apt-get install acl
.
Použijte příkaz setfacl
pro přidání oprávnění pro sambauser
k složce /DATA/Media
.
Následující příkaz přidá uživateli oprávnění pro čtení, zápis a spouštění v této složce.
sudo setfacl -m u:sambauser:rwx /DATA/Media
Ověříme nastavení oprávnění:
getfacl /DATA/Media
Krok 2: Konfigurace sdílené složky
Otevřete konfigurační soubor pro službu Samba.
sudo nano /etc/samba/smb.conf
Na konec souboru stačí přidat sekci pro sdílení požadované složky, jejíž název uvedeme v hranatých závorkách.
[Media]
comment = My media directory
path = /DATA/Media
public = Yes
guest ok = Yes
read only = no
browsable = Yes
create mask = 0664
directory mask = 0775
force user = sambauser
Po úpravě stačí stisknout CRTL+O a ENTER. Tím se soubor uloží a můžeme restartovat službu Samba.
Co znamenají jednotlivé konfigurační direktivy?
comment = My media directory
- Tento komentář slouží jako popis sdílení. Je to volitelný popisek, který se může zobrazovat uživatelům.path = /DATA/Media
- Určuje cestu k adresáři, který chcete sdílet na síti. Můžete sdílet jakýkoliv jiný adresář na vašem systému, stačí změnit cestu.public = Yes
- Označuje, že sdílení je veřejné. Nevyžaduje se přihlašování uživatele. Alternativněpublic = No
vyžaduje, aby uživatelé byli ověřeni před přístupem ke sdílení.guest ok = Yes
- Umožňuje přístup bez ověření uživatele. Další nastavené jeguest ok = No
znamená, že přístup mají pouze ověření uživatelé.read only = no
- Umožňuje uživatelům nejen číst, ale i zapisovat do sdílené složky. Alternativně je možné nastavitread only = Yes
, což omezuje uživatele pouze na čtení souborů.browsable = Yes
- Umožňuje uživatelům vidět sdílenou složku při procházení sítě. Alternativně je možné nastavitbrowsable = No
pak skryje sdílení a složka nebude vidět při procházení sítě, ale stále bude přístupná, pokud uživatel zná přesný název sdílení.create mask = 0664
- Nastavuje výchozí oprávnění pro nově vytvořené soubory.directory mask = 0775
- Nastavuje výchozí oprávnění pro nově vytvořené adresářeforce user = sambauser
- Všechny operace na souborech budou prováděny jako uživatel sambauser.
Krok 3: Restart Služby Samba
Po úpravě konfigurace je nrestartovat službu Samba
sudo systemctl restart smbd
Krok 4: Nastavení Windows pro Přístup ke Sdílené Složce
Na Windows otevřete Průzkumníka souborů a do adresního řádku zadejte IP adresu stroje na kterém běží Proxmox LXC kontejner.
//192.168.1.50 #adresa LXC kontejneru v místní síti
Krok 5: Mapování Síťového Disku (Volitelné)
V Průzkumníku souborů na Windows můžete sdílenou složku namapovat jako síťový disk pro snadný přístup a opětovné připojení jednotky po dalším startu Windows. Stačí na procházenou složku kliknout pravým tlačítkem myši a zvolit "Mapovat síťovou jednotku".