Opsi – Commandes utiles

 

OPSI-ADMIN

 

opsi-admin -d task setPcpatchPassword

Définit ou redéfinit le mot de passe de l’utilisateur pcpatch.
ex :

# opsi-admin -d task setPcpatchPassword
Password:

 

opsi-admin -d task setPcpatchPassword $(< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c16)

Génère un mot de passe aléatoire, connu uniquement du serveur Opsi (ce qui devrait être le cas).
 

 

OPSI-MAKEPRODUCTFILE

 

opsi-makeproductfile

Générer une archive cpio .opsi intégrable à l'interface Opsi Configed.
La commande opsi-makeproductfile crée un fichier respectant la nomenclature IDproduit_versionproduit_versionpaquet.opsi
Il s'agit d'une archive cpio contenant deux autres archives cpio compressées au format gzip : CLIENT_DATA.cpio.gz et OPSI.cpio.gz créées à partir des fichiers inclus dans les répertoires de même nom.
ex :

# cd /home/opsiproducts/firefox/
# opsi-makeproductfile

Verrouillage du paquet

Information sur le paquet
----------------------------------------------------------------------------
   version              : 1
   custom package name  : 
   incremental package  : False
   package dependencies : 

Information sur le produit
----------------------------------------------------------------------------
   product id           : firefox
   product type         : localboot
   version              : 45.7.0
   name                 : Firefox ESR
   description          : Mozilla Firefox Extended Support Release
   advice               : 
   priority             : 0
   licenseRequired      : False
   product classes      : 
   windows software ids : 

Scripts du produit
----------------------------------------------------------------------------
   setup                : setup32.ins
   uninstall            : uninstall32.ins
   update               : 
   always               : 
   once                 : 
   custom               : 
   user login           : 

Création du fichier pour le paquet '/home/opsiproducts/firefox/firefox_45.7.0-1.opsi'

Creating archive CLIENT_DATA.cpio.gz
  100.00% [==================================================]
Creating archive OPSI.cpio.gz
  100.00% [==================================================]
Creating archive firefox_45.7.0-1.opsi
  100.00% [==================================================]

Nettoyage
Déverrouillage du paquet

 

 

OPSI-NEWPROD

 

opsi-newprod

Crée un nouveau produit vierge dans /home/opsiproducts/
A pour effet de générer le dossier /home/opsiproducts/productID contenant les fichiers et dossiers suivants :

# tree productID/
productID/
├── CLIENT_DATA/
├── OPSI/
│   ├── control
│   ├── postinst
│   └── preinst
└── SERVER_DATA/

3 directories, 3 files

 

 

OPSI-PACKAGE-MANAGER

 

opsi-package-manager -l

Lister les produits installés dans /var/lib/opsi/depot/, que ce soit depuis les dépôts uib (/var/lib/opsi/repository/) ou le dépôt de produits personnels (/home/opsiproducts/).
Cette liste est celle affichée dans le gestionnaire Opsi Configed dans les sections localboot et netboot.
 

opsi-package-manager -i productID_version.opsi

Permet l'installation d'un produit créé via opsi-newprod puis opsi-makeproductfile dans /home/opsiproducts/ sur l'interface de gestion Opsi Configed.

  • Génère le fichier de configuration du produit /var/lib/opsi/config/products/productID_version.localboot ou /var/lib/opsi/config/products/productID_version.netboot, copie du fichier control
  • Génère l'arborescence du produit décompressé /var/lib/opsi/depot/productID/ contenant les fichiers de CLIENT_DATA/
# cd /home/opsiproducts/firefox/
# opsi-package-manager -i firefox_45.7.0-1.opsi

 
 
Il apparait sur l'interface Opsi Configed avec les informations renseignées lors de la génération du produit.

 

 

opsi-package-manager -r productID

Supprime un produit de l'interface Opsi Configed et donc également du dossier des produits installés /var/lib/opsi/depot/, mais aussi du dossier des produits téléchargés /var/lib/opsi/repository/
ex :

# opsi-package-manager -r winvista

 

 

opsi-package-manager -p ask -i /var/lib/opsi/repository/productID_version.opsi

Réinstalle un paquet déjà téléchargé dans /var/lib/opsi/repository/, permettant interactivement de modifier les propriétés du produit.
ex :

