Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:repository_ausliefern_centos_7

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
tachtler:repository_ausliefern_centos_7 [2014/12/17 14:38] – [nfs: /etc/exports] klaustachtler:repository_ausliefern_centos_7 [2017/09/16 17:04] (aktuell) – [nfs: /etc/sysconfig/nfs] klaus
Zeile 782: Zeile 782:
 Diese kann mit nachfolgendem Befehl erstellt werden: Diese kann mit nachfolgendem Befehl erstellt werden:
 <code> <code>
-# touch /var/lib/tftpboot/pxelinux.cfg/menumain.cfg+# touch /var/lib/tftpboot/pxelinux.cfg/menumain.msg
 </code> </code>
  
Zeile 836: Zeile 836:
 Das Aussehen des Text-Menüs, könnte wie nachfolgend dargestellt aussehen: Das Aussehen des Text-Menüs, könnte wie nachfolgend dargestellt aussehen:
  
-PXE Boot Menü - Menü+{{:tachtler:virtualisierung:pxe-boot_-_centos7_menu.png|PXE Boot Menü - Menü}}
  
 === tftp: Boot Menü: grafisches Menü === === tftp: Boot Menü: grafisches Menü ===
Zeile 864: Zeile 864:
 Das Aussehen des grafischen Menüs, könnte wie nachfolgend dargestellt aussehen: Das Aussehen des grafischen Menüs, könnte wie nachfolgend dargestellt aussehen:
  
-PXE Boot Menü - grafisches Menü+{{:tachtler:virtualisierung:pxe-boot_-_centos7_vesa.png|PXE Boot Menü - grafisches Menü}}
  
 ==== tftp: Boot-Menü Dateirechte ==== ==== tftp: Boot-Menü Dateirechte ====
Zeile 919: Zeile 919:
 Die durchzuführende Anpassung sieht wie folgt aus: Die durchzuführende Anpassung sieht wie folgt aus:
  
-(**Komplette Konfigurationsdatei**):+:!: **BIS CentOS Version --> 7.3 <--** (**Komplette Konfigurationsdatei**):
 <code ini> <code ini>
 # #
Zeile 939: Zeile 939:
 # #
 # Optional arguments passed to rpc.nfsd. See rpc.nfsd(8) # Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
-RPCNFSDARGS=""+# Tachtler - Enable mount NFSv2 (for older clients) 
 +# default: RPCNFSDARGS="
 +RPCNFSDARGS="-V 2"
 # Number of nfs server processes to be started. # Number of nfs server processes to be started.
 # The default is 8.  # The default is 8. 
Zeile 950: Zeile 952:
 # default: RPCMOUNTDOPTS="" # default: RPCMOUNTDOPTS=""
 RPCMOUNTDOPTS="-p 892" RPCMOUNTDOPTS="-p 892"
 +# Port rpc.mountd should listen on.
 +#MOUNTD_PORT=892
 # #
 +# Optional arguments passed to rpc.statd. See rpc.statd(8)
 +# Tachtler
 +# default: STATDARG=""
 +STATDARG="-p 662 -o 2020"
 +#
 +# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
 +RPCIDMAPDARGS=""
 +#
 +# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
 +RPCGSSDARGS=""
 +# Enable usage of gssproxy. See gssproxy-mech(8).
 +GSS_USE_PROXY="no"
 +#
 +# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
 +RPCSVCGSSDARGS=""
 +#
 +# Optional arguments passed to blkmapd. See blkmapd(8)
 +BLKMAPDARGS=""
 +</code>
 +
 +:!: **AB CentOS Version --> 7.4 <--** (**Komplette Konfigurationsdatei**):
 +<code ini>
 +#
 +# Optinal options passed to rquotad
 +# Tachtler
 +# default: RPCRQUOTADOPTS=""
 +RPCRQUOTADOPTS="-p 875"
 +#
 +# Optional arguments passed to in-kernel lockd
 +#LOCKDARG=
 +# TCP port rpc.lockd should listen on.
 +# Tachtler
 +# default: #LOCKD_TCPPORT=32803
 +LOCKD_TCPPORT=32803
 +# UDP port rpc.lockd should listen on.
 +# Tachtler
 +# default: #LOCKD_UDPPORT=32769
 +LOCKD_UDPPORT=32769
 +#
 +# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
 +# Tachtler - Enable mount NFSv2 (for older clients)
 +# default: RPCNFSDARGS=""
 +RPCNFSDARGS="-V 2"
 +# Number of nfs server processes to be started.
 +# The default is 8. 
 +RPCNFSDCOUNT=8
 +# Set V4 grace period in seconds
 +#NFSD_V4_GRACE=90
 +#
 +# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
 +# Tachtler
 +# default: RPCMOUNTDOPTS=""
 +# RPCMOUNTDOPTS=""
 +# Port rpc.mountd should listen on.
 +# default: #MOUNTD_PORT=892
 +MOUNTD_PORT=892
 # Optional arguments passed to rpc.statd. See rpc.statd(8) # Optional arguments passed to rpc.statd. See rpc.statd(8)
 # Tachtler # Tachtler
