Erstellen von Tasks für eine UNIX-/Linux-Umgebung

ArcGIS Server kann Geoverarbeitungswerkzeuge ausführen, die sich in Toolboxes auf einem Computer mit UNIX/Linux befinden. Werkzeuge können auf Daten verweisen, die sich auf Computern mit UNIX/Linux befinden. Jedoch können Sie nur in ArcGIS Desktop, das nur unter Windows angeboten wird, Werkzeuge erstellen. Daher kopieren Sie die Toolboxes und Kartendokumente auf den Computer mit UNIX-/Linux, nachdem Sie sie unter Windows erstellt haben. Diese Ressourcen können dann auf ArcGIS Server veröffentlicht werden.

Editoren für UNIX/Linux

Bei Editoren für UNIX/Linux sind Pfade besonders zu beachten. Unter Windows werden Laufwerksbuchstaben (z. B. D:\) für lokale Festplatten und die UNC-Konvention für Ressourcen im LAN (z. B.\\<Host>\<Verzeichnis>) verwendet. Unter UNIX/Linux werden Schrägstriche (/<Host>/<Verzeichnis>) für Pfade verwendet. Wenn Sie Werkzeuge erstellen und testen, erfolgt dies unter Windows. Daher wird für alle Pfade die Windows-Konvention verwendet. Bevor Sie die Werkzeuge nach UNIX/Linux migrieren, müssen Sie sich für eine Methode zum Konvertieren von Windows-Pfaden in UNIX-/Linux-Pfade entscheiden. Folgende Methoden sind möglich.

Verwenden relativer Pfade für die Daten

Die weitaus einfachste Herangehensweise ist die Verwendung der ToolShare-Ordnerstruktur zum Speichern aller von den Werkzeugen verwendeten Daten. Sie legen dann die Eigenschaften der Kartendokumente, Modellwerkzeuge und Skriptwerkzeuge auf das Speichern relativer Pfade fest. Anschließend kopieren Sie die ToolShare-Ordner auf die UNIX-/Linux-Plattform und veröffentlichen den Service mit ArcGIS Server Manager. Wenn Tasks in dem Service ausgeführt werden, erfolgt die Suche aller zugehörigen Daten relativ zum Ordner "ToolShare".

Verwenden von ArcMap-Layern

Mit diesem Verfahren veröffentlichen Sie ein ArcMap-Dokument, das Werkzeug-Layer enthält. Für die Modell- und Skriptwerkzeuge werden Layer und Tabellen im ArcMap-Inhaltsverzeichnis verwendet. Anschließend gehen Sie wie folgt vor, bevor Sie das Kartendokument und die Toolboxes nach UNIX/Linux kopieren:

  1. Öffnen Sie das ArcMap-Dokument und deaktivieren Sie die Option zum Speichern relativer Pfade für Datenquellen:
    1. Klicken Sie in ArcMap auf das Menü Datei > Eigenschaften des Kartendokuments.
    2. Stellen Sie im Dialogfeld "Eigenschaften" sicher, dass das Kontrollkästchen Relative Pfadnamen für Datenquellen speichern deaktiviert ist.
    3. Klicken Sie auf OK, um die Eigenschaften zu speichern, speichern Sie dann das Kartendokument, und klicken Sie auf "Beenden".
  2. Klicken Sie im Fenster Katalog mit der rechten Maustaste auf das Kartendokument, und klicken Sie auf Datenquelle festlegen.
  3. Geben Sie im Dialogfeld Datenquelle festlegen den UNIX-/Linux-Pfad für alle Layer einschließlich der Sublayer von Werkzeug-Layern an. (Sublayer von Werkzeug-Layern müssen nur geändert werden, wenn Sie einen Karten-Service des Ergebnisses verwenden.)
  4. Nachdem Sie die Pfade festgelegt haben, schließen Sie das Dialogfeld, und kopieren Sie das Kartendokument und die Toolboxes auf den Computer mit UNIX/Linux.
  5. Veröffentlichen Sie den Service durch Veröffentlichen des Kartendokuments mit den Werkzeug-Layern, nicht der Toolbox.

Automatisches Konvertieren von Windows-UNC-Pfaden

Wenn ein Geoverarbeitungs-Service unter UNIX/Linux ausgeführt wird, werden alle Windows-UNC-Pfade (\\Host\) in Pfade nach der UNIX-/Linux-Konvention (/Host/) konvertiert. Lokale Windows-Pfade (D:\) werden nicht konvertiert.

