replacement – Replaces every nth part of the list

I have a list:

b = ConstantArray[1, 50];

And I would like to replace each sentence of the 5th element by 2: I arrived with:

b[[;; ;; 5]]= b[[;; ;; 5]]/. {1 -> 2}

which works, but I do not like it very much because it is very rigid and just ugly (repeat b[[;; ;; 5]]).

I was trying to do this job with Replace part but I do not know how, I tried to manually replace each element in the same way:

Replace part[b, _?Mod[i_, 5]-> 2]

and also

Replace part[b, _?Mod[#, 5]& -> 2]

but they do not work. Any suggestions on this?