สภาพแวดล้อม ZSH บนคอมพิวเตอร์ระยะไกลเสียขัดข้องทันทีที่เข้าสู่ระบบผ่าน ssh

Aug 20 2020

ฉันมีปัญหาในการเรียกใช้ oh-my-zsh บนคอมพิวเตอร์ระยะไกลซึ่งฉันไม่มีสิทธิ์การเข้าถึงระดับรูทดังนั้นฉันจึงลองดาวน์โหลดและรวบรวม zsh โดยทำตามขั้นตอนเหล่านี้

ฉันรู้ว่าฉัน messed ขึ้นในขั้นตอนสุดท้ายที่ผมควรจะเริ่มต้น zsh "อย่างชัดเจนหรือโปรแกรมจากไฟล์เริ่มต้นเปลือกปัจจุบันของคุณ (ใส่exec $HOME/bin/zsh -lในจุดที่เหมาะสม)."

ฉันเพิ่มexec $HOME/bin/zsh -lในบรรทัดแรกของ ~ / .zshrc ของฉันและหาแหล่งที่มาและทุกอย่างก็แข็งตัว หลังจากออกจากระบบฉันไม่สามารถลบการเปลี่ยนแปลงของฉันได้เนื่องจากเชลล์ขัดข้องทันทีที่ฉันลงชื่อเข้าใช้รีโมตผ่าน ssh:

Last login: Thu Aug 20 11:50:42 2020 from ***.***.***.*


~/.zshrc:3: exec format error: ~/bin/zsh
Connection to *my.remote* closed.

หรือไม่ก็ VScode remote ssh ยิงกลับข้อผิดพลาดนี้หลังจากที่เทอร์มินัลล่ม:

The terminal process "/bin/zsh '-l'" terminated with exit code: 126.

ความช่วยเหลือสำหรับความผิดพลาดโง่ ๆ ของฉันได้รับการชื่นชมอย่างมาก ขอบคุณ.

คำตอบ

1 chepner Aug 20 2020 at 18:44

คุณต้องใส่exec $HOME/bin/zsh -lไฟล์คอนฟิกูเรชันที่เหมาะสมสำหรับล็อกอินเชลล์ สมมติว่ามีการเพิ่มเส้นbash .bash_profileตามที่แนะนำในความคิดเห็นให้ใช้

ssh -t host vim

เพื่อเริ่มต้นvim(หรือตัวแก้ไขที่คุณเลือก) เพื่อแก้ไข.zshrcและ.bash_profileเหมาะสม