วิธีแชร์ไฟล์. bashrc ระหว่างสองบัญชีผู้ใช้ mac


11

ฉันได้ตั้งค่าการเข้าสู่ระบบของผู้ใช้สองคนบนคอมพิวเตอร์ของฉันหนึ่งสำหรับบ้านและหนึ่งสำหรับการทำงาน ฉันต้องการแบ่งปันการตั้งค่า bash และ vim ใด ๆ ของฉันระหว่างผู้ใช้สองคน อย่างไรก็ตามมีการทำเช่นนี้? ป่านนี้ฉันได้คัดลอกพวกเขาจากบัญชีหนึ่งไปยังอีกบัญชีหนึ่ง แต่ฉันต้องการที่จะมีเพียงไฟล์เดียวระหว่างสองไฟล์เพื่อให้ฉันสามารถเปลี่ยนแปลงได้ในที่เดียว เป็นไปได้ไหม ขอบคุณ

คำตอบ:


11

คุณสามารถใช้lnเครื่องมือเพื่อสร้างลิงก์สัญลักษณ์ :

ln -s /Users/user1/.bashrc /Users/user2/.bashrc

ในตัวอย่างนี้คุณกำลังสร้างลิงค์ใหม่สำหรับuser2ชี้กลับไปยังไฟล์ที่มีอยู่ในuser1ไดเรกทอรีของ คุณอาจต้องใช้sudo ln ...หากการตั้งค่าการอนุญาตไม่ถูกต้อง


5
ในบริบทนี้อาจเป็นการดีกว่าฮาร์ดลิงก์ดังนั้นการลบบัญชีผู้ใช้หนึ่งบัญชีจะไม่ลบไฟล์. bashrc สำหรับบัญชีที่เหลือเช่นกัน
Gerry

ในการทำเช่นนั้นเพียงละเว้น-sตัวเลือกในlnคำสั่ง
MattDMo

3
ยิ่งไปกว่านั้นทำสิ่งนี้ แต่ใส่ bashrc ของคุณไว้ในโฟลเดอร์ Dropbox ที่แชร์เพื่อให้มันใช้ได้ในทุกเครื่องที่คุณใช้และสำรองไว้
Dean

11

มีหลายวิธีในการทำสิ่งนี้ แต่สำนวนทั่วไปที่ฉันเคยเห็นคือการติดตั้งไฟล์เดียวนอกโฟลเดอร์บ้านของผู้ใช้แต่ละคนและมีทั้งแหล่งไฟล์ ~ / .bashrc ในไฟล์ทั่วไป

สิ่งนี้ทำให้เกิดความชัดเจนมีแนวโน้มที่จะทำการเปลี่ยนแปลงระดับผู้ใช้ในภายหลัง แต่ยังคงมีเพียงหนึ่งไฟล์ที่จะมีชีวิตรอดไม่ว่าผู้ใช้หนึ่งหรือทั้งสองจะถูกลบในภายหลัง

มันใช้งานได้ดีกว่าการลิงก์ไฟล์อย่างหนักและประสบการณ์ของฉันในการใช้ซอฟต์ลิงค์สำหรับสิ่งนี้คือการหลีกเลี่ยงเพราะเครื่องมือบางอย่างไม่รองรับลิฟท์ (หรือ sym) เช่นเดียวกับที่คุณคาดหวัง

นอกจากนี้ยังง่ายกว่าการใช้การควบคุมรหัสเพื่อปรับใช้ไฟล์ แต่ก็เป็นวิธีที่ดีในการจัดการการเปลี่ยนแปลงหากคุณกำลังจะตั้งค่า git หรือ mercurial หรือระบบควบคุมเวอร์ชันอื่นด้วย


+1 สำหรับโซลูชันนี้ฉันได้ใช้กับ git ที่นี่ - github.com/balupton/dotfiles - ประโยชน์ที่ยิ่งใหญ่ที่ฉันได้พบคือฉันสามารถติดตั้งและใช้การกำหนดค่าแบบกำหนดเองได้อย่างง่ายดายโดยไม่คำนึงถึง OS (osx, ubuntu, fedora) และอื่น ๆ ) เนื่องจากฉันสามารถบำรุงรักษาการกำหนดค่าเฉพาะของเครื่องเหมือนปกติ แต่แหล่งที่มาในการกำหนดค่าทั่วไปที่ซิงค์ระหว่างพวกเขา
balupton

8

คุณสามารถแก้ไข. bashrc ทั่วทั้งระบบซึ่งอยู่ใน / etc / bashrc

หากคุณคุ้นเคยกับ Git อยู่เล็กน้อยคุณควรพิจารณาสร้างที่เก็บสำหรับ "dotfiles" ของคุณ คุณสามารถใช้พื้นที่เก็บข้อมูล Github ฟรีได้ การติดตาม dotfiles ของคุณในลักษณะนี้มีข้อดีหลายประการ:

  • คุณสามารถแยกหรือดึงจากที่เก็บ dotfiles สาธารณะหลายแห่งที่มีอยู่หรือดึงแรงบันดาลใจจากพวกเขา
  • คุณสามารถติดตั้งและอัปเดต dotfiles ในบัญชีผู้ใช้ที่แตกต่างกันและแม้แต่เครื่องที่แตกต่างกันได้อย่างง่ายดาย
  • คุณได้รับการควบคุมการแก้ไขซึ่งอาจช่วยให้คุณรอดพ้นจากปัญหาบางอย่างในระยะยาว

นอกจากนี้การติดตั้งยังให้สิทธิ์ที่ถูกต้องแก่คุณ
Mark

2

ดังที่คนอื่น ๆ ระบุไว้คุณสามารถทำได้ด้วย symlink แต่สิ่งสำคัญคือการเปลี่ยนการอนุญาตอย่างเหมาะสมเพื่อให้ผู้ใช้ทั้งสองสามารถเข้าถึงและแก้ไขไฟล์ได้

  1. ลบที่มีอยู่.bashrcสำหรับuser2:

    rm /Users/user2/.bashrc
  2. symlink user1's .bashrcเพื่อuser2ไดเรกทอรีของผู้ใช้:

    ln -s /Users/user1/.bashrc /Users/user2/.bashrc
  3. เปลี่ยนการอนุญาตเพื่อให้ผู้ใช้ทั้งสองสามารถแก้ไขไฟล์ได้:

    chmod +a "user2 allow read,write,execute" /Users/user2/.bashrc

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.