Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Sv translation
languageen

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

Anzeige der disks
Translations Ignore


Code Block
languagebash
title
Display of discs
# 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

Partitionierung mit
Translations Ignore


Code Block
languagebash
title
Partitioning with fdisk
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

Device für erzeugen
Translations Ignore


Code Block
languagebash
title
Create device for LVM
# 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

anlegen
Translations Ignore


Code Block
languagebash
titleCreate LVM
lvm vgcreate "vg_jtelshared" /dev/sdb1



Schritt 5 - Logical Volume anlegen

anlegen
Translations Ignore


Code Block
languagebash
titleCreate LVM
lvm lvcreate -l +100%FREE vg_jtelshared -n lv_jtelshared



Schritt 6 - File System erzeugen

File System erzeugen
Translations Ignore


Code Block
languagebash
title
Create file system
mkfs.xfs -L data /dev/vg_jtelshared/lv_jtelshared




Schritt 7 - Mount Point vorbereiten

Mount vorbereiten
Translations Ignore


Code Block
languagebash
title
Prepare mount point
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:

Translations Ignore


Code Block
languagebash
titlevi /etc/fstab
vi /etc/fstab
...
(folgende Zeile hinzufügen)
 
/dev/mapper/vg_jtelshared-lv_jtelshared /srv/jtel/shared        xfs     defaults 0   0



Und mounten:

mounten
Translations Ignore


Code Block
languagebash
title
mount
mount /srv/jtel/shared




Schritt 9 - Zwischenergebnis prüfen

Endergebnis prüfen
Translations Ignore


Code Block
languagebash
title
Check final result
df -h



Es sollte ein Eintrag für /srv/jtel/shared existieren mit entsprechend freier Platz. 

Install Samba and lsof

Translations Ignore


Code Block
titleInstall SAMBA
yum -y install samba samba-client lsof



Configure Samba

Translations Ignore


Code Block
titleConfigure 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:

Translations Ignore


Code Block
titleSeLinux, jtel User, Firewall
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:

Translations Ignore


Code Block
titleMore SAMBA users
useradd -m Administrator
printf '<password>\n<password>\n' | smbpasswd -a -s Administrator



Test SAMBA

Translations Ignore


Code Block
titleStart SAMBA
systemctl enable nmb
systemctl enable smb
systemctl start nmb
systemctl start smb



Manually link /home/jtel/shared

Translations Ignore


Code Block
titlelink /home/jtel/shared
ln -s /srv/jtel/shared /home/jtel/shared



Test the file mount

Translations Ignore


Code Block
titleTest file mount
# From the windows machines:
 
dir \\acd-store\shared




Sv translation
languagede

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

Code Block
languagebash
titleAnzeige der disks
# 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.

Code Block
languagebash
titlePartitionierung mit fdisk
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

Code Block
languagebash
titleDevice für LVM 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

Code Block
languagebash
titleLVM anlegen
lvm vgcreate "vg_jtelshared" /dev/sdb1

Schritt 5 - Logical Volume anlegen

Code Block
languagebash
titleLVM anlegen
lvm lvcreate -l +100%FREE vg_jtelshared -n lv_jtelshared

Schritt 6 - File System erzeugen

Code Block
languagebash
titleFile System erzeugen
mkfs.xfs -L data /dev/vg_jtelshared/lv_jtelshared

Schritt 7 - Mount Point vorbereiten

Code Block
languagebash
titleMount 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:

Code Block
languagebash
titlevi /etc/fstab
vi /etc/fstab
...
(folgende Zeile hinzufügen)
 
/dev/mapper/vg_jtelshared-lv_jtelshared /srv/jtel/shared        xfs     defaults 0   0

Und mounten:

Code Block
languagebash
titlemounten
mount /srv/jtel/shared


Schritt 9 - Zwischenergebnis prüfen

Code Block
languagebash
titleEndergebnis prüfen
df -h

Es sollte ein Eintrag für /srv/jtel/shared existieren mit entsprechend freier Platz. 

Install Samba and lsof

Code Block
titleInstall SAMBA
yum -y install samba samba-client lsof

Configure Samba

Code Block
titleConfigure 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:

Code Block
titleSeLinux, jtel User, Firewall
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:

Code Block
titleMore SAMBA users
useradd -m Administrator
printf '<password>\n<password>\n' | smbpasswd -a -s Administrator

Test SAMBA

Code Block
titleStart SAMBA
systemctl enable nmb
systemctl enable smb
systemctl start nmb
systemctl start smb

Manually link /home/jtel/shared

Code Block
titlelink /home/jtel/shared
ln -s /srv/jtel/shared /home/jtel/shared

Test the file mount

Code Block
titleTest file mount
# From the windows machines:
 
dir \\acd-store\shared