Các tập tin .DS_Store
được hệ điều hành macOS tự động tạo ra khi Finder của nó “ghé thăm” các thư mục. Chúng là một phần trong cách hoạt động của hệ điều hành, chúng được ẩn đi dưới con mắt của người dùng bình thường, và sự tồn tại của chúng không gây ra vấn đề thực tế nào quá đáng kể. Nhưng ở một bộ mặt khác, chúng gây khó chịu cho một bộ phận người dùng, đặc biệt là lập trình viên – những người hay phải nhìn vào các file ẩn, và họ sẽ luôn thấy ở mỗi thư mục một tập tin vô tích sự, nhiễu, gây phân tâm, và hầu như cứ xóa đi là lại tự mọc lại.
Quả là một thất bại của nghành công nghiệp.
Trước đây xưởng BinaryAge có một sản phẩm tên là Asepsis — được coi là hoàn thiện và triệt để nhất từng có để giải quyết vấn đề này, đó là đánh lừa macOS, “lái” hệ điều hành đặt các tập tin .DS_Store
tạo ra vào một nơi khác khuất mắt người dùng, nhờ đó, các hành vi của hệ điều hành phụ thuộc vào .DS_Store
không gặp vấn đề bất thường, và người dùng bị rối loạn ám ảnh cưỡng chế sẽ không bị tim đập nhanh. Tuy vậy, kể từ khi Apple giới thiệu SIP vào Mac OS X El Capitan, việc can thiệp vào hoạt động của nhân hệ điều hành trở nên khó khăn hơn, và Asepsis không được tiếp tục nữa.
Hiện tại, dưới đây là những gì chúng ta có thể làm để cuộc đời và công việc viên mãn.
Xóa thủ công
Đơn giản là tìm, và xóa.
sudo find / -name '.DS_Store' -type f -delete
Tự động xóa, từ đây và về sau
Đơn giản là đặt câu lệnh trên vào một vòng lặp vĩnh viễn.
Nội dung crontab sẽ được mở lên, thường là bằng vi
editor. Nhập nội dung cronjob sau vào crontab (lệnh sudo crontab -e
sẽ hữu ích) và lưu lại, 30 17 * * *
nghĩa là mỗi ngày, vào 17h30
.
30 17 * * * root find / -name '.DS_Store' -type f -delete
Vô hiệu hóa .DS_Store
trên Network Driver
Các phiên bản macOS gần đây cho phép cấu hình để các tập tin .DS_Store
sẽ chỉ được tạo ra khi Finder duyệt các thư mục nằm tại ổ cứng gắn trong.
defaults write com.apple.desktopservices DSDontWriteNetworkStores true
Và các tập tin .DS_Store
sẽ không còn được touch
vào các thiết bị lưu trữ mạng nữa.