3 poin oleh GN⁺ 18 hari lalu | 1 komentar | Bagikan ke WhatsApp
  • Samsung Magician untuk macOS dipasang untuk mengatur enkripsi perangkat keras, tetapi karena tidak berfungsi dengan baik, saat dicoba dihapus tidak ada tombol uninstall
  • Saat menjalankan skrip pembersihan di dalam aplikasi, muncul lebih dari 500 error dan sebagian besar file tetap tersisa karena gagal mengubah kepemilikan file
  • Puluhan folder dan file sudah dihapus secara manual, tetapi 8 file ekstensi kernel tetap tersisa karena perlindungan SIP sehingga perlu masuk ke Recovery Mode
  • Untuk menonaktifkan dan mengaktifkan kembali SIP, perlu boot ke Recovery Mode dua kali, sehingga penghapusan total baru bisa dilakukan melalui prosedur 18 langkah
  • Meski hanya utilitas disk sederhana, penghapusannya sangat sulit karena kompleksitas berlebihan dan komponen yang tidak perlu, sehingga terasa seperti bloatware

Masalah dalam proses menghapus Samsung Magician

  • Samsung Magician dipasang untuk mengatur fitur enkripsi perangkat keras pada SSD eksternal, tetapi karena tidak berjalan normal, aplikasi ini perlu dihapus
  • Versi macOS sama sekali tidak memiliki tombol uninstall maupun fitur hapus dengan drag, dan di jalur internal aplikasi yang dalam terdapat skrip CleanupMagician_Admin_Mac.sh
  • Saat skrip tersebut dijalankan, muncul lebih dari 500 error chown: Operation not permitted, gagal mengubah kepemilikan file, dan penghapusan pun tidak terjadi
  • Skrip tidak menangani error dan hanya terus menjalankan proses berulang untuk semua file sebelum selesai
  • Akibatnya, sebagian besar file tetap tertinggal di sistem

Upaya penghapusan manual

  • Karena itu, dilakukan upaya menghapus langsung folder dan file terkait Samsung dengan perintah rm -rf
    • Penghapusan manual dilakukan di berbagai lokasi seperti Application Support, Preferences, Caches, LaunchAgents, LaunchDaemons, Extensions, dan Logs
  • Setelah itu, hasil pemeriksaan dengan perintah find / -iname "*samsung*magician*" menunjukkan masih ada 27 file sisa
    • File ekstensi kernel di /Library/StagedExtensions/ dan /System/Volumes/Data/Library/StagedExtensions/
    • File receipt paket di /private/var/db/receipts/
    • File proses cache di /private/var/folders/.../C/
    • Daftar Crash Reporter serta folder Samsung Magician di dalam Application Support
  • Perintah sudo rm -rf sudah dijalankan berulang kali, tetapi 8 file ekstensi kernel tetap tidak bisa dihapus

Prosedur Recovery Mode untuk menghapus file ekstensi kernel

  • File yang tersisa dilindungi oleh SIP(System Integrity Protection) sehingga tidak bisa dihapus dalam mode biasa
  • Matikan Mac lalu boot ke Recovery Mode, nonaktifkan SIP dengan perintah csrutil disable, lalu reboot
  • Setelah file ekstensi kernel dihapus, masuk lagi ke Recovery Mode dan aktifkan kembali SIP dengan perintah csrutil enable
  • Dalam proses ini diperlukan 2 kali boot ke Recovery Mode dan total 18 langkah
  • Hanya untuk menghapus empat file ekstensi kernel dan salinannya, tetap diperlukan dua kali reboot dan masuk ke Recovery Mode

Kompleksitas berlebihan dalam susunan internal Samsung Magician

  • Di dalam program terdapat animasi PNG per frame
    • Untuk menampilkan status “Health: Good”, digunakan 150 file PNG
    • Untuk “Health: Critical”, tema “Gamer”, serta animasi proses dan keberhasilan pemindaian sidik jari, masing-masing juga ada set PNG terpisah
    • Akibatnya, utilitas disk yang sederhana ini memuat ratusan file PNG
  • Komponen tambahan yang ikut disertakan
    • Framework Electron: menyertakan seluruh engine Chromium hanya untuk menampilkan diagram pai ruang disk
    • Framework Squirrel: menyertakan fungsi pembaruan otomatis
    • ReactiveObjC, Mantle: framework untuk reactive programming
    • Font khusus Samsung dengan banyak ketebalan (200~800)
    • File lokalisasi multibahasa (Jepang, Tionghoa, Jerman, Prancis, Italia, Rusia, Portugis, Spanyol, Arab, Hindi, dll.)
    • Gambar banner iklan (banner_1.jpg~banner_5.jpg)
    • Dokumen bantuan dalam 10 bahasa dan lebih dari 40 screenshot
  • Karena susunan seperti ini, program dinilai sebagai bloatware dengan beban dan kompleksitas yang tidak perlu

