rulu ruru

post bzr+ssh group rw a umask

June 2nd, 2010

Filed under: linux — starenka @ 17:16
Tags: , , , , ,

Znáte ten pocit bezmoci, když nějakou věc rešíte už po třetí a pokaždý vás stojí 20 bodů IQ, máte pogrepovanej celej Gugl, zmateně a kuse se to snažíte natlačit do hlavy všem, který ještě maji náladu vás poslouchat a pořád nemůžete přijít na to, “jak jsem to sakra minule udělal”? Já jo. 

Pro mě už klasická situace. Máte server, na kterej x uživatelů s primarní grupou (řekněme vcs) pushuje repozitáře. Aby se zabránilo tomu, aby nově vytvořený branche a upravený soubory byly -w pro zmíněnou grupu, je třeba nastavit umask 0002. To je logický. Jenže kámen úrazu je v tom, že nastavení umasku v /etc/profile nepomáhá. Ano, pro někoho je to zřejmý, protože binárka bzr nespouští žádnej shell. Ááááchjo. Řešení je opravdu jednoduchý. Stačí vytvořit wrapper, kterej pustí umask a pak zavolá bazaar s parametrama, který na wrapper přišly. Čili něco jako:

starenka@xxx:~$ cat /usr/local/bin/bzr
#!/usr/bin/env bash
umask 0002
/usr/bin/bzr "$@"
 

PS. chtěl bych poděkovat ntz, za to, že mě trpělivě naved’ až ke slovu wrapper a já si vzpomněl, jak už jsem to dvakrát předtím řešil :)

ruldrurd
© starenka 2oo7, cute alien monster by noizcut, original theme by Laurentiu Piron - customized by starenka | proudly powered by WordPress