diff --git a/host_state_manager_main.cpp b/host_state_manager_main.cpp
index b96cdbf..13c8f53 100644
--- a/host_state_manager_main.cpp
+++ b/host_state_manager_main.cpp
@@ -2,6 +2,7 @@
 
 #include "host_state_manager.hpp"
 
+#include <fmt/format.h>
 #include <getopt.h>
 
 #include <sdbusplus/bus.hpp>
@@ -11,6 +12,9 @@
 #include <filesystem>
 #include <iostream>
 
+constexpr auto LEGACY_HOST_STATE_PERSIST_PATH =
+    "/var/lib/phosphor-state-manager/requestedHostTransition";
+
 int main(int argc, char** argv)
 {
     size_t hostId = 0;
@@ -40,6 +44,22 @@
     auto hostBusName = std::string{HOST_BUSNAME} + std::to_string(hostId);
     auto objPathInst = std::string{HOST_OBJPATH} + std::to_string(hostId);
 
+    if (hostId == 0)
+    {
+        // Host State Manager was only support single-host and there only one
+        // file to store persist values, to support multi-host state management,
+        // each service instance access new file path format with prefix 'hostN'
+        // now.For backward compatibility if there is a legacy persist file
+        // exist, rename it to the new file format of host0.
+
+        fs::path legacyPath{LEGACY_HOST_STATE_PERSIST_PATH};
+        fs::path newPath{fmt::format(HOST_STATE_PERSIST_PATH, hostId)};
+        if (fs::exists(legacyPath))
+        {
+            fs::rename(legacyPath, newPath);
+        }
+    }
+
     // Add sdbusplus ObjectManager.
     sdbusplus::server::manager::manager objManager(bus, objPathInst.c_str());
 
