Installing SAP Content Server 7.5x (Linux) & Configuring GOS Storage for S/4HANA 2023+
End-to-end setup guide for SAP Content Server 7.5x on Linux with FileSystem driver, offloading Generic Object Services (GOS) attachments from database table SOFFCONT1 to reduce HANA database footprint.
1. Architectural Objective #
Offload Generic Object Services (GOS) attachments (PDFs, Office documents, scanned invoices from transactions FB03, ME23N, VA03, etc.) from SAP HANA database table SOFFCONT1 to a dedicated SAP Content Server 7.5x (FileSystem driver) running on Linux.
- Benefits: Prevents database bloat in SAP HANA memory and disk data volumes, reduces storage costs, and minimizes backup/restore recovery times.
2. 5-Step Deployment Runbook #
Step 1: Install SAP Content Server on Linux #
- Launch Software Provisioning Manager (SWPM):
Generic Installation Options -> SAP Content Server -> Standalone Engines -> Content Server. - Select Storage Type: File System (default port
1090, scriptsapcs). - Verify that the Content Server daemon is responding via cURL:
curl "http://<cs_host>:1090/sapcs?serverInfo" # Expected output: serverStatus="running"
Step 2: Provision the OS-Level Storage Repository (Linux) #
Create the physical directory, set proper permissions, and configure the repository definition:
# 1. Create storage directory for repository ZGOS
mkdir -p /sapmnt/<SID>/content/ZGOS
# 2. Assign ownership to the Content Server service user (<sid>adm / sapsys)
chown -R <sid>adm:sapsys /sapmnt/<SID>/content/ZGOS
chmod -R 770 /sapmnt/<SID>/content/ZGOS
Define the repository in cs.cnf (or ContentServer.ini, e.g., /sapmnt/<SID>/exe/cs.cnf):
[Repository-ZGOS]
ContentStorageName=ZGOS
StorageType=FileSystem
StorageDriver=FSStorageDriver
StoragePath=/sapmnt/<SID>/content/ZGOS
Security=1
ContRep=ZGOS
Restart the Content Server service:
systemctl restart apache2 # or: /usr/sap/<SID>/SYS/exe/sapcs restart
Step 3: Configure Repository Connection in S/4HANA #
1. Define HTTP Repository (Transaction OAC0) #
- Content Rep.:
ZGOS - Storage type:
06 HTTP content server - Version no.:
0046or0047 - HTTP server:
<cs_host>(IP or FQDN) - Port number:
1090 - HTTP Script:
sapcs - Press Save (
Ctrl + S).
2. Initialize & Activate Certificates (Transaction CSADMIN) #
- Open transaction
CSADMINand enter repositoryZGOS. - Repository tab: Click Create repository → Status changes to
defined. - Certificates tab: Click Send Certificate → Highlight the sent certificate row → Click Activate (Status changes to
Active).
Step 4: Reroute GOS Storage Category (Transaction OACT) #
- Open transaction
OACTand locate categorySOFFDB. - Update the Content Rep. field from
SYSTEMtoZGOS. - Click Save.
[!NOTE]
All subsequent GOS attachments created in transactions likeFB03orME23Nwill now stream directly to/sapmnt/<SID>/content/ZGOSon the Linux filesystem instead of consuming space in HANA tableSOFFCONT1.
Step 5: Migrate Legacy DB Attachments to Content Server (Optional) #
To relocate existing attachments stored in the database:
- Transaction OACT: Create temporary category
SOFFDB_OLDpointing to Content RepSYSTEM. - Transaction SE38: Execute migration report
RSIRPIRL(schedule as a background job via transactionSM36for high volumes):- Source Category:
SOFFDB_OLD - Target Category:
SOFFDB
- Source Category:
- HANA DB Reorganization: Reclaim disk space back to the operating system after migration:
ALTER TABLE "SAPHANADB"."SOFFCONT1" REORGANIZE;
3. Verification & Acceptance Testing #
- Open transaction
FB03orME23N→ Click Services for Object (GOS) → Create... → Create Attachment → Upload a sample PDF or document. - Confirm physical file creation on the Linux host:
ls -laR /sapmnt/<SID>/content/ZGOS/ - Re-open the document from the Attachment List in SAP GUI to verify complete file retrieval and display.