Erstellen des Stores mit LVM
Die meisten Linux / CentOS Installationen von uns arbeiten mit LVM. Diese Anleitung beschreibt, wie die Rolle STORE auf ein System mittels LVM installiert werden kann.
Schritt 1 - Feststellen der aktuellen config
# Freier Platz anzeigen
df -h
# Partitionen anzeigen
fdisk -l
# Festplatten anzeigen
ls /dev/sd*
# Falls die Platte noch nicht gesehen werden kann, dann SCSI Bus neu scannen
echo "- - -" > /sys/class/scsi_host/host0/scan
# Physische Volumes anzeigen die durch LVM verwaltet werden
lvm pvs
# Logische Volumes anzeigen die durch LVM verwaltet werden
lvm lvs
# Logische Volume Gruppen anzeigen die durch LVM verwaltet werden
lvm vgs
# Wo ist was gemounted
mount |
|
Die Informationen oben werden nun gebraucht. Die Konfiguration sollte geprüft werden, nicht das bereits ein LVM für das Storage vorgesehen ist.
Schritt 2 - Anlegen einer neuen Partition
Hier ist es erforderlich, dass man weiß, wo der zusätzlicher Platz zu finden ist. Es gibt 2 Varianten - entweder eine neue Platte, oder eine erweiterte Platte.
In beiden Fällen, wird eine neue Partition angelegt. Hier in diesen Beispiel, wurde eine neue Platte genutzt, die auf /dev/sdb zu finden ist.
Die Befehle unten sowie die Partitionsnummer (bei einer vorhandenen Platte ist die Partition dann nicht mehr zwingend 1), entsprechend anpassen.
Display of discs
fdisk /dev/sdb
# --> Bearbeiten der Partitionen auf /dev/sda
n
# --> Neue Partition anlegen
p
# --> Neue primary partition
1
# --> Neue Partition 1 anlegen (Ausgabe bei fdisk -1 oben betrachten)
Enter
# --> Bestätigung dass der erste verfügbarer Zylinder verwendet werden soll
Enter
# --> Bestätigung dass der letzte verfügbarer Zylinder verwendet werden soll (ergibt in Summe die maximale Größe)
t
# --> Typ der Partition ändern
8e
# --> Linux LVM
w
# --> Wenn OK, schreiben
reboot now |
|
Schritt 3 - Hereinnahme in LVM - Device Erzeugen
# Hier die Ausgabe vorher von /dev/sd* --> das hier ist die neue Platte (die 1. Partition auf /dev/sdb, sprich die zweite Festplatte, neu angelegte Partition)
lvm pvcreate /dev/sdb1 |
|
Schritt 4 - Volume Group anlegen
lvm vgcreate "vg_jtelshared" /dev/sdb1 |
|
Schritt 5 - Logical Volume anlegen
lvm lvcreate -l +100%FREE vg_jtelshared -n lv_jtelshared |
|
Schritt 6 - File System erzeugen
mkfs.xfs -L data /dev/vg_jtelshared/lv_jtelshared |
|
Schritt 7 - Mount Point vorbereiten
mkdir /srv/jtel
mkdir /srv/jtel/shared
chown -R jtel:jtel /srv/jtel/shared |
|
Schritt 8 - Mount Point in fstab festlegen und mounten
fstab Eintrag:
vi /etc/fstab
...
(folgende Zeile hinzufügen)
/dev/mapper/vg_jtelshared-lv_jtelshared /srv/jtel/shared xfs defaults 0 0 |
|
Und mounten:
Schritt 9 - Zwischenergebnis prüfen
Es sollte ein Eintrag für /srv/jtel/shared existieren mit entsprechend freier Platz.
Install Samba and lsof
yum -y install samba samba-client lsof |
|
Configure Samba
cat <<EOFF > /etc/samba/smb.conf
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
min protocol = NT1
ntlm auth = yes
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
read only = No
inherit acls = Yes
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = root
create mask = 0664
directory mask = 0775
[shared]
comment = jtel ACD Shared Directory
read only = no
public = yes
writable = yes
locking = yes
path = /srv/jtel/shared
guest ok = yes
create mask = 0644
directory mask = 0755
force user = jtel
force group = jtel
acl allow execute always = True
EOFF
sed -i -e "s/MYGROUP/WORKGROUP/g" /etc/samba/smb.conf |
|
Setup SeLinux, jtel User access and Firewall for Samba
Replace <password> with the password for the jtel user:
setsebool -P samba_enable_home_dirs=on samba_export_all_rw=on use_samba_home_dirs=on use_nfs_home_dirs=on
printf '<password>\n<password>\n' | smbpasswd -a -s jtel
firewall-cmd --zone=public --add-port=445/tcp --add-port=139/tcp --add-port=138/udp --add-port=137/udp --permanent
firewall-cmd --reload |
|
If necessary, add further users to samba - replacing password with the actual password for the user. Here, for example, the windows administrator user:
useradd -m Administrator
printf '<password>\n<password>\n' | smbpasswd -a -s Administrator
|
|
Test SAMBA
systemctl enable nmb
systemctl enable smb
systemctl start nmb
systemctl start smb |
|
Manually link /home/jtel/shared
ln -s /srv/jtel/shared /home/jtel/shared |
|
Test the file mount
# From the windows machines:
dir \\acd-store\shared |
|