Por enquanto eu só encontrei soluções onde executar todos os comandos xl com permissões sudo.
Como a saída se parece no meu 17.10 com o Xen 4.9:
$ xl list
xencall: error: Could not obtain handle on privileged command \
interface: Permission denied
libxl: error: libxl.c:102:libxl_ctx_alloc: cannot open libxc \
handle: Permission denied
cannot init xl context
sudo xl list
Name ID Mem VCPUs State Time(s)
Domain-0 0 15925 8 r----- 890.9
Por exemplo, com libvirt no libvirt.conf você pode decidir com precisão qual socket pode ser usuário pelo qual usuário e grupo. Existe uma opção similar para xl?