Essa é uma pergunta difícil de responder.
Primeiro "Unix Like" ou "* nix" geralmente significa POSIX. Todos os sistemas que você listou são sistemas POSIX. POSIX é um conjunto de padrões a serem implementados.
Agora, para as perguntas mais difíceis.
GNU não é realmente um sistema operacional. É mais um conjunto de regras ou filosofias que governam o software livre que, ao mesmo tempo, deu origem a várias ferramentas ao tentar criar um sistema operacional. Portanto, as ferramentas GNU são basicamente versões abertas de ferramentas que já existiam, mas foram refeitas para se adequar aos princípios do software aberto. GNU / Linux é uma malha dessas ferramentas e do kernel do Linux para formar um sistema operacional completo, mas existem outros "GNU" s. GNU / Hurd por exemplo.
O Unix e o BSD são implementações "mais antigas" do POSIX, com vários níveis de "código fechado". O Unix geralmente é um código totalmente fechado, mas existem tantos sabores do Unix quanto o Linux, se não mais. O BSD geralmente não é considerado "aberto" por algumas pessoas, mas, na verdade, é muito mais aberto do que qualquer outra coisa que existia. Seu licenciamento também é permitido para uso comercial com muito menos restrições, pois as licenças mais "abertas" são permitidas.
Linux é o novato. Estritamente falando, é "apenas um kernel", no entanto, em geral, é pensado como um sistema operacional completo quando combinado com o GNU Tools e várias outras coisas.
A principal diferença governante são os ideais. Unix, Linux e BSD têm ideais diferentes que eles implementam. Eles são todos POSIX e são basicamente intercambiáveis. Eles resolvem alguns dos mesmos problemas de maneiras diferentes. Portanto, além dos ideais e de como eles escolhem implementar os padrões POSIX, há pouca diferença.
Para mais informações, sugiro que você leia um breve artigo sobre a criação do GNU, OSS, Linux, BSD e UNIX. Eles serão inclinados para suas idéias individuais, mas quando você ler completamente, terá uma boa idéia das diferenças.
Este diagrama genealógico do Unix mostra claramente a história do Unix, BSD, GNU e Linux ( da Wikimedia ):