Próbuję użyć rc jako moja powłoka logowania w Ubuntu (używając chsh). Zauważyłem, że nie odczytuje pliku $ HOME / .rcrc podczas uruchamiania. Dokumentacja mówi, że jeśli zostanie wywołana jako powłoka logowania z * argv [0] == '-' lub z flagą -l, to odczytuje plik .rcrc i mogę to sprawdzić, wykonując go bezpośrednio przez $ rc -l
. lub z zsh ARGV0=-rc /usr/bin/rc
.
Jednak po wykonaniu logowania nie odczytuje pliku .rcrc, a wyjście ps wskazuje, że nazwa powłoki to po prostu „rc”, a nie „-rc”. Tak więc moje pytanie brzmi: jak pobrać / usr / bin / rc do odczytu .rcrc przy starcie? i dlaczego ubuntu nie ma przedrostka „-” w powłoce? Czy istnieje inny sposób wykrywania powłoki: powłoka logowania?
/usr/bin/rc -l
będzie działać w twoim przypadku. Oczywiście to obejdzie/etc/passwd
/chsh
. // Możesz oczywiście napisać skrypt, który po prostu działa/usr/bin/rc -l
, zapisz go na/usr/bin/rcl
, uczyń go wykonywalnym i dodaj do/etc/shells
. Natychmiastowa nowa powłoka!