# opsi-package-manager -p ask -i /var/lib/opsi/repository/winxppro_4.0.5-2.opsi



Ceci a pour effet de modifier le fichier /var/lib/opsi/config/depots/opsi-test.opensharing.priv.ini en se basant sur le fichier /var/lib/opsi/config/products/winxppro_4.0.5-2.netboot contenant les valeurs par défaut des propriétés.

[winxppro-install]
additional_drivers = [""]
askbeforeinst = [false]
blockalignment = [true]
data_partition_create = [true]
fullname = ["Name"]
i386_dir = ["i386"]
orgname = ["OpenSharing"]
productkey = ["12345-12345-12345-12345-12345"]
store_i386 = [false]
use_raid1 = [false]
windows_partition_size = ["100%"]

 

 

OPSI-PRODUCT-UPDATER

 

Configuration recommandée d'un dépôt déclaré dans /etc/opsi/opsi-product-updater.conf :
autoInstall = false
autoUpdate = true
autoSetup = false

Un produit installé est tout d'abord téléchargé sur le serveur dans le répertoire /var/lib/opsi/repository (sous forme d'une archive) puis désarchivé dans le répertoire /var/lib/opsi/depot/
 

opsi-product-updater -vv
  • Télécharge et installe tous les produits des dépôts actifs dont le paramètre autoInstall est à True
  • Met à jour tous les produits des dépôts actifs dont le paramètre autoUpdate est à True
  • Programme un setup pour tous les produits des dépôts actifs dont le paramètre autoSetup est à True
opsi-product-updater -i -vv
  • Télécharge et installe tous les produits des dépôts actifs même si le paramètre autoInstall est à False (ignore les exclusions)
  • Met à jour tous les produits des dépôts actifs dont le paramètre autoUpdate est à True
  • Programme un setup pour tous les produits des dépôts actifs dont le paramètre autoSetup est à True
opsi-product-updater -vv -p productID
  • Télécharge et installe le produit spécifié s'il est disponible dans un dépôt actif

ex :

# opsi-product-updater -vv -p winvista
Zsync command found: /usr/bin/zsync
Reading config file '/etc/opsi/opsi-product-updater.conf'
Getting installed products
Getting info for local packages in '/var/lib/opsi/repository'
Getting package infos from repository 'http://download.uib.de'
winvista_4.0.5-7.opsi - installation required: product 'winvista' is not installed and auto install is set for repository 'http://download.uib.de'
winvista_4.0.5-7.opsi - download of package is required: local package not found
Downloading http://download.uib.de/opsi4.0/archiv/opsi4.0.5/products/netboot//winvista_4.0.5-7.opsi (0.63 MB) to /var/lib/opsi/repository/winvista_4.0.5-7.opsi
Download of 'http://download.uib.de/opsi4.0/archiv/opsi4.0.5/products/netboot//winvista_4.0.5-7.opsi' completed
Setting rights on directory u'/var/lib/opsi/repository'
Installation time window not defined, installing products and setting actions
Getting meta data from package '/var/lib/opsi/repository/winvista_4.0.5-7.opsi'
Installing package '/var/lib/opsi/repository/winvista_4.0.5-7.opsi'
=================================================================================================
Installing package file '/var/lib/opsi/repository/winvista_4.0.5-7.opsi' on depot 'opsi-test.opensharing.priv'
Getting meta data from package '/var/lib/opsi/repository/winvista_4.0.5-7.opsi'
Creating product in backend
Locking product 'winvista' on depot 'opsi-test.opensharing.priv'
Checking package dependencies
Running preinst script
Running package script 'preinst'
Unpacking package files
Extracting data from package '/var/lib/opsi/repository/winvista_4.0.5-7.opsi'
Setting product property states in backend
Running postinst script
Running package script 'postinst'
Creating package content file
Setting access rights of client-data files
Unlocking product 'winvista_4.0.5-7' on depot 'opsi-test.opensharing.priv'
Package '/var/lib/opsi/repository/winvista_4.0.5-7.opsi' successfully installed
Not setting action 'setup' for product 'winvista' where installation status 'installed' because auto setup is not set for repository 'http://download.uib.de'

 

OPSI-SET-RIGHTS

 

