<< 
      LinearAlgebra`MatrixManipulation`

    A = {{3, 1, 2, 1, 0}, {2, 1, 3, -1, 0}, {1, 0, 3, 
            2, -1}};

    Print["A=", A // MatrixForm];

    H = {{-2}, {3}, {4}};

    Aaugment = AppendRows[A, H];

    Print["Augment=", Aaugment // MatrixForm];

    AaugmentRREF = RowReduce[Aaugment];

    Print["AugmentRREF=", 
        AaugmentRREF // MatrixForm];

By visual inspection, 
(Subscript[x, 1]) + 
          2  (Subscript[x, 4]) - (1/4) 
            (Subscript[x, 5]) = -(11/4); 
(Subscript[x, 2]) - 5  (Subscript[x, 4]) + (5/4) (Subscript[x, 5]) = (7/4); 
    (Subscript[x, 3]) - (1/4) (Subscript[x, 5]) = (9/4);
5 unknowns,  3 equations;
choose to epxress the solutions in terms of (Subscript[x, 4]), (Subscript[x, 5]);

(Subscript[x, 1]) = -(11/4) - 
          2  (Subscript[x, 4]) + (1/4) (Subscript[x, 5]);
(Subscript[x, 2]) = (7/4) + 5  (Subscript[x, 4]) - (5/4) (Subscript[x, 5]);
(Subscript[x, 3]) = (9/4) + (1/4) (Subscript[x, 5]);
Xp = {{(Subscript[x, 1])}, {(Subscript[x, 2])}, {(Subscript[x, 3])}, {(Subscript[x, 4])}, {(Subscript[x, 5])}};
Print["Xp=", Xp // MatrixForm];
LHS = A . Xp;
Print["A.Xp=", LHS // MatrixForm];

\(\(\(
\)\(x\_4 = Random[]; 
    x\_5 = Random[];

    \(Print[\*""\!\(x\_4\)="", x\_4, \ \*"" \!\(x\_5\)="", 
        x\_5];\)

    \(Print["A.Xp=", A . Xp // MatrixForm];\)\)\)\)