Ce comportement est tout ce qui est de plus normal.
/home/test appartient à l’utilisateur test, et cet utilisateur à les droits rwx sur son répertoire, ce qui veut dire qu’il peut supprimer ce qui est dedans.
Comme test est propriétaire de SON répertoire, il est (et encore heureux) autorisé à virer de celui ci tout ce qui ne lui plait pas.
De même qu’en tant qu’utilisateur, tu peux modifier ton fichier et l’enregistrer. Par contre, il n’appartiendra plus à root:root, mais à test une fois celui ci modifié.
Donc, comme cela à été dit par yap22 et vvanholl2, les droits que vous avez sur un fichier son aussi, mais surtout, rattachés aux droits du répertoire parent.
Vous pouvez faire l’essai inverse : Créez un répertoire, attribuez le à root:root, et placez dedans un fichier à votre nom. Vous ne pouvez pas le supprimer.
Et la vrai explication, c’est que tout est fichier sous *nix. Vous pouvez voir un répertoire de cette façon :
On comprends mieux pourquoi pour supprimer un fichier du répertoire test, il faut pouvoir modifier le fichier /home/test afin de retirer la ligne correspondant au fichier. Si ce fichier (Que nous appelons répertoire) appartient à root, un utilisateur ne peut simplement pas le modifier. A l’inverse, si ce fichier vous appartient, vous pouvez supprimer la ligne correspondant au fichier incriminé, et ce même si c’est root qui l’a créé.
Juste pour la blague, ne le prends pas mal :
Tu as du rater 50 ans de gestion de droits Unix 