opsi-set-rights

Définit ou redéfinit les droits sur les répertoires suivants :
Equivaut à :
opsi-setup --set-rights

opsi-set-rights
[5] [Mar 04 16:55:00] Setting rights on directory u'/etc/opsi' (Rights.py|121)
[5] [Mar 04 16:55:00] Setting rights on directory u'/var/log/opsi' (Rights.py|121)
[5] [Mar 04 16:55:00] Setting rights on directory u'/var/lib/opsi' (Rights.py|121)
[5] [Mar 04 16:55:07] Setting rights on directory u'/home/opsiproducts' (Rights.py|121)
[5] [Mar 04 16:55:07] Setting rights on directory u'/tftpboot/linux' (Rights.py|121)
[5] [Mar 04 16:55:08] Setting rights on directory u'/var/lib/opsi/depot' (Rights.py|121)
# ls -lad /etc/opsi/
drwxrwx--- 6 opsiconfd opsiadmin 4096 févr. 10 22:41 /etc/opsi/
# ls -lad /var/log/opsi/
drwxrwx--- 7 opsiconfd opsiadmin 4096 mars   4 04:43 /var/log/opsi/
# ls -lad /var/lib/opsi/
drwxr-x--- 7 pcpatch pcpatch 4096 janv. 30 12:08 /var/lib/opsi/
# ls -lad /home/opsiproducts/
drwxrws--- 5 root pcpatch 4096 févr. 26 18:50 /home/opsiproducts/
# ls -lad /tftpboot/linux/
drwxrwxr-x 3 opsiconfd pcpatch 4096 févr. 10 22:38 /tftpboot/linux/
# ls -lad /var/lib/opsi/depot/
drwxrws--- 55 opsiconfd pcpatch 4096 mars   4 15:51 /var/lib/opsi/depot/

 

 

opsi-set-rights directory

Définit ou redéfinit les droits sur le dossier spécifié.
Equivaut à :
opsi-setup --set-rights directory
 

 

OPSI-SETUP

 

opsi-setup --auto-configure-samba

Appelle le script Python /usr/lib/python2.7/dist-packages/OPSI/Util/Task/Samba.py
Sauvegarde le fichier /etc/samba/smb.conf original dans son répertoire d'origine avant d'amorcer sa modification. Cette sauvegarde est nommée sous le format smb.conf.AAAA-MM-JJ_hh:mm.
Génère les partages Opsi nécessaires :

  • [opsi_depot] pointant sur /var/lib/opsi/depot/ en lecture seule
  • [opsi_depot_rw] pointant sur /var/lib/opsi/depot/ en lecture/écriture
  • [opsi_images] pointant sur /var/lib/opsi/ntfs-images en lecture/écriture
  • [opsi_workbench] pointant sur /home/opsiproducts/ en lecture/écriture
  • [opsi_repository] pointant sur /var/lib/opsi/repository/ en lecture seule

ex :

# opsi-setup --auto-configure-samba
[5] [Feb 09 22:35:30] Configuring samba (Samba.py|234)
[5] [Feb 09 22:35:30]    Adding share [opsi_depot] (Samba.py|111)
[5] [Feb 09 22:35:30]    Adding share [opsi_depot_rw] (Samba.py|160)
[5] [Feb 09 22:35:30]    Adding share [opsi_images] (Samba.py|171)
[5] [Feb 09 22:35:30]    Adding share [opsi_workbench] (Samba.py|184)
[5] [Feb 09 22:35:30]   Adding share [opsi_repository] (Samba.py|200)
[5] [Feb 09 22:35:30]    Creating backup of /etc/samba/smb.conf (Samba.py|219)
[5] [Feb 09 22:35:30]    Writing new smb.conf (Samba.py|222)
[5] [Feb 09 22:35:30]    Reloading samba (Samba.py|226)
[5] [Feb 09 22:35:32] Samba configuration finished. You may want to restart your Samba daemon. (Samba.py|239)

 

 

opsi-setup --edit-config-defaults

Modifier certains paramètres de configuration en mode interactif.
ex :

# opsi-setup --edit-config-defaults


 

opsi-setup --init-current-config

