O melhor método seria você aprender a criar uma cópia antes de editar um arquivo.
Isso disse ...
Is there a way to prevent files to be overwritten
Sim. Na linha de comando, defina o atributo "imutável" (somente o administrador pode remover essa opção) e ninguém poderá alterar o arquivo (editar, remover, mover, etc.). Você faz isso com ...
sudo -i
{password}
chattr +i {file}
( -i
para removê-lo)
Either it should ask for root password
O Ubuntu não possui uma senha de root.
Você pode modificar um arquivo (mesmo que seja somente leitura) se você o possuir e tiver acesso de gravação ao diretório. Veja por exemplo Por que eu posso modificar um arquivo somente leitura? sobre como salvar do vim. Em seguida, ele vai reclamar que você precisa tomar uma ação extra antes de salvá-lo.
Não é exatamente o que você pediu, mas é um método para obter algum tipo de notificação antes de sobrescrevê-la.
or simply save it with a new name, like windows does, adding numbers to names.
Você precisará de um script para isso ao fazer isso na linha de comando. Aqui estão alguns exemplos: link