This guide documents the process for migrating a Helix Core service from Windows to Linux.

A common scenario is that an on-premisis (on-prem) Windows Helix Core service is being migrated to a cloud server, perhapns in AWS, Azure, or GCP.

Please Give Us Feedback

Perforce welcomes feedback from our users. Please send any suggestions for improving this document to

1. Overview

A Migration has these elements:

  • Deploy New Linux Server machine

  • Upgrade P4D to 2019.2+ on Windows

  • Setup of a server spec for a Linux Replica on the Windows master.

Each of these components is covered, in detail, in this guide.

1.1. Deploy New Linux Server machine

1.1.1. Select Operating System

As of this writing, the best options are:

  • Ubuntu 20.04 (not 22.04 just yet)

  • RHEL/Rocky Linux 8 (not 9 just yet)

  • Amazon Linux 2 (not Amazon Linux 2023 just yet)

Use the Helix Installer, do a Configured Install:

su -
mkdir -p /hxdepots/reset
cd /hxdepots/reset
curl -L -s -O
chmod +x
./ -C > settings.cfg

In settings.cfg, change these settings:

  • DNS_name_of_master_server=

  • SiteTag=

  • P4_PORT=

  • Instance=

  • Password=

  • CaseSensitive=

  • P4USER=

  • ServerID=

  • ServerType=

  • P4BinRel=

  • P4APIRel=

Then run the script:

./ -no_sd -c settings.cfg 2>&1 | tee log.reset_sdp.txt
su - perforce
p4 set
cd /p4/common/site
[[ -d config ]] || mkdir config
cd config

Temporary Hack:

vi /p4/common/site/config/p4_N.vars.local

export P4MASTER_ID=Master
export P4MASTERPORT=120.2:43430

vi /p4/common/config/.p4passwd.p4_mocap.admin

p4login -v

cd /p4/common/config vi SiteTags.cfg

azwestus2: Azure data center

Modify rpotections to add:

Add to Protections:

super group ServiceUsers * //... -t fs -s azwestus2 -r TestMachine

Undo Temporary Hack:

vi /p4/common/site/config/p4_N.vars.local

#export P4MASTER_ID=Master
export P4MASTERPORT=120.2:43430

Appendix A: Why Migrate?

Appendix B: Why Migrate?

EDITME - add content later.