Initialise le backend configuré (par défaut les backends file et opsipxeconfd).
Doit être exécuté après toute modification du fichier /etc/opsi/backendManager/dispatch.conf contenant par d"faut :

backend_.*         : file, opsipxeconfd
host_.*            : file, opsipxeconfd
productOnClient_.* : file, opsipxeconfd
configState_.*     : file, opsipxeconfd
.*                 : file

ex :

opsi-setup --init-current-config
[5] [Feb 09 23:13:55] Creating base path: '/var/lib/opsi/config' (File.py|233)
[5] [Feb 09 23:13:55] Try to find a Configserver. (opsi-setup|1796)
[5] [Feb 09 23:13:55] Getting current system config (opsi-setup|111)
[5] [Feb 09 23:13:55] System information: (opsi-setup|164)
[5] [Feb 09 23:13:55]    distributor  : Debian (opsi-setup|165)
[5] [Feb 09 23:13:55]    distribution : Debian GNU/Linux 8.7 (jessie) (opsi-setup|166)
[5] [Feb 09 23:13:55]    ip address   : 192.168.1.13 (opsi-setup|167)
[5] [Feb 09 23:13:55]    netmask      : 255.255.255.0 (opsi-setup|168)
[5] [Feb 09 23:13:55]    subnet       : 192.168.1.0 (opsi-setup|169)
[5] [Feb 09 23:13:55]    broadcast    : 192.168.1.255 (opsi-setup|170)
[5] [Feb 09 23:13:55]    fqdn         : opsi-test.opensharing.priv (opsi-setup|171)
[5] [Feb 09 23:13:55]    hostname     : opsi-test (opsi-setup|172)
[5] [Feb 09 23:13:55]    domain       : opensharing.priv (opsi-setup|173)
[5] [Feb 09 23:13:55]    win domain   : WORKGROUP (opsi-setup|174)
[5] [Feb 09 23:13:55] Configuring client user pcpatch (opsi-setup|180)
[5] [Feb 09 23:13:55]    Creating RSA private key for user pcpatch in '/var/lib/opsi/.ssh/id_rsa' (opsi-setup|194)
[5] [Feb 09 23:13:56] Setting rights on directory '/var/lib/opsi/.ssh' (Rights.py|121)

 

 

opsi-setup --set-rights

Définit ou redéfinit les droits sur les répertoires suivants :
Equivaut à :
opsi-set-rights

opsi-setup --set-rights
[5] [Mar 04 16:55:00] Setting rights on directory u'/etc/opsi' (Rights.py|121)
[5] [Mar 04 16:55:00] Setting rights on directory u'/var/log/opsi' (Rights.py|121)
[5] [Mar 04 16:55:00] Setting rights on directory u'/var/lib/opsi' (Rights.py|121)
[5] [Mar 04 16:55:07] Setting rights on directory u'/home/opsiproducts' (Rights.py|121)
[5] [Mar 04 16:55:07] Setting rights on directory u'/tftpboot/linux' (Rights.py|121)
[5] [Mar 04 16:55:08] Setting rights on directory u'/var/lib/opsi/depot' (Rights.py|121)
# ls -lad /etc/opsi/
drwxrwx--- 6 opsiconfd opsiadmin 4096 févr. 10 22:41 /etc/opsi/
# ls -lad /var/log/opsi/
drwxrwx--- 7 opsiconfd opsiadmin 4096 mars   4 04:43 /var/log/opsi/
# ls -lad /var/lib/opsi/
drwxr-x--- 7 pcpatch pcpatch 4096 janv. 30 12:08 /var/lib/opsi/
# ls -lad /home/opsiproducts/
drwxrws--- 5 root pcpatch 4096 févr. 26 18:50 /home/opsiproducts/
# ls -lad /tftpboot/linux/
drwxrwxr-x 3 opsiconfd pcpatch 4096 févr. 10 22:38 /tftpboot/linux/
# ls -lad /var/lib/opsi/depot/
drwxrws--- 55 opsiconfd pcpatch 4096 mars   4 15:51 /var/lib/opsi/depot/

 

 

opsi-setup --set-rights directory

Définit ou redéfinit les droits sur le dossier spécifié.
Equivaut à :
opsi-set-rights directory
 

 

Aller plus loin

 

 

Fermer le menu
%d blogueurs aiment cette page :