Zeile 972: Zeile 1032:
  
 :!: **WICHTIG** - Diese Konfiguration dient dazu, die **__zufällige__** Zuweisung von Ports für den **''rpc.mountd''** Dienst/Daemon zu unterbinden und immer den Port **892** zu verwenden, da sonst **Firewall**-Freischaltungen zu einem Problem werden würden. Die weiteren Änderungen sind optional, aber vorausschauend für eine erweiterte Nutzung bereits vorkonfiguriert. :!: **WICHTIG** - Diese Konfiguration dient dazu, die **__zufällige__** Zuweisung von Ports für den **''rpc.mountd''** Dienst/Daemon zu unterbinden und immer den Port **892** zu verwenden, da sonst **Firewall**-Freischaltungen zu einem Problem werden würden. Die weiteren Änderungen sind optional, aber vorausschauend für eine erweiterte Nutzung bereits vorkonfiguriert.
 +
 +:!: **HINWEIS** - Ein Überprüfung, welche **NFS Versionen** unterstützt werden, kann mit nachfolgendem Befehl durchgeführt werden:
 +<code>
 +# cat /proc/fs/nfsd/versions
 ++2 +3 +4 +4.1 -4.2
 +</code>
 +bzw.
 +<code>
 +# rpcinfo -s
 +   program version(s) netid(s)                         service     owner
 +    100000  2,3,4     local,udp,tcp                    portmapper  superuser
 +    100005  3,2,1     tcp,udp                          mountd      superuser
 +    100024  1         tcp,udp                          status      29
 +    100003  4,3,2     udp,tcp                          nfs         superuser
 +    100227  3,2       udp,tcp                          nfs_acl     superuser
 +    100021  4,3,1     tcp,udp                          nlockmgr    superuser
 +</code>
 +* //**Wichtig ist hier die Zeile mit ''service: nfs''**//
 +
 +==== nfs: /etc/nfsmount.conf ====
 +
 +Um die Auslieferung eines gespiegelten Repositorys via **NFS-Server** zu realisieren, muss dessen Komponente **''nfs-mountd''** als Dienst/Deamon als Hintergrundprozess laufen. Dazu ist nachfolgende Konfiguration des **''nfs-mountd''** Dienst/Demon notwendig.
 +
 +Die Konfigurationsdatei, welche hierfür angepasst werden muss, ist unter folgendem Verzeichnis und mit nachfolgendem Namen zu finden:
 +  * ''/etc/nfsmount.conf''
 +
 +Die durchzuführende Anpassung sieht wie folgt aus:
 +
 +(**Komplette Konfigurationsdatei**):
 +
 +<code ini>
 +#
 +# /etc/nfsmount.conf - see nfsmount.conf(5) for details
 +#
 +# This is an NFS mount configuration file. This file can be broken
 +# up into three different sections: Mount, Server and Global
 +
 +# [ MountPoint "Mount_point"
 +# This section defines all the mount options that
 +# should be used on a particular mount point. The '<Mount_Point>'
 +# string need to be an exact match of the path in the mount 
 +# command. Example:
 +#     [ MountPoint "/export/home" ]
 +#       background=True
 +# Would cause all mount to /export/home would be done in
 +# the background
 +#
 +# [ Server "Server_Name" ]
 +# This section defines all the mount options that
 +# should be used on mounts to a particular NFS server. 
 +# Example:
 +#     [ Server "nfsserver.foo.com" ]
 +#       rsize=32k
 +#       wsize=32k
 +# All reads and writes to the 'nfsserver.foo.com' server 
 +# will be done with 32k (32768 bytes) block sizes.
 +#
 +[ NFSMount_Global_Options ]
 +# This statically named section defines global mount 
 +# options that can be applied on all NFS mount.
 +#
 +# Protocol Version [2,3,4]
 +# This defines the default protocol version which will
 +# be used to start the negotiation with the server.
 +# Tachtler
 +# default: # Defaultvers=4
 +Defaultvers=4
 +#
 +# Setting this option makes it mandatory the server supports the
 +# given version. The mount will fail if the given version is 
 +# not support by the server. 
 +# Tachtler
 +# default: # Nfsvers=4
 +Nfsvers=4
 +#
 +# Network Protocol [udp,tcp,rdma] (Note: values are case sensitive)
 +# This defines the default network protocol which will
 +# be used to start the negotiation with the server.
 +# Defaultproto=tcp
 +#
 +# Setting this option makes it mandatory the server supports the
 +# given network protocol. The mount will fail if the given network
 +# protocol is not supported by the server.
 +# Proto=tcp
 +#
 +# The number of times a request will be retired before 
 +# generating a timeout 
 +# Retrans=2
 +#
 +# The number of minutes that will retry mount
 +# Retry=2
 +#
 +# The minimum time (in seconds) file attributes are cached
 +# acregmin=30
 +#
 +# The Maximum time (in seconds) file attributes are cached
 +# acregmin=60
 +#
 +# The minimum time (in seconds) directory attributes are cached
 +# acregmin=30
 +#
 +# The Maximum time (in seconds) directory attributes are cached
 +# acregmin=60
 +#
 +# Enable Access  Control  Lists
 +# Acl=False
 +#
 +# Enable Attribute Caching
 +# Ac=True
 +#
 +# Do mounts in background (i.e. asynchronously)
 +# Background=False
 +#
 +# Close-To-Open cache coherence
 +# Cto=True
 +#
 +# Do mounts in foreground (i.e. synchronously)
 +# Foreground=True
 +#
 +# How to handle times out from servers (Hard is STRONGLY suggested)
 +# Hard=True
 +# Soft=False
 +#
 +# Enable File Locking
 +# Lock=True
 +#
 +# Enable READDIRPLUS on NFS version 3 mounts
 +# Rdirplus=True
 +#
 +# Maximum Read Size (in Bytes)
 +# Rsize=8k
 +#
 +# Maximum Write Size (in Bytes)
 +# Wsize=8k
 +#
 +# Maximum Server Block Size (in Bytes)
 +# Bsize=8k
 +#
 +# Ignore unknown mount options
 +# Sloppy=False
 +#
 +# Share Data and Attribute Caches
 +# Sharecache=True
 +#
 +# The amount of time, in tenths of a seconds, the client
 +# will wait for a response from the server before retransmitting
 +# the request.
 +# Timeo=600
 +#
 +# Sets all attributes times to the same time (in seconds)
 +# actimeo=30
 +#
 +# Server Mountd port mountport
 +# mountport=4001
 +#
 +# Server Mountd Protocol
 +# mountproto=tcp
 +#
 +# Server Mountd Version
 +# Tachtler
 +# default: # mounvers=3
 +mounvers=4
 +#
 +# Server Mountd Host
 +# mounthost=hostname
 +#
 +# Server Port
 +# Port=2049
 +#
 +# RPCGSS security flavors 
 +# [none, sys, krb5, krb5i, krb5p ]
 +# Sec=sys
 +</code>
 +
 +**__Nachfolgende Änderungen sind durchzuführen:__**
 +
 +Einstellen der Protokoll-Version auf die **Version 4**:
 +<code ini>
 +# Protocol Version [2,3,4]
 +# This defines the default protocol version which will
 +# be used to start the negotiation with the server.
 +# Tachtler
 +# default: # Defaultvers=4
 +Defaultvers=4
 +</code>
 +
 +Den **''nfs-server''** Dienst/Deamon bzw. Server die **Version 4** zu unterstützen:
 +<code ini>
 +# Setting this option makes it mandatory the server supports the
 +# given version. The mount will fail if the given version is 
 +# not support by the server. 
 +# Tachtler
 +# default: # Nfsvers=4
 +Nfsvers=4
 +</code>
 +
 +Den **''nfs-mountd''** Dienst/Deamon bzw. Server die **Version 4** zu verwenden:
 +<code ini>
 +# Server Mountd Version
 +# Tachtler
 +# default: # mounvers=3
 +mounvers=4
 +</code>
 +
 +:!: **WICHTIG** - Diese Konfiguration dient dazu, die **__NFS-Version__** für den **''nfs-mountd''** Dienst/Daemon auf die **Version 4** einszustellen, da sonst nachfolgender Fehler aufreten kann:
 +<code>
 +... mount.nfs requested NFS version or transport protocol is not supported
 +</code>
  
 ==== nfs: /etc/exports ==== ==== nfs: /etc/exports ====
