เรากำลังตั้งค่าการแชร์เครือข่ายกับ Samba ซึ่งใช้เป็นที่จัดเก็บข้อมูลภายนอกสำหรับเซิร์ฟเวอร์ Linux (Fedora 35) การอ่านและเขียนไฟล์ใช้งานได้ สิทธิ์ดูเหมือนจะตั้งค่าอย่างถูกต้อง แต่มีปัญหากับการดำเนินการสองอย่างที่เราอยากจะทำได้ ทั้งคู่ทำงานบนเครื่องเดียวกันหากไดเร็กทอรีเป้าหมายไม่ได้อยู่ในการแชร์
อันแรกใช้การแชร์เพื่อจัดเก็บสภาพแวดล้อม Conda การตั้งค่าจะเป็นดังนี้:
ln -s /mnt/share/$username/.conda /home/$username/.conda
conda สร้าง -n ขวดทดสอบ
(คุณอาจต้องเพิ่ม conda-ฟอร์จ
เพื่อให้คำสั่งดังกล่าวสำเร็จ conda config -- เพิ่มช่อง conda-forge
). คำสั่งที่สองยกเลิกด้วยข้อความต่างๆ ดังต่อไปนี้:
CondaVerificationError: แพ็คเกจสำหรับ ncurses อยู่ที่ /home/$username/.conda/pkgs/ncurses-6.2-h58526e2_4
ดูเหมือนจะเสียหาย เส้นทาง 'lib/terminfo'
ไม่พบที่ระบุในรายการแพ็คเกจ
SafetyError: แพ็คเกจสำหรับ ncurses อยู่ที่ /home/$username/.conda/pkgs/ncurses-6.2-h58526e2_4
ดูเหมือนจะเสียหาย เส้นทาง 'share/terminfo/E/Eterm'
มีขนาดไม่ถูกต้อง
ขนาดที่รายงาน: 2224 ไบต์
ขนาดจริง: 842 ไบต์
Conda พยายามติดตั้ง 25 แพ็คเกจ โดยมีเพียงสี่แพ็คเกจเท่านั้นที่สร้างข้อผิดพลาด ซึ่งหมายความว่าแพ็คเกจที่เหลืออาจติดตั้งได้ดี แต่ฉันไม่แน่ใจเนื่องจากไม่มีสภาพแวดล้อมที่สร้างขึ้นในตอนท้าย
ปัญหาที่สองคือกับ R เมื่อไลบรารีของผู้ใช้ถูกนำไปแชร์ (ln -s /mnt/share/$username/R /home/$username/R
) การติดตั้งบางแพ็คเกจ (เห็นได้ชัดว่าใช้การติดตั้งแบบสเตจ) ล้มเหลวตัวอย่างเช่น หากคุณพยายามติดตั้ง หรั่ง
จากภายใน R ด้วย install.packages('rlang')
จะล้มเหลวในตอนท้ายด้วยข้อความนี้:
mv: ไม่สามารถย้าย '/mnt/share/$username/R/x86_64-redhat-linux-gnu-library/4.1/00LOCK-rlang/00new/rlang' เป็น '/mnt/share/$username/R/x86_64-redhat -linux-gnu-library/4.1/rlang': ปฏิเสธการอนุญาต
ข้อผิดพลาด: การย้ายไปยังตำแหน่งสุดท้ายล้มเหลว
มีแพ็คเกจที่ติดตั้งโดยไม่มีปัญหา ปัญหาเฉพาะนี้สามารถแก้ไขได้โดยเช่น เพิ่มพารามิเตอร์ดังนี้:
install.packages("rlang", INSTALL_opts = '--no-lock')
แต่ 1) เป็นการดีที่ไม่ต้องใช้วิธีแก้ไข และ 2) ไม่ใช่ทุกโปรแกรมที่เราต้องการใช้จะมีโซลูชันในตัวแบบนี้
ฉันเลยสงสัยว่านี่เป็นข้อจำกัดพื้นฐานสำหรับการแชร์เครือข่ายหรือโดยเฉพาะอย่างยิ่ง Samba หรือเราพลาดอะไรไประหว่างการตั้งค่า นี้เป็น smb.conf
ซึ่งส่วนใหญ่เป็นสต๊อกแก้ไขโดย เข้าร่วมอาณาจักร --membership-software=samba --client-software=winbind
การตั้งค่าพิเศษบางอย่างที่แนะนำโดยเอกสาร Samba และการอนุญาตที่ตั้งค่าจากเครื่อง Windows โดยใช้การจัดการคอมพิวเตอร์:
[ทั่วโลก]
เวิร์กกรุ๊ป = DOMAIN
ความปลอดภัย = โฆษณา
แบ็กเอนด์ passdb = tdbsam
การพิมพ์ = ถ้วย
พิมพ์ชื่อ = ถ้วย
โหลดเครื่องพิมพ์ = ใช่
ตัวเลือกถ้วย = ดิบ
วิธี kerberos = ความลับและแท็บคีย์
เทมเพลต homedir = /home/%U@%D
เปลือกแม่แบบ = /bin/bash
ขอบเขต = DOMAIN.LOCAL
idmap config DOMAIN : range = 2000000-2999999
idmap config DOMAIN : แบ็กเอนด์ = กำจัด
การกำหนดค่า idmap * : ช่วง = 10,000-999999
idmap config * : แบ็กเอนด์ = tdb
winbind ใช้โดเมนเริ่มต้น = ไม่
ตั๋วรีเฟรช winbind = ใช่
winbind เข้าสู่ระบบออฟไลน์ = ใช่
winbind enum กลุ่ม = ไม่
ผู้ใช้ winbind enum = ไม่
วัตถุ vfs = acl_xattr
แผนที่ acl สืบทอด = ใช่
จัดเก็บแอตทริบิวต์ dos = ใช่
[แบ่งปัน]
เส้นทาง = /srv/แบ่งปัน
อ่านอย่างเดียว = ไม่
acl_xattr:ละเว้นระบบ acl = ใช่