ลบเวอร์ชันไฟล์ ownCloud อย่างปลอดภัยด้วยคำสั่ง occ

สำหรับownCloud Server Classicคำสั่งผู้ดูแลระบบสำหรับการลบเวอร์ชันไฟล์ที่บันทึกไว้คือocc versions:cleanupเพิ่มรหัสผู้ใช้หนึ่งรายการขึ้นไปเพื่อจำกัดการลบ ละเว้นรหัสผู้ใช้เฉพาะเมื่อคุณต้องการลบประวัติเวอร์ชันสำหรับผู้ใช้ทุกคน การดำเนินการนี้เป็นการทำลายข้อมูล ดังนั้นโปรดสำรองข้อมูลฐานข้อมูล ownCloud และพื้นที่จัดเก็บไฟล์ก่อน

ตัวอย่างสมมติ:อเล็กซ์ดูแลเซิร์ฟเวอร์ ownCloud รุ่นคลาสสิก และต้องการลบเวอร์ชันเก่าของบัญชีทดสอบที่เลิกใช้งานแล้วชื่อ [ชื่อบัญชีทดสอบ] demo_userตัวอย่างสมมตินี้แสดงคำสั่งที่ต้องการลบและเปรียบเทียบกับวิธีการล้างข้อมูลทั้งเซิร์ฟเวอร์ โดยไม่ได้อธิบายถึงการทำงานจริงหรือผลลัพธ์

1. ยืนยันรุ่น ownCloud และเป้าหมาย

ขั้นตอนด้านล่างนี้ใช้occคำสั่งในบรรทัดคำสั่งที่ระบุไว้สำหรับ ownCloud Server 10.16 ขั้นตอนเหล่านี้ใช้ไม่ได้กับ ownCloud Infinite Scale (oCIS) ซึ่งใช้ชุดคำสั่งที่แตกต่างกัน หากคุณไม่แน่ใจว่าติดตั้งผลิตภัณฑ์ใด โปรดตรวจสอบกับผู้ดูแลระบบก่อนดำเนินการล้างข้อมูล

ในการติดตั้ง Linux ทั่วไป ให้เปลี่ยนไปยังไดเร็กทอรีการติดตั้ง ownCloud เส้นทางต่อไปนี้เป็นตัวอย่างสำหรับ Ubuntu โปรดใช้เส้นทางจริงของคุณ:

cd /var/www/owncloud

ตรวจสอบให้แน่ใจว่าแอป Versions เปิดใช้งานอยู่ และยืนยันรหัสบัญชีที่คุณต้องการใช้งาน:

sudo -u www-data ./occ app:list --enabled files_versions

หน้าต่างเทอร์มินัลแสดงคำสั่งเพื่อตรวจสอบว่าแอป files_versions ของ ownCloud เปิดใช้งานอยู่หรือไม่
ตรวจสอบให้แน่ใจว่าfiles_versionsแอปนั้นเปิดใช้งานอยู่ก่อนที่จะใช้คำสั่งล้างข้อมูลของแอปนั้น

เอกสารอ้างอิง ownCloud ระบุว่าคำสั่งเวอร์ชันจะใช้งานได้เฉพาะเมื่อfiles_versionsเปิดใช้งานเท่านั้น และจะไม่สามารถใช้งานได้ในโหมดบำรุงรักษาแบบผู้ใช้คนเดียว เรียกใช้occคำสั่งในฐานะผู้ใช้ HTTP ของเว็บเซิร์ฟเวอร์เพื่อให้สิทธิ์การเข้าถึงไฟล์สอดคล้องกัน บน Debian หรือ Ubuntu โดยปกติจะเป็นผู้www-dataใช้ ส่วนระบบปฏิบัติการอื่นๆ อาจใช้บัญชีที่แตกต่างกัน ดูเอกสารอ้างอิงคำสั่ง occ ของ ownCloud

2. ย้อนกลับไปและเลือกขอบเขต

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

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

หากเป้าหมายคือการลบเวอร์ชันเก่าทั้งหมดสำหรับบัญชีนี้ ให้ใช้คำversions:cleanupสั่งนี้ ไม่มีตัวเลือกการทดสอบก่อนดำเนินการ (dry-run) ที่ระบุไว้สำหรับคำสั่งนี้ ดังนั้นโปรดตรวจสอบเป้าหมายและสำรองข้อมูลก่อนดำเนินการ อย่าตั้งค่าเซิร์ฟเวอร์ให้อยู่ในโหมดบำรุงรักษาผู้ใช้คนเดียวสำหรับการดำเนินการนี้: ownCloud ระบุว่าคำสั่งเวอร์ชันไม่สามารถใช้งานได้ในโหมดนั้น

3. ดำเนินการล้างข้อมูลแบบเจาะจง หรือเลือกผู้ใช้ทั้งหมดโดยเจตนา

สำหรับการติดตั้งบนระบบ Linux ทั่วไป ให้รันคำสั่งจากไดเร็กทอรี ownCloud โดยใช้ผู้ใช้ HTTP ส่วนบนระบบ Debian หรือ Ubuntu นั้น Alex จะรันคำสั่งดังนี้:

sudo -u www-data ./occ versions:cleanup demo_user

หน้าต่างเทอร์มินัลแสดงคำสั่งที่กำหนดเป้าหมาย sudo -u www-data ./occ versions:cleanup demo_user
การเพิ่มdemo_userข้อจำกัดจะจำกัดการล้างข้อมูลเฉพาะในบัญชี ownCloud นั้นเท่านั้น

ในไวยากรณ์ที่ระบุไว้versions:cleanup [user_id]...จะยอมรับรหัสบัญชีอย่างน้อยหนึ่งรหัส หากไม่ได้ระบุรหัส ระบบจะลบไฟล์เวอร์ชันสำหรับผู้ใช้ทั้งหมด ใช้รูปแบบทั่วโลกหลังจากอนุมัติขอบเขตนั้นอย่างชัดเจนแล้วเท่านั้น:

sudo -u www-data ./occ versions:cleanup

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

ตัวอย่างของ ownCloud แสดงคำสั่งที่ระบุผู้ใช้ทั้งหมดสำหรับการลบเมื่อไม่ได้ระบุ ID; การระบุ ID จะจำกัดการดำเนินการให้เหลือเฉพาะบัญชีเหล่านั้น คู่มือยังระบุด้วยว่าเวอร์ชันหลักถาวรที่เผยแพร่แล้วสามารถลบได้โดยผู้ดูแลระบบด้วยคำสั่งนี้ แม้ว่านโยบายการเก็บรักษาปกติจะไม่ทำให้หมดอายุก็ตาม ตรวจสอบกับเจ้าของเนื้อหาก่อนที่จะลบบัญชีที่อาจมีการแก้ไขที่ได้รับการอนุมัติหรือเผยแพร่แล้ว อย่าเพิ่ม--no-interactionเพื่อข้ามข้อความแจ้งเตือน สำหรับการติดตั้งคอนเทนเนอร์ รูปแบบที่บันทึกไว้คือdocker exec --user www-data <owncloud-container-name> occ <your-command>; แทนที่ตัวยึดตำแหน่งด้วยชื่อคอนเทนเนอร์จริงและคำสั่งที่คุณเลือก ปรึกษาคำแนะนำของ Docker และ occหากการปรับใช้ของคุณใช้ผู้ใช้คอนเทนเนอร์ที่แตกต่างกัน

4. ใช้การกำหนดวันหมดอายุเฉพาะเมื่อเป้าหมายคือการใช้กฎการเก็บรักษาข้อมูล

หากอเล็กซ์ต้องการให้ ownCloud ลบเฉพาะเวอร์ชันที่หมดอายุตามนโยบายการเก็บรักษาที่กำหนดไว้ คำสั่งที่เหมาะสมกว่าคือ:

sudo -u www-data ./occ versions:expire demo_user

หน้าต่างเทอร์มินัลแสดงคำสั่ง versions:expire สำหรับบัญชีผู้ใช้สมมติ demo_user
versions:expireระบบจะใช้กฎการเก็บรักษาที่กำหนดค่าไว้ ไม่ได้รับประกันว่าจะลบทุกเวอร์ชันที่บันทึกไว้

เอกสารอ้างอิง ownCloud ระบุversions:expireว่าการลบเวอร์ชันจะทำเฉพาะเวอร์ชันที่หมดอายุตามเงื่อนไขเท่านั้นversions_retention_obligationในทางตรงกันข้าม การตั้งค่าversions:cleanupนี้จะลบเวอร์ชันทั้งหมดภายในขอบเขตที่เลือกไว้ โปรดตรวจสอบการตั้งค่าการเก็บรักษาเวอร์ชันที่ระบุไว้ในเอกสารก่อนเปลี่ยนแปลงนโยบาย การตั้งค่านี้disabledจะปิดใช้งานการลบเวอร์ชัน แต่จะไม่ลบเวอร์ชันที่จัดเก็บไว้แล้ว

บทความนี้กล่าวถึง ownCloud Server Classic ส่วน Infinite Scale มีคำสั่งล้างข้อมูลเวอร์ชันของตัวเอง โปรดปฏิบัติตามเอกสารการล้างข้อมูลเวอร์ชันของ oCISแทนการใช้คำ สั่ง occดังกล่าว

ตรวจสอบผลลัพธ์

หลังจากคำสั่งทำงานเสร็จสมบูรณ์โดยไม่มีข้อผิดพลาด ให้เปิดมุมมองเวอร์ชันสำหรับไฟล์ที่เป็นของบัญชีเป้าหมาย ตรวจสอบว่าไม่มีเวอร์ชันก่อนหน้าแสดงอยู่ และไฟล์ปัจจุบันยังคงอยู่ สำหรับการล้างข้อมูลผู้ใช้ทั้งหมด ให้ตรวจสอบบัญชีตัวแทนแทนที่จะคิดว่าคำสั่งที่กำหนดเป้าหมายทำงานทั่วโลก เก็บสำเนาสำรองไว้จนกว่าเจ้าของจะยืนยันว่าไม่ต้องการเวอร์ชันเก่าอีกต่อไป หากจุดประสงค์ของคุณคือการปฏิบัติตามกำหนดการเก็บรักษา ให้ใช้versions:expireและตรวจสอบกับนโยบายนั้นแทนที่จะคาดหวังว่าจะล้างข้อมูลทั้งหมดในทันที

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

ฝากความเห็น

ลบเวอร์ชันไฟล์ ownCloud อย่างปลอดภัยด้วยคำสั่ง occ

ลบเวอร์ชันไฟล์ ownCloud อย่างปลอดภัยด้วยคำสั่ง occ

ลบไฟล์เวอร์ชัน ownCloud Server Classic ที่จัดเก็บไว้ทั้งหมดสำหรับบัญชีเดียวหรือผู้ใช้ทั้งหมด และแยกความแตกต่างระหว่างการลบแบบสมบูรณ์กับการหมดอายุตามระยะเวลาการเก็บรักษา

การเชื่อมต่อ ownCloud บนมือถือถูกปฏิเสธใช่หรือไม่? ตรวจสอบ URL และการเข้าถึง

การเชื่อมต่อ ownCloud บนมือถือถูกปฏิเสธใช่หรือไม่? ตรวจสอบ URL และการเข้าถึง

ตรวจสอบหาสาเหตุการปฏิเสธการเชื่อมต่อ ownCloud บนมือถือโดยตรวจสอบ URL ของเซิร์ฟเวอร์ เครือข่ายโทรศัพท์ จุดเชื่อมต่อ HTTPS และบันทึกของเซิร์ฟเวอร์ตามลำดับที่ถูกต้อง

เรียกใช้งานงานเบื้องหลังของ ownCloud ได้อย่างน่าเชื่อถือด้วยตัวจับเวลา Systemd

แทนที่การเรียกใช้งานงานตามความต้องการด้วยตัวจับเวลา systemd ที่เรียกใช้คำสั่ง occ system:cron ที่ ownCloud รองรับทุกๆ 15 นาที

กู้คืนการซิงค์ WebDAV ของ ownCloud โดยการค้นหาเส้นทางที่เสียหาย

ตรวจสอบการร้องขอ WebDAV ผ่าน Apache, Nginx หรือพร็อกซีแบบย้อนกลับ จากนั้นยืนยันว่าการซิงค์ ownCloud ทำงานได้โดยใช้การทดสอบ PROPFIND ที่มีการตรวจสอบสิทธิ์

ตั้งค่า URL สาธารณะของ Nextcloud เพื่อให้สามารถเข้าถึงได้ด้วยตัวเอง

แก้ไขข้อความเตือน "ที่อยู่ขาออกหายไป" ของ Nextcloud โดยการตั้งค่า URL หลัก และตรวจสอบ DNS, HTTPS และการกำหนดเส้นทางพร็อกซีแบบย้อนกลับจากตัวเซิร์ฟเวอร์เอง

ตั้งค่า Nextcloud Redis Caching บน Ubuntu 24.04

ตั้งค่า Nextcloud Redis Caching บน Ubuntu 24.04

ตั้งค่า APCu และ Redis ผ่านซ็อกเก็ต Unix ในเครื่องเพื่อใช้ในการแคชและล็อกไฟล์ของ Nextcloud โดยมีขั้นตอนสำหรับ Nextcloud เวอร์ชันปัจจุบันและเวอร์ชันเก่า

ตั้งค่าให้ Nextcloud Cron ทำงานโดยอัตโนมัติด้วย Systemd Timer

ตรวจสอบโหมด cron ของ Nextcloud ซ่อมแซมบริการ systemd และตัวจับเวลา และตรวจสอบว่างานเบื้องหลังทำงานหลังจากเริ่มต้นระบบและทุกๆ ห้านาที

ล้างคำเตือนการล็อกไฟล์ของ Nextcloud ด้วย Redis

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

สิ่งที่ต้องทำเพื่อให้ได้คะแนนความปลอดภัยระดับ A+ บน Nextcloud

สิ่งที่ต้องทำเพื่อให้ได้คะแนนความปลอดภัยระดับ A+ บน Nextcloud

แก้ไขปัญหาที่พบได้ทั่วไปในการสแกน Nextcloud ด้วยการอัปเดตล่าสุด, HTTPS และ HSTS, การตั้งค่าความน่าเชื่อถือของพร็อกซีแบบย้อนกลับอย่างแม่นยำ และการตรวจสอบกับเซิร์ฟเวอร์สาธารณะ

เปิดใช้งานการเข้ารหัสฝั่งเซิร์ฟเวอร์ของ Nextcloud พร้อมวัดผลกระทบ

กำหนดค่า Nextcloud SSE สำหรับพื้นที่จัดเก็บข้อมูลที่ต้องการ ปกป้องคีย์การเข้ารหัส และวัดผลกระทบต่อการถ่ายโอนข้อมูลและ CPU ก่อนที่จะเข้ารหัสไฟล์ที่มีอยู่