Erst mal char. Polynom bestimmen durch 
det(A-x*E) =(x-2)^4   Es gibt also nur den Eigenwert 2.
Also nur einen Jordan-Block.
Dann Eigenraum bestimmen:  
(A - 2*E )* (x1;x2;x3;x4)^T = 0-Vektor  
führt auf die Matrix 
1     0      0      -1       0
0    1     -1       1        0
0     0      0       0       0
0     0      0       0        0  
x4=t    x3=s      x2 =  -t  +   s        x1 = t 
also   (x1;x2;x3;x4)=( t  ;    -t+s    ;   s    ;   t   ) 
=  t*( 1 ; -1  ;  0   ;  1  )  +  s*( 0   ;   1   ;    1    ;    0  )      
Also gibt es nur zwei lin. unabh. Eigenvektoren nämlich
( 1 ; -1  ;  0   ;  1  )  und   ( 0   ;   1   ;    1    ;    0  )    .
Also gibt es zwei Jordankästchen, entweder ein einer und ein dreier
oder zwei zweier.  Betrachte dazu
(A - 2*E )^2  * (x1;x2;x3;x4)^T = 0-Vektor 
gibt nach Umformung
0      1      -1       1
0     0       0        0
0     0       0        0
0     0       0        0
also Basis des Lösungsraumes 
(1;0;0;0) , (0;1;1;0) (0;-1;0;1) 
Also größtest Kästchen von Größe 3 und damit
Jordanform
2       0       0      0   
0       2       1      0
0      0       2       1
0      0        0       2 
So, jetzt brauchen wir noch X-1 und X.
Erst mal b1 bestimmen:
z.B. wie bei 
https://martin-thoma.com/jordansche-normalform-4x4-matrizen/#tocAnchor-1-9-1
Beispiel 3
b1 = (0;1;0;0)^T  
b2=(0;1;0;-1)^T 
b3=(1;1;2;1)^T
und dann entsprechend b4 für das kleine Kästchen
b4=(0;1;1;0) 
gibt   X = 
0     1      0       0
1    1      1       1
1    2      0       0 
0    1     -1       0
und damit bekommst du in der Tat durch
X-1 * A * X die gesuchte Jordanform
2       0       0      0   
0       2       1      0
0      0       2       1
0      0        0       2