โฟลเดอร์ที่เข้ารหัสถูกเมาท์โดยงาน cron จะไม่ถูกเมาท์


0

ฉันมีสคริปต์ A.sh ที่สอบถามเซิร์ฟเวอร์ ดึงรหัสผ่านการเมานต์และเมานต์โฟลเดอร์ส่วนตัวในไคลเอนต์

จากนั้นฉันมีสคริปต์ Init.sh ที่ตรวจสอบสถานะการเชื่อมต่ออินเทอร์เน็ตก่อนแล้วจึงเรียกใช้ A.sh ในภายหลัง

ถ้าฉันดำเนินการด้วยตนเอง A.sh โฟลเดอร์ส่วนตัวจะพร้อมใช้งานในเซสชันผู้ใช้ทั้งหมดนั้น แต่ถ้าฉันรัน Init.sh หรือ A.sh ผ่านงาน cron ผลลัพธ์จะแสดงว่าโฟลเดอร์นั้นถูกเมานต์ แต่นั่นจะไม่ปรากฏที่อื่น

  • A.sh ดึงรหัสผ่านการเมานท์สำหรับโฟลเดอร์
  • เพิ่มไปยังพวงกุญแจ printf "%s" "$PASS" | sudo ecryptfs-add-passphrase --fnek -
  • จากเอาท์พุทดึงลายเซ็นและแฮ fnek
  • และในที่สุดก็เมานท์โฟลเดอร์ด้วย sudo mount -t ecryptfs -o ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_sig="$SIGNATURE",ecryptfs_fnek_sig="$FNEK",ecryptfs_unlink_sigs,ecryptfs_passthrough=no,no_sig_cache,key=passphrase:passphrase_passwd="$PASS" "$PRIVATE_FOLDER" "$MOUNT_POINT"

ฉันรู้ว่ามันได้รับการติดตั้งเพราะผลลัพธ์ในบันทึกบรรทัดMounted eCryptfsจะปรากฏขึ้น ฉันไม่รู้ว่าทำไมมันถึงติดอันดับในตอนท้ายของสคริปต์

งาน cron ถูกรันภายใต้ crontab ผู้ใช้นั้น

คำตอบ:


0

ตามhttps://wiki.archlinux.org/index.php/ECryptfs

auto-mount, auto-umount [ไฟล์ที่ว่างเปล่า] - หากมีอยู่โมดูล pam_ecryptfs.so จะ (สมมติว่ามันถูกโหลด) จะเมานต์ / เลิกเมานท์ไดเรกทอรีที่เข้ารหัสนี้โดยอัตโนมัติเมื่อผู้ใช้ลงชื่อเข้า / ออก

"ถ้ามี" หมายถึงไฟล์ใน~/.ecryptfs/ไดเรกทอรี

หากคุณต้องการให้โฟลเดอร์ส่วนตัวติดตั้งอัตโนมัติเมื่อสิ้นสุดเซสชัน ssh หรือโลคอลของคุณtouch ~/.ecryptfs/auto-umountจะพอเพียง

แต่ดูเหมือนว่าพฤติกรรมการเมานต์อัตโนมัตินี้จะถูกเก็บไว้ตราบใดที่pam_ecryptfs.soถูกโหลดในหน่วยความจำในเซสชันที่ไม่โต้ตอบเนื่องจากงาน cron แม้ว่าจะไม่มี~/.ecryptfs/auto-umountชุดไฟล์

แสดงความคิดเห็นออกบรรทัด

session optional        pam_ecryptfs.so unwrap

on /etc/pam.d/common-session-noninteractiveจะหยุดการติดตั้งอัตโนมัตินี้ในเซสชันที่ไม่โต้ตอบเช่นงาน cron

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