In an (n, k, d) rack-aware storage model, the system consists of n nodes uniformly distributed across n successive racks, such that each rack contains u nodes of equal capacity and the reconstructive degree satisfies k = ku + v where k = ⌊k/u⌋, 0 ≤ v ≤ u − 1. Suppose there are h ≥ 1 failed nodes in a rack (called the host rack). Then together with its surviving nodes, the host rack downloads recovery data from d helper racks and repairs its failed nodes. In this paper, we focus on the rack-aware minimum storage regenerating (MSR) codes for repairing h failed nodes within the same rack. By using the coupled-layer construction with the alignment technique, we construct a class of rack-aware MSR codes for all k+1 ≤ d ≤ n−1 which achieve the small sub-packetization l = s⌈n/s⌉ where the field size q increases linearly with n and s = d − k + 1. In addition, these codes achieve the optimal repair bandwidth for 1 ≤ h ≤ u−v, and the asymptotically optimal repair bandwidth for u − v + 1 ≤ h ≤ u. In particular, they achieve the optimal access when h = u−v. It is worth noting that the existing rack-aware MSR codes which achieve the same sub-packetization l = s⌈n/s⌉ are only known for the special case of d = n − 1, h = 1, and the field size is much larger than ours.