Daher können Sie die UNIX-/Linux-Festplatte (/Host/) für Computer mit Windows bereitstellen und mit dem Windows-UNC-Pfad (\\Host\) auf Daten auf der bereitgestellten Festplatte verweisen. Anschließend kopieren Sie die Dokumente und Toolboxes auf den Computer mit UNIX/Linux und führen die Veröffentlichung aus.

Verwenden einer Kombination dieser Verfahren

Sie können eine Kombination dieser Verfahren verwenden. Beispielsweise sind eventuell einige Daten relativ zur Toolbox gespeichert, und für die Werkzeuge können relative Pfade verwendet werden. Für die Teilmenge der Daten, die nicht relativ zur Toolbox gespeichert sind, können Sie Layer in dem ArcMap-Dokument verwenden, das auf die Daten verweist, und vor dem Kopieren den Pfad konvertieren.

Bekannte Einschränkungen in der UNIX-/Linux-Umgebung

Das Konvertieren von Pfaden ist der wichtigste Aspekt beim Ausführen von Services unter UNIX/Linux. Es sind jedoch zwei weitere Besonderheiten zu beachten: die Begrenzung auf 100 Zeichen und Dataset-Namen in Kleinbuchstaben. Beide werden nachfolgend beschrieben.

Begrenzung auf 100 Zeichen für GRID- und Coverage-Pfade

Für zwei Datenformate ist die Anzahl der Zeichen in den Pfaden begrenzt:

  • GRIDs (natives Raster-Format von Esri)
  • Coverages (ArcInfo Workstation-Features)

Die Gesamtlänge eines GRID- oder Coverage-Pfades darf 100 Zeichen nicht überschreiten. Da Zwischen- und Ausgabedaten in den Scratch-Workspace geschrieben werden, darf die Gesamtzahl von Zeichen im Scratch-Workspace nicht mehr als 100 Zeichen betragen.

Es folgt ein Beispiel für den Inhalt von "%scratchworkspace%":

/disk/arcgisserver/arcgisjobs/drivetimepolygonsservice_gpserver/
jc01a0ddb3dc94455b8eb6629cf421798/scratch/

Teil des Pfades

Anzahl von Zeichen

Beschreibung

/disk/arcgisserver/arcgisjobs/

30

Auftragsverzeichnis. Da das Auftragsverzeichnis von Ihnen oder dem Systemadministrator eingerichtet wird, können Sie die Anzahl der Zeichen beeinflussen.

drivetimepolygonsservice_gpserver/

34

Service-Name ("_gpserver" wird von ArcGIS Server automatisch angehängt). Da Sie den Namen des Service festlegen, können Sie die Anzahl der Zeichen beeinflussen.

<Ordnername>

Wenn Sie einen Service veröffentlichen, können Sie einen Ordernamen angeben. Der Namen dieses Ordners wird hier angezeigt. Sie können die Anzahl der Zeichen im Namen des Ordners beeinflussen.

jc01a0ddb3dc94455b8eb6629cf421798/scratch/

42

Eindeutige Auftrags-ID und Scratch-Ordner. Dies wird von ArcGIS Server definiert und unterliegt nicht Ihrer Kontrolle.

GESAMT

106

Anzahl der Zeichen im Pfad zum Scratch-Workspace

In obiger Tabelle enthält der Pfad für den Scratch-Workspace 106 Zeichen und überschreitet somit die Begrenzung von 100 Zeichen. Sie müssen die Anzahl um 6 Zeichen verringern. Im obigen Beispiel lässt sich die Anzahl am einfachsten durch Umbenennen des Service von drivetimepolygonsservice in einen kürzeren Namen, z. B. in dtpolys, verringern.

Weitere Informationen zum Auftragsverzeichnis

Dataset-Namen in Kleinbuchstaben

Die Namen von GRIDs und Coverages müssen unter UNIX/Linux in Kleinbuchstaben angegeben werden. Obwohl nur für diese beiden Datasets Namen in Kleinbuchstaben erforderlich sind, sollten Sie grundsätzlich für alle Datasets, einschließlich Verzeichnisnamen, Namen in Kleinbuchstaben verwenden.

Verwandte Themen


7/10/2012