Ringkasan 18 langkah untuk menghapus Samsung Magician sepenuhnya

  1. Mencari tombol uninstall di dalam aplikasi (tidak ada)
  2. Menemukan skrip pembersihan di dalam bundle aplikasi
  3. Menjalankan skrip, muncul 500 error, penghapusan gagal
    4~14. Mengulang penghapusan manual di Application Support, Preferences, Caches, LaunchAgents, LaunchDaemons, Extensions, Receipts, Folders, dan lainnya
  4. Memastikan 8 file yang dilindungi SIP dengan perintah find
  5. Mematikan Mac lalu boot ke Recovery Mode, menonaktifkan SIP
  6. Menghapus file ekstensi kernel yang dilindungi
  7. Reboot lagi ke Recovery Mode, mengaktifkan kembali SIP
  • Secara keseluruhan diperlukan 18 langkah dan 2 kali reboot ke Recovery Mode, sehingga prosedur untuk menghapus utilitas disk sederhana ini terasa berlebihan
  • Pada akhirnya, Samsung Magician dinilai sebagai perangkat lunak dengan struktur yang sangat sulit dihapus dan rumit tanpa perlu

1 komentar

 
GN⁺ 18 hari lalu
Komentar Hacker News
  • Pada era 90-an, ada utilitas disk bernama PartitionMagic
    Program ini adalah salah satu alat pertama yang bisa menyesuaikan partisi secara dinamis
    Ada dugaan nama produk Samsung mungkin terinspirasi dari sini
    Rindu masa ketika instalasi cukup copy . to /, dan penghapusan cukup delete /

    • Di Mac, kalau aplikasi biasa tidak bisa diinstal hanya dengan drag-and-drop, itu tanda bahaya besar
      Saya akan menghindari aplikasi seperti itu dan mencari alternatif dari perusahaan yang benar-benar paham Mac
      Dulu installer Chrome pernah meminta hak admin lalu membuat sistem tidak bisa boot
      Utilitas sistem atau driver memang pengecualian, tapi PartitionMagic benar-benar luar biasa
    • “PartitionMagic” sangat membantu pengguna individu
      Rasanya menarik untuk meneliti apakah budaya umpan balik negatif di dalam organisasi bisa berujung pada masalah integrasi teknis
      “Proses instalasi 18 langkah” jelas merupakan masalah, dan tampaknya harus jadi prioritas internal di Samsung
      Ada juga lelucon bahwa nama “Magician” secara metaforis mencerminkan budaya perusahaan Samsung
    • Saat membaca judulnya saya langsung berpikir, “‘Utilitas disk’? Seperti PartitionMagic?” dan senang ternyata memang itu yang dibahas
      Program yang benar-benar hebat
    • PartitionMagic bukan sekadar utilitas biasa, melainkan alat ikonik pada masanya
    • Dulu PartitionMagic ada di kotak peralatan wajib setiap teknisi
      Stabilitasnya luar biasa dan sangat menghemat waktu
  • Di Mac, saya cuma ingin menghapus sesuatu, tapi harus masuk recovery mode → csrutil disable → reboot → hapus kernel extension → masuk recovery mode lagi → csrutil enable → reboot lagi…
    Semua itu cuma untuk menghapus beberapa file mati
    Ini sepenuhnya salah Apple. Apple yang membuat bahkan hak root bukan lagi hak admin penuh

    • Tapi sistem itu milik Apple, bukan milik pengguna
      Tidak masalah membeli perangkat Apple, tapi mereka tidak pernah menjanjikan sistem yang terbuka
      Jika sebuah fitur hilang lewat update, itu bukan hak pengguna, hanya sekadar fitur yang dulu diizinkan
    • Kalau terasa merepotkan, cukup nonaktifkan proteksinya sekali saja
      Bahkan sebagian besar power user tetap membiarkannya aktif demi keamanan
    • Prosedur seperti ini memang merepotkan, tapi pada akhirnya itu adalah pengaman untuk melindungi dari tindakan berbahaya
    • Ini bekerja sesuai rancangan, dan justru merupakan arah yang baik
      Root (uid=0) memang tidak seharusnya bisa sesuka hati memodifikasi bagian terdalam sistem
      Perubahan di level kernel seharusnya tidak mungkin dilakukan dari hak akses sehari-hari, dan itulah inti dari System Integrity Protection
      Jika ada cara yang lebih baik, ajukan ke Apple, tapi perlindungan seperti ini tidak boleh diabaikan
  • Dulu saya pernah mendistribusikan produk untuk macOS, dan saat dihapus terjadi error Trash
    Waktu itu Finder belum punya extension API, jadi untuk menambahkan menu kami harus merekayasa balik Finder dan menyuntikkan kode
    Akibatnya Finder terus menahan app bundle tetap terbuka, sehingga tidak bisa dihapus sebelum restart
    Setelah extension API untuk Finder hadir, masalah itu teratasi, tapi macOS juga punya kompleksitas internal sendiri

    • Menurut Raymond Chen, Shell extension adalah penyebab paling umum Explorer crash
      Fakta bahwa macOS dulu tidak punya API semacam itu mungkin justru merupakan keputusan desain yang baik
    • Karena macOS berbasis Unix, file yang sedang terbuka pun tetap bisa dihapus, jadi saya penasaran apakah Finder melakukan pengecekan terpisah
    • Masalah seperti ini tampaknya bukan salah macOS, melainkan masalah file handle yang juga umum di Windows
    • Sebenarnya alih-alih menyalahkan OS, ini lebih terasa sebagai akibat aplikasi mengutak-atik sistem secara tidak normal
    • Saya sudah memakai Mac lebih dari 10 tahun, tapi Finder hampir hanya saya pakai untuk mengklik tombol AirDrop
  • macOS penuh dengan popup permintaan izin seperti kamera atau proses latar belakang,
    tetapi justru tidak mencegah partner industri menebar file yang tak bisa dihapus ke seluruh sistem

    • Keamanan seperti ini pada dasarnya hanyalah sandiwara yang mengurangi kendali pengguna dan memperkuat efek lock-in perusahaan
      Pada akhirnya pengguna makin sedikit mengontrol, sementara Apple/MS/Google punya makin banyak kuasa
    • Dulu utilitas untuk menangani file .pkg punya opsi penghapusan lewat command line, tapi sekarang sudah hilang
      Belakangan ini saya lebih memilih alat uninstall open source seperti PearCleaner
    • Sering kali bahkan tujuan jendela permintaan izin pun tidak jelas
      Kadang muncul kalimat aneh seperti “bahasa pemrograman meminta akses”
  • Sekitar 10 tahun lalu saya membeli Samsung TV kelas bawah, dan ada audio delay yang berubah-ubah
    Di hari tertentu sinkron, di hari lain terlambat ratusan ms
    Sulit dipercaya produk seperti itu dijual, dan sejak saat itu saya memutuskan tak akan membeli produk Samsung lagi

    • Ada yang bercanda mungkin saat itu pemrosesan suaranya dibuat dengan Electron
  • Saat dibaca memang lucu, tapi sebenarnya ini realitas yang tragis
    Ke depan bloat perangkat lunak tampaknya akan makin parah
    Sulit memahami kenapa perusahaan besar begitu terobsesi dengan teknologi web sampai utilitas disk pun diserahkan pada developer web

    • Alasannya karena proses rekrutmen dipimpin oleh HR non-teknis
      Mereka merekrut berdasarkan kata kunci web stack yang sedang tren, bukan kemampuan teknis
      Hasilnya penuh developer React, tetapi nyaris tidak ada yang benar-benar bisa membuat perangkat lunak yang sesuai tujuan
  • Secara pribadi saya menghindari produk Samsung, dan ternyata itu membuat saya lolos dari banyak masalah

    • Saya langsung merasa ilfil saat melihat iklan di menu pada TV Samsung yang dibeli ayah mertua
      Saya juga pernah memakai mesin cuci Samsung di Hawaii, dan ada mode DOWNLOAD untuk koneksi aplikasi
      Sebelum mencuci, mesin itu menghabiskan beberapa menit mengguncang pakaian untuk mendeteksi sesuatu, sementara air yang dipakai sangat sedikit
      Lalu ada kulkas Samsung yang saya lihat di toko, dan tablet di pintunya hang
      Setelah tiga pengalaman itu, saya benar-benar menyerah pada produk Samsung
  • Hanya untuk menampilkan satu diagram pai ruang disk, mereka memasukkan seluruh framework Electron
    “RAM itu murah, dan RAM yang tidak dipakai adalah pemborosan” — terdengar seperti filosofi manajemen Samsung

  • Ada saran untuk orang yang ingin memasang Samsung Magician demi update firmware
    Sebenarnya update firmware bisa dilakukan dengan aman tanpa program ini

    • Lalu ada pertanyaan lanjutan yang meminta cara spesifiknya
  • Kalau sudah mengenal software Korea, semua ini jadi masuk akal
    Tombol yang berupa gambar JPEG adalah hal yang lumrah