# modificare il file /etc/iscsi/iscsid.conf node.startup = automatic node.session.auth.authmethod = CHAP node.session.auth.username = homes node.session.auth.password = xxxxxxxxxxxxxx # discovery dei volumi iscsi su inas0, inas1 e inas2 iscsiadm -m discovery -t st -p inasX Questo crea nella directory /etc/iscsi/nodes una directory per ogni target trovato bisogna cancellare le directory che non andranno montate altrimenti al riavvio vengono create in automatico le sessioni dal primo host che parte # creazione delle sessioni iscsi iscsiadm -m node -T -p inasX --login # a questo punto ho i device ( es /dev/sdb ) # creo le partizioni parted -a optimal /dev/sdb mklabel gpt mkpart "" ext2 2048s -1 set 1 raid on align-check optimal 1 print # creo il mirror raid mdadm --create --verbose /dev/md0 --level=mirror --raid-devices=2 /dev/sdb1 /dev/sdc1 # controllo il risultato cat /proc/mdstat # creo partizione nel raid per allineare la partizione ai settori bisogna fare un po' di conti: cat /sys/block/md0/queue/optimal_io_size 524288 cat /sys/block/md0/alignment_offset 0 cat /sys/block/md0/queue/physical_block_size 512 ( 524288 + 0 ) / 512 = 1024 Se il risultato e' maggiore di 2048 usate quello altrimenti 2048 parted -a optimal /dev/md0 mklabel gpt mkpart "" ext2 2048s -1 align-check optimal 1 # formattazione partizione mkfs.ext4 /dev/md0p1 # ottengo lo uid della nuova partizione blkid # creo il mount point mkdir -p /storage # modifica /etc/fstab # /dev/md0p1 UUID=3c8e5dc9-5786-486d-bdbc-ad25491f3992 /storage ext4 defaults,noauto 0 2 # creo servizio per il mount della partizione all'avvio # Ha troppe dipendenze (iscsi -> raid -> mount ) con gli script di default si pianta il boot creo il file /lib/systemd/system/mount-storage-aula.service con questo contenuto: [Unit] Description=Mount storage aula Requires=dev-md-0p1.device After=dev-md-0p1.device Before=shutdown.target [Service] Type=oneshot RemainAfterExit=true ExecStart=/bin/mount /storage ExecStop=/bin/umount /storage [Install] WantedBy=sysinit.target e poi lo abilito systemctl enable mount-storage-aula # passwd via ldap apt install libnss-ldap libpam-ldap ldap-utils inserisco come server: ldap://ldap.torre.math.unipd.it/ suffix: dc=studenti,dc=math,dc=unipd,dc=it no root as admin username: cn=linuxconnect,dc=studenti,dc=math,dc=unipd,dc=it pwd: ...... # configuro il file: /etc/ldap.conf decommentando: ssl start_tls tls_cacertfile /etc/ssl/certs/math.cacert.pem copio il certificato della nostra CA in /etc/ssl/certs/math.cacert.pem # modifico il file /etc/nsswitch.conf passwd: compat ldap group: compat ldap shadow: compat gshadow: files # nfs apt install nfs-kernel-server # modifico il file /etc/exports /storage 192.168.84.0/24(rw,sec=sys,no_subtree_check,async) exportfs -a # samba apt install samba # modificare il file /etc/samba/smb.conf con questo contenuto: [global] workgroup = LABP140 server string = %h server (Samba, Ubuntu) interfaces = enp129s0f0 bind interfaces only = yes #server role = member server security = DOMAIN encrypted passwords = yes map to guest = Bad User syslog = 0 log file = /var/log/samba/log.%m max log size = 1000 printcap name = /etc/printcap dns proxy = No panic action = /usr/share/samba/panic-action %d invalid users = root printing = bsd print command = lpr -r -P'%p' %s lpq command = lpq -P'%p' lprm command = lprm -P'%p' %j preferred master = no domain master = no local master = no [homes] comment = Home Directories read only = No browseable = No browsable = No csc policy = disable hide files = /desktop.ini/$RECYCLE.BIN/ ;map hidden = yes ;map system = yes ;create mask = 0611 ;directory mask = 0711 # join al dominio net join ( a volte il primo tentativo fallisce ) # creare i link in /home/ a /storage/homes/ ln -s /storage/homes/0 /home/0 ln -s /storage/homes/1 /home/1 ln -s /storage/homes/2 /home/2