Why does sudo su work, but su does not?
su
requires the password of the account whose privileges you are trying to assume (apparently root
in this case).
sudo
requires the password of the current user - that is, the password for user kshitiz
.
By running sudo su
, you are effectively becoming root
, then running su
to get a root shell - that is, your privileges are already elevated to root
before the call to su
is executed, which is why you don't get prompted for the root password again.