Note iniziali
Per ottenere comsol scarica l’offline installer dal sito di comsol: https://www.comsol.it/product-download
La licenza ti viene inviata via mail ogni anno.
Se cambi license-server devi chiedere un nuovo license.dat
Versione con cui è stata scritta questa guida: comsol52 (rispecchia il nome delle cartelle di installazione)
Parametri per LDSS:
- Share di rete: /mnt/Linux/ montata sulle macchine in /usr/LDSS
- Cartella del license-server: /usr/local/Comsol_lic
Installazione
Scompatta il DVD in qualche dove e individua il file setupconfig.ini e adegualo alle tue esigenze ( leggi bene che è spiegato abbastanza bene)
Estartoo del file setupconfig.ini con in grassetto i parametri da impostare:
# # COMSOL unattended installation answer file. # ============================================================================ # GLOBAL OPTIONS # ============================================================================ [.......omissis] installdir = /mnt/Linux/COMSOL/COMSOL52/Multiphysics uninstall = 0 # ---------------------------------------------------------------------------- # User interaction # [.......omissis] showgui = 0 autofinish = 0 quiet = 0 language = en_US # ============================================================================ # INSTALLATION OPTIONS # ============================================================================ [.......omissis] agree = 1 license = /root/License.dat # file di licenza ricevuto via mail name = Edulab company = Unitn lictype = mph licno = # ---------------------------------------------------------------------------- [.......omissis] matlabdir = /usr/local/MATLAB/ proedir = creopdir = llexcelallusers = 0 doc = selected applications = selected cad = 0 licmanager = 1 # ---------------------------------------------------------------------------- # Options # # startmenushortcuts: # Use '1' if you want setup to create shortcuts on the Windows start menu. # Use '0' if you do not want the shortcuts. # # desktopshortcuts: # Use '1' if you want setup to create shortcuts on the Windows desktop. # Use '0' if you do not want the shortcuts. # # firewall: # Use '1' if you want setup to create Windows Firewall rules to allow # incoming network traffic for COMSOL server programs. # Use '0' if you do not want firewall rules to be created. # # linuxlauncher: # Use '1' if you want setup to create a COMSOL launcher. # Use '0' if you do not want the launcher. # # symlinks: # Use '1' if you want setup to create symbolic links to COMSOL in # /usr/local/bin on Linux (requires administrative privileges). # Use '0' if you do not want the symbolic links. # # fileassoc: # Use '1' if you want setup to associate the .mph and .fl file types with # this installation. Use '0' if you do not want the file association. # # checkupdate: # Use '1' if you want comsol to automatically check for updates # # ---------------------------------------------------------------------------- startmenushortcuts = 1 desktopshortcuts = 1 linuxlauncher = 1 symlinks = 1 fileassoc = 1 checkupdate = 0 firewall = 1 [.......omissis] setsecuritypolicy = 0 security.comsol.allowbatch = 1 security.comsol.allowexternalprocess = 0 security.comsol.allowmethods = 1 security.comsol.allowapplications = 1 security.external.enable = 1 security.external.propertypermission = 0 security.external.runtimepermission = 0 security.external.filepermission = limited security.external.socketpermission = 0 security.external.netpermission = 0 security.external.reflectpermission = 0 security.external.securitypermission = 0 # ---------------------------------------------------------------------------- # COMSOL Server configuration options [.......omissis] # # ---------------------------------------------------------------------------- server.port = 2036 server.service = 0 server.service.account = default server.service.password = server.service.start = auto server.createadmin = 0 server.admin = localadmin server.admin.password = changeit server.multiple = 0 server.primary = 1 server.multiple.prefsdir = server.multiple.primaryhost = auto server.multiple.primaryport = auto server.multiple.primaryuser = auto server.windowsauthentication = 0 server.windowsauthentication.adminrole = BUILTIN\Administrators server.windowsauthentication.poweruserrole = BUILTIN\Power Users server.windowsauthentication.userrole = BUILTIN\Users server.windowsauthentication.guestrole = BUILTIN\Guests
NB: Collegati al server con ssh -X perché l’installazione usa la grafica
Esegui l’installazione con il comando:
./setup -s setupconfig.ini
Configurazione
Se hai gia il license server in funzione fermalo:
service lm_comsol stop
Installa il pacchetto lsb-core altrimenti da errore nell’esecuzione del server delle licenze:
apt-get install lsb-core
Copia i file del license-server nella cartella opportuna:
cp -r /mnt/Linux/COMSOL/COMSOL52/Multiphysics/license/glnxa64 /usr/local/Comsol_lic/
copia nella cartella /usr/local/Comsol_lic il file di licenze prendendolo dalla cartella di installazione:
cp /mnt/Linux/COMSOL/COMSOL52/Multiphysics/license/license.dat /usr/local/Comsol_lic/license.dat
copia il file lm_comsol dalla cartella di installazione a /etc/init.d per far partire il server come servizio (o modifica i parametri necessaria nell’esistente)
cp /mnt/Linux/COMSOL/COMSOL52/Multiphysics/license/glnxa64/lm_comsol /etc/init.d/lm_comsol
modifica i necessari parametri ( in grassetto)
#!/bin/sh # Copyright (c) 1994-2015 by COMSOL AB # on Debian Linux run the command below to start this script automatically # update-rc.d lm_comsol start 99 2 3 4 5 . stop 1 0 1 6 . # Replace 'dir' with the FULL path to the glnxa64 directory. # Example: FP=/usr/local/comsol51/license/glnxa64 FP=/usr/local/Comsol_lic/glnxa64 # Replace 'username' with an actual username. # Important: Do not use 'root' - this is a potential security risk. # Instead, use the account used to install COMSOL, or the 'nobody' account, # or another account with access to both the 'FP' directory and the log # file location below. MYUSER=root case "$1" in start) if [ -x $FP/lmgrd ]; then ulimit -n 65000 su $MYUSER -c "umask 022; $FP/lmgrd -c $FP/../license.dat -L /var/log/comsol52.log" fi ;; stop) if [ -x $FP/lmdown ]; then $FP/lmdown -c $FP/../license.dat -q fi ;; *) echo "Usage: $0 {start|stop}" # exit 1 ;; esac #exit 0
Se è una nuova installazione, come detto nello script, esegui
update-rc.d lm_comsol start 99 2 3 4 5 . stop 1 0 1 6
oppure riavvia il servizio
service lm_comsol start
Sistema gli script (/mnt/Linux/bin) per far funzionare le cose comodamente in lab ( in grassetto le modifiche)
License.dat
Modifica il file license.dat in /mnt/Linux/COMSOL/COMSOL52/Multiphysics/license in modo che contenga solo le seguenti righe:
# SN=13074135 SERVER 192.168.121.3 ANY 1718 USE_SERVER
Comsol.m
Per prima cosa crea il file Comsol.m (script di matlab) nella nuova cartella di installazione /mnt/Linux/COMSOL/COMSOL52/Comsol.m
if ispc disp ('Comsol runs only Linux') else disp('Set matlab to use COMSOL server. Please Wait') addpath /usr/LDSS/COMSOL/COMSOL52/Multiphysics/mli !xterm comsol52server & !sleep 5 mphstart mphversion end
comsol
Copia il vecchio script da comsol in comsol[vers precedente] (es comsol -> comsol51) e modifica le righe in grassetto
#!/bin/bash clear ciclo=0 while [ $ciclo -eq 0 ] ; do echo "------------------------------" echo " COMSOL Multiphisics option: " echo "------------------------------" echo -n echo "[1] Comsol Multhiphysics " echo "[2] Matlab + Comsol server " echo "[3] Comsol Server" echo "[q] quit" echo -n read ONE #read -p "[1] Comsol Multhiphysics [2] Matlab + Comsol server [3] Comsol Server [q] quit : " ONE case "$ONE" in "q") exit ;; "1" ) echo "------------------------------" echo "RUN Comsol Multhiphysics " echo "------------------------------" echo -n /usr/LDSS/COMSOL/COMSOL52/Multiphysics/bin/glnxa64/comsol clear #ciclo=1 ;; "2" ) echo "------------------------------" echo "RUN Matlab + Comsol server" echo "------------------------------" echo -n cd /usr/LDSS/COMSOL/COMSOL52/ matlab -r Comsol clear #ciclo=1 ;; "3" ) echo "------------------------------" echo "RUN Comsol Server" echo "------------------------------" echo -n /usr/LDSS/COMSOL/COMSOL52/Multiphysics/bin/glnxa64/comsol server clear #ciclo=1 ;; * ) echo . echo "#### Pirla lezi ben" echo . echo . echo . echo . echo . ;; esac done
comsolXXserver
crea un nuovo file per lanciare il nuovo comsol in modalità server:
#!/bin/bash /usr/LDSS/COMSOL/COMSOL52/Multiphysics/bin/glnxa64/comsol server
Nota birbona
Se sposti il license server da una VM ad un’altra ricordati di copiarti il Mac della scheda di ret che hai dato a Comsol per la registrazione. Se non ti ricordi il mac che hai dato leggi il file di log alla riga:
SERVER line says xxxxxxxxxxxxx, hostid is "[MAC]"
e modifica di conseguenza
Last updated: 4 Agosto 2021 by Pierluigi Minati