Zeile 984: Zeile 1252:
 <code ini> <code ini>
 /srv/repository/pub/Mirrors        192.168.0.0/255.255.255.0(ro,sync,no_root_squash) 192.168.1.0/255.255.255.0(ro,sync,no_root_squash) 192.168.2.0/255.255.255.0(ro,sync,no_root_squash) /srv/repository/pub/Mirrors        192.168.0.0/255.255.255.0(ro,sync,no_root_squash) 192.168.1.0/255.255.255.0(ro,sync,no_root_squash) 192.168.2.0/255.255.255.0(ro,sync,no_root_squash)
-/var/lib/tftpboot/kickstart       192.168.0.0/255.255.255.0(ro,sync,no_root_squash) 192.168.1.0/255.255.255.0(ro,sync,no_root_squash) 192.168.2.0/255.255.255.0(ro,sync,no_root_squash)+/var/lib/tftpboot/kickstart        192.168.0.0/255.255.255.0(ro,sync,no_root_squash) 192.168.1.0/255.255.255.0(ro,sync,no_root_squash) 192.168.2.0/255.255.255.0(ro,sync,no_root_squash)
 </code> </code>
  
Zeile 1074: Zeile 1342:
 Eine einfache Überprüfung, ob der **''nfs''** Dienst/Daemon auch wirklich gestartet ist, kann unter anderem mit nachfolgendem Befehl durchgeführt werden: Eine einfache Überprüfung, ob der **''nfs''** Dienst/Daemon auch wirklich gestartet ist, kann unter anderem mit nachfolgendem Befehl durchgeführt werden:
 <code> <code>
-# netstat -tulpen | grep nfs+# netstat -tulpen | egrep '(rpc|-)' 
 +Proto Recv-Q Send-Q Local Address   Foreign Address    State       User       Inode      PID/Program name     
 +tcp        0      0 0.0.0.0:892     0.0.0.0:         LISTEN      0          112807     8567/rpc.mountd      
 +tcp        0      0 0.0.0.0:2049    0.0.0.0:         LISTEN      0          113013                        
 +tcp        0      0 0.0.0.0:32803   0.0.0.0:         LISTEN      0          113018                        
 +tcp        0      0 0.0.0.0:875     0.0.0.0:         LISTEN      0          113151     8594/rpc.rquotad     
 +tcp        0      0 0.0.0.0:111     0.0.0.0:         LISTEN      0          111608     8498/rpcbind         
 +tcp        0      0 0.0.0.0:662     0.0.0.0:         LISTEN      29         111798     8508/rpc.statd       
 +udp        0      0 0.0.0.0:875     0.0.0.0:                     0          113146     8594/rpc.rquotad     
 +udp        0      0 0.0.0.0:892     0.0.0.0:                     0          112804     8567/rpc.mountd      
 +udp        0      0 0.0.0.0:32769   0.0.0.0:                     0          113017                        
 +udp        0      0 0.0.0.0:2049    0.0.0.0:                     0          113016                     
 +udp        0      0 0.0.0.0:616     0.0.0.0:                     0          111607     8498/rpcbind         
 +udp        0      0 0.0.0.0:111     0.0.0.0:                     0          111606     8498/rpcbind         
 +udp        0      0 127.0.0.1:659   0.0.0.0:                     0          111792     8508/rpc.statd       
 +udp        0      0 0.0.0.0:662     0.0.0.0:                     29         111795     8508/rpc.statd 
 +</code>
  
 +===== Problemlösungen =====
 +
 +==== Service: rpcbind.socket ====
 +
 +:!: **HINWEIS** - **__NUR__ relevant, wenn IPv6 deaktiviert wurde!**
 +
 +Falls nachfolgende Fehlermeldungen in ''/var/log/messages'' oder beim Starten des Dienstes/Daemon **''rpcbind.socket''** zu sehen sind:
 +<code>
 +... Binding to IPv6 address not available since kernel does not support IPv6.
 +... [/usr/lib/systemd/system/rpcbind.socket:6] Failed to parse address value, ignoring: [::]:111
 </code> </code>
 +liegt dies daran, dass bei diesem Server **IPv6** deaktiviert wurde und dies aktuell von dem Dienstes/Daemon **''rpcbind.socket''** nicht honoriert wird.
  
 +Nachfolgende Lösung aus nachfolgendem **Bug-Report** sollte demnach hier angewendet werden (siehe externen Link):
 +  * [[https://bugzilla.redhat.com/show_bug.cgi?id=1402961|Bug 1402961 - rpcbind.socket systemd unit fails to start when IPv6 is disabled. ]]
  
-:!FIXME **Hier geht es weiter... / under construction...** FIXME :!:+Nachfolgende Schritte sind konkret durchzuführen: 
 + 
 +Anlegen eines Verzeichnisses in nachfolgendem Pfad und mit nachfolgendem Namen: 
 +<code> 
 +# mkdir /etc/systemd/system/rpcbind.socket.
 +</code> 
 + 
 +Anschließend wird eine Konfigurationsdatei mit nachfolgendem Namen und Inhalt erzeugt: 
 +<code> 
 +# vim /etc/systemd/system/rpcbind.socket.d/override.conf 
 +</code> 
 +Inhalt: 
 +<code ini> 
 +[Socket] 
 +ListenStream= 
 +ListenStream=/var/run/rpcbind.sock 
 +ListenStream=0.0.0.0:111 
 +</code> 
 + 
 +Anschließend kann der Dienstes/Daemon **''rpcbind.socket''** **__neu__** gestartet werden: 
 +<code> 
 +# systemctl restart rpcbind.socket 
 +</code> 
 + 
 +Mit nachfolgendem Befehl kann nun überprüft werden, ob der Dienstes/Daemon **''rpcbind.socket''** wie erwartet ordnungsgemäß läuft: 
 +<code> 
 +# systemctl status rpcbind.socket 
 +● rpcbind.socket - RPCbind Server Activation Socket 
 +   Loaded: loaded (/usr/lib/systemd/system/rpcbind.socket; enabled; vendor preset: enabled) 
 +  Drop-In: /etc/systemd/system/rpcbind.socket.d 
 +           └─override.conf 
 +   Active: active (running) since Sat 2017-01-14 06:13:55 CET; 11min ago 
 +   Listen: /var/run/rpcbind.sock (Stream) 
 +           0.0.0.0:111 (Stream) 
 + 
 +Jan 14 06:13:55 vml70040.idmz.tachtler.net systemd[1]: Listening on RPCbind S... 
 +Jan 14 06:13:55 vml70040.idmz.tachtler.net systemd[1]: Starting RPCbind Serve... 
 +Hint: Some lines were ellipsized, use -l to show in full. 
 +</code>
  
tachtler/repository_ausliefern_centos_7.1418823481.txt.gz · Zuletzt geändert: 2014/12/17 14:38 von klaus