คำตอบสั้น ๆ: ตั้ง Cached Exchange Mode ใน classic Outlook ให้ OST ไม่กินดิสก์ ปรับช่วงอีเมลที่เก็บในเครื่อง คุมการแคช shared mailbox ตั้งเพดาน OST และบังคับด้วย Group Policy
คู่มือนี้อธิบาย Cached Exchange Mode ทีละขั้นตอน พร้อมคำสั่งที่ใช้ได้จริงและปัญหาที่พบบ่อย
Cached Exchange Mode คือโหมดที่ classic Outlook for Windows ดาวน์โหลดสำเนากล่องจดหมาย Exchange หรือ Microsoft 365 มาเก็บในไฟล์ OST บนเครื่อง ผู้ใช้จึงเปิดอีเมล ค้นหา และทำงานต่อได้แม้เน็ตหลุด แล้ว Outlook จะซิงก์กับเซิร์ฟเวอร์ในเบื้องหลัง Cached Exchange Mode เป็นค่าเริ่มต้นของบัญชี Microsoft 365 และ Microsoft แนะนำให้เปิดไว้เสมอ ปัญหาที่ตามมาคือไฟล์ OST โตเร็ว เอกสารของ Microsoft ระบุว่า OST มักใหญ่กว่าขนาดกล่องจดหมายบนเซิร์ฟเวอร์ 50 ถึง 80 เปอร์เซ็นต์ และค่าเริ่มต้นจำกัดขนาด OST ไว้ที่ 50 GB
คู่มือนี้เขียนสำหรับผู้ดูแลระบบที่เจอโน้ตบุ๊กดิสก์เต็ม Outlook ช้า หรือเครื่อง Remote Desktop ที่มีผู้ใช้หลายคน เมื่อทำครบ คุณจะวัดขนาด OST เทียบกับกล่องจดหมาย ปรับช่วงอีเมลที่เก็บในเครื่อง คุมการแคช shared mailbox กำหนดเพดานขนาด OST บังคับค่าทั้งองค์กรด้วย Group Policy และรู้ว่า new Outlook จัดการข้อมูลออฟไลน์ต่างจาก classic Outlook อย่างไร
สิ่งที่ต้องเตรียม
ก่อนปรับ Cached Exchange Mode ให้เตรียมสิ่งต่อไปนี้
- บัญชีใน classic Outlook เป็นชนิด Microsoft Exchange (บัญชี Microsoft 365 หรือ Exchange Server) คู่มือนี้ไม่ครอบคลุมบัญชี IMAP
- สิทธิ์ Exchange Administrator และ Exchange Online PowerShell สำหรับดูขนาดกล่องจดหมาย
- สิทธิ์ผู้ดูแลเครื่อง หรือสิทธิ์แก้ Group Policy พร้อมไฟล์ Administrative Template (ADMX) ของ Microsoft 365 Apps ถ้าจะบังคับค่าทั้งองค์กร
- พื้นที่ดิสก์ว่างที่เหลือบนเครื่องผู้ใช้ และขนาด SSD ของโน้ตบุ๊กรุ่นที่องค์กรใช้
- ช่วงเวลาที่ผู้ใช้ไม่ต้องรีบใช้ Outlook เพราะการเปลี่ยนค่าบางอย่างทำให้ต้องซิงก์ใหม่
ขั้นตอนที่ 1: วัดขนาด OST ที่ Cached Exchange Mode สร้างเทียบกับกล่องจดหมาย
บนเครื่องผู้ใช้ เปิด File > Account Settings > Account Settings แท็บ Data Files เลือกไฟล์ของบัญชี แล้วคลิก Open File Location ไฟล์ OST ปกติอยู่ที่ %LOCALAPPDATA%\Microsoft\Outlook ดูขนาดไฟล์ได้จาก File Explorer หรือ PowerShell ส่วนขนาดกล่องจดหมายบนเซิร์ฟเวอร์ ให้ผู้ดูแลรันคำสั่งใน Exchange Online PowerShell
Connect-ExchangeOnline -UserPrincipalName [email protected]
$s = Get-EXOMailboxStatistics -Identity [email protected]
$s | Format-List DisplayName,ItemCount,TotalItemSize
# บนเครื่องผู้ใช้
$f = Get-ChildItem "$env:LOCALAPPDATA\Microsoft\Outlook\*.ost"
$f | Select-Object Name, @{n='GB';e={[math]::Round($_.Length/1GB,2)}}
ถ้า OST ใหญ่กว่ากล่องจดหมายเกิน 2 เท่า มักแปลว่า Cached Exchange Mode แคช shared mailbox หรือกล่องจดหมายของคนอื่นที่เปิดไว้ด้วย ให้ดูขั้นตอนที่ 3 ถ้ากล่องจดหมายเองใหญ่ใกล้โควตา ให้วางแผนลดขนาดตามคู่มือกล่องจดหมายเต็มและ Mailbox Quota ไปพร้อมกัน
ขั้นตอนที่ 2: ปรับช่วงอีเมลที่ Cached Exchange Mode เก็บในเครื่อง
- ไปที่ File > Account Settings > Account Settings เลือกบัญชี Microsoft Exchange แล้วคลิก Change
- ในส่วน Offline Settings ตรวจว่าติ๊ก Use Cached Exchange Mode to download email to an Outlook data file
- เลื่อนแถบ Download email for the past เลือกได้ตั้งแต่ 3 วัน 1 สัปดาห์ 2 สัปดาห์ 1 เดือน 3 เดือน 6 เดือน 1 ปี 2 ปี 3 ปี 5 ปี ไปจนถึง All
- คลิก Next หรือ Done แล้วปิดเปิด Outlook ใหม่
ค่าเริ่มต้นตามเอกสารของ Microsoft คือเก็บอีเมล 12 เดือนล่าสุด อีเมลที่เก่ากว่ายังอยู่บนเซิร์ฟเวอร์ ผู้ใช้เปิดได้เมื่อออนไลน์ โดยเลื่อนลงไปท้ายรายการในโฟลเดอร์แล้วคลิก Click here to view more on Microsoft Exchange หรือค้นหาซึ่งจะดึงผลจากเซิร์ฟเวอร์มาด้วย แถบนี้มีผลกับอีเมล ส่วนปฏิทินและรายชื่อติดต่อยังซิงก์ครบ
ค่า Cached Exchange Mode ที่ใช้ได้ดีกับโน้ตบุ๊ก SSD 256 GB คือ 3 ถึง 6 เดือน ส่วนพนักงานที่ต้องค้นอีเมลเก่าบ่อยแบบออฟไลน์ เช่น ฝ่ายจัดซื้อหรือฝ่ายกฎหมาย อาจใช้ 1 ถึง 2 ปี การลดช่วงไม่ได้ทำให้ไฟล์เล็กลงทันที Outlook จะทยอยเอาข้อความเก่าออก ถ้าต้องการพื้นที่คืนเร็ว ให้สร้าง OST ใหม่หลังลดช่วง วิธีสร้างใหม่อย่างปลอดภัยอยู่ในคู่มือแก้ Outlook Disconnected ขั้นตอนที่ 6
ขั้นตอนที่ 3: คุมการแคช shared mailbox ใน Cached Exchange Mode
ค่าเริ่มต้นของ Cached Exchange Mode จะดาวน์โหลดโฟลเดอร์ของ shared mailbox และกล่องจดหมายที่ได้รับสิทธิ์ Delegate มาเก็บใน OST เดียวกับกล่องจดหมายหลัก shared mailbox ของฝ่ายบัญชีหรือฝ่ายขายที่มีอีเมลหลายสิบ GB จึงทำให้ OST ของทุกคนที่มีสิทธิ์โตตาม
- ปิดการแคชโฟลเดอร์ที่แชร์ทั้งหมด: ที่หน้า Change ของบัญชี คลิก More Settings > แท็บ Advanced แล้วเอาเครื่องหมายออกจาก Download shared folders Outlook จะเปิด shared mailbox จากเซิร์ฟเวอร์โดยตรง ซึ่งต้องออนไลน์ตลอดเวลา
- แคชเฉพาะปฏิทินและรายชื่อติดต่อ ไม่แคชอีเมล: สร้างค่า DWORD
CacheOthersMail= 0 ที่HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Cached Modeโดยคงติ๊ก Download shared folders ไว้ วิธีนี้เหมาะกับผู้ช่วยที่ต้องดูปฏิทินผู้บริหารตอนออฟไลน์ - ไม่ให้ shared mailbox โผล่อัตโนมัติ: shared mailbox ที่ได้สิทธิ์ Full Access จะถูกเพิ่มเข้า Outlook อัตโนมัติ (automapping) ผู้ดูแลกำหนดสิทธิ์ใหม่แบบไม่ automapping ได้ แล้วให้ผู้ใช้ที่จำเป็นเพิ่มเองเมื่อต้องใช้
Remove-MailboxPermission -Identity [email protected] -User [email protected] -AccessRights FullAccess -Confirm:$false
Add-MailboxPermission -Identity [email protected] -User [email protected] -AccessRights FullAccess -AutoMapping $false
คำสั่งแรกถอนสิทธิ์เดิมชั่วคราว ผู้ใช้จะเปิด shared mailbox ไม่ได้ช่วงสั้น ๆ จนคำสั่งที่สองทำงาน ควรทำนอกเวลางาน ภาพรวมการสร้างและให้สิทธิ์ shared mailbox ดูคู่มือ Shared Mailbox บน Microsoft 365
ขั้นตอนที่ 4: กำหนดเพดานขนาด OST ของ Cached Exchange Mode
ขนาดสูงสุดของ OST และ PST ใน Outlook 2016 ขึ้นไปควบคุมด้วยค่า DWORD สองตัว หน่วยเป็น MB คือ MaxLargeFileSize ค่าเริ่มต้น 51200 (50 GB) และ WarnLargeFileSize ค่าเริ่มต้น 48640 (47.5 GB) เมื่อไฟล์แตะค่า Warn ผู้ใช้จะย้ายรายการภายในไฟล์ไม่ได้ และส่งอีเมลไม่ได้ถ้าเก็บสำเนาไว้ใน Sent Items กรณีกล่องจดหมายใหญ่กว่า 50 GB และต้องให้ Cached Exchange Mode เก็บแบบ All จึงต้องขยายเพดาน
สำรอง registry ก่อนแก้ และให้ค่า Warn ห่างจากค่า Max อย่างน้อย 5 เปอร์เซ็นต์ตามคำแนะนำของ Microsoft ตัวอย่างนี้ขยายเป็น 75 GB และเตือนที่ 95 เปอร์เซ็นต์
reg export "HKCU\Software\Policies\Microsoft\Office\16.0\Outlook" "%USERPROFILE%\Desktop\outlook-policy-backup.reg"
reg add "HKCU\Software\Policies\Microsoft\Office\16.0\Outlook\PST" /v MaxLargeFileSize /t REG_DWORD /d 76800 /f
reg add "HKCU\Software\Policies\Microsoft\Office\16.0\Outlook\PST" /v WarnLargeFileSize /t REG_DWORD /d 72960 /f
Microsoft ระบุว่าตั้งเกินค่าในตารางได้ แต่ไม่แนะนำ เพราะประสิทธิภาพอาจลดลง ทางที่ดีกว่าคือลดช่วงอีเมลในขั้นตอนที่ 2 ก่อน แล้วขยายเพดานเฉพาะเครื่องที่จำเป็นจริง ตารางค่าทั้งหมดอยู่ในเอกสาร Configure size limit for PST and OST files in Outlook