This paper proposes a linear precoding technique for multiple-input multiple-output (MIMO) decode-and-forward (DF) based relay communications. The proposed precoder is constructed by linearly combining two independently designed precoders that maximize data rates at relay and destination, respectively. Contrary to conventional precoding in DF relay communications, the proposed precoding balances direct and relay links and maximize the achievable rate of the overall system. We also propose a distributed precoder design method using limited information. The proposed algorithms are shown to significantly reduce computation complexity of precoder design. The numerical results show that the proposed precoders with full information and limited information achieve significantly higher data rates than conventional precoding neglecting a direct link and comparable data rate to the optimal precoding even when the coefficients for linear combining are restricted to real numbers.