SRM macOS Sierra'ya gitti (10.12)


33

MacOS 10.12'ye yeni güncelleme yaptım srmve Terminal'de yürütmeye çalıştığımda yazıyor -bash: srm: command not found.

Is srmkaldırıldı? Bu nasıl düzeltilir?


Bir yan not olarak: srm2000'li yılların başlarında ölmekte olan bir projeydi. Apple projeye bazı kaynaklar döktü ve ilk 10.3'te ortaya çıktı. Kullanmanın srmverilerin kurtarılamayacağını garanti etmediğini unutmayın.
fd0

@ fd0, daha iyi bir fikir bulabilir veya yeni mac'lardaki dosyaları SSD'den güvenle kaldırabilir misiniz?
Niktin Roman

1
Tam disk şifrelemesini kullanmasam da, rmya da GUI'de Çöp Kutusu'nu boşaltın.
fd0

4
SSD'ler için @NiktinRoman srm, rm'den daha güvenli değildir - srm sadece sabit diskler için anlamlıdır. Bu kaldırılmasının nedeni bu olduğundan şüpheleniyorum
user151019

Yanıtlar:


3

MacOS 10.12 sürümünü henüz çalıştırmıyorsunuz, ancak OS X 10.8.5 kapsamında srm, NOTESbölümdeki kılavuz sayfasını belirtir:

Srm'nin geliştirilmesi ve tartışılması , < http://srm.sourceforge.net > aracılığıyla da erişilebilen < http://sourceforge.net/project/?group_id=3297 > adresinde gerçekleştirilir .

Şimdi kaynak kodunu indirmeniz ve kendiniz için derlemeniz gerekir. Bu, Xcode için Komut Satırı Araçlarının kurulmasını gerektirir. Ancak macOS 10.12 kapsamında hala geçerli olup olmadığından emin değilsiniz, ayrıntılar için bkz . OS X Mavericks ve Yosemite'de Komut Satırı Araçlarının Kurulumu (Xcode Yok) . Veya Terminal'de aşağıdaki komutu kullanın:xcode-select --install

En son kaynak kodunu indirdim ve OS X 10.8.5 kapsamında hatasız derlendi, ancak bu macOS 10.12 altında olacağı anlamına gelmiyor, ancak muhtemelen srmkaldırılmış olmanız durumunda tek seçeneğiniz bu .

Bu, muhtemelen srmdönel HDD’lerde SSD’lerin olmadığını söyledi.


3
NB srm, homebrew kullanıyorsanız homebrew / dupes biçiminde kullanılabilir. MacOS'un bu yazılımı zaten sağladığından şikayet edecektir. Sierra'da bu doğru değil, ama her durumda kurmak için homebrew kullanmak gerekirbrew install srm && brew link --force srm
kojiro

1
@kojiro çalışmıyor. "srm, 7957c4b98 numaralı taahhüt işleminde homebrew / core dizininden silindi"
AfterWorkGuinness

@WorkGuinness True, Apple görünüşte srm'yi kaldırdılar çünkü insanların sdsds'ını yok edeceğini düşünüyorlardı. github.com/Homebrew/homebrew-dupes/issues/725 . Aklıma gelmeme sebebinin tam olarak bu nedeni olduğu konusunda şüpheliyim, ancak mesele şu ki, güvenli silme komutları ssd'de pas döndürmekten daha az kullanışlı. (Muhtemelen hiçbir zaman Apple'a birisinin dönen pas
dağıtıcısı takmak

27

Bu yorumdan:

daha iyi bir fikir bulabilir veya daha yeni mac'larda dosyaları SSD'den güvenle kaldırabilir misiniz? - Niktin Roman

Buna gerek yok srm; TRIM makinenizde etkin olması koşuluyla 1

TRIM desteği bunu sizin için halleder. Bir dosyayı sürücünüzden sildiğinizde, işletim sistemi dosya alanını "kullanımda değil" olarak işaretler - bu herhangi bir sürücü için geçerlidir. Bir SSD'de, bir HDD'den farklı olarak, işaretli alandaki verileri silmek için bir TRIM komutu gönderilir. Bu, SSD'nizin yepyeni ve hiç kullanılmamış gibi işaretlenmiş alana veri yazmasını ve geleneksel silme işlemini atlamasını sağlar.

Daha fazla güvenlik arıyorsanız, FileVault'u açın .

Elma Başına Destek :

Not: Bir SSD sürücüsü ile, Boş Alanın Güvenli Silinmesi ve Silinmesi Disk Yardımcı Programında mevcut değildir. Bir SSD sürücüsü için bu seçeneklere gerek yoktur, çünkü standart bir silme bir SSD'den veri kurtarmayı zorlaştırır. Daha fazla güvenlik için, SSD sürücünüzü kullanmaya başladığınızda FileVault şifrelemesini açmayı düşünün.

Ayrıca srm, SSD'ye daha fazla ve gereksiz yazma işlemleri gerçekleştirdiği için kullanım ömrünü kısalttığı için kullanılmasını tavsiye ediyorum . Gönderen adam sayfası :

srm, belirtilen her bir dosyayı üzerine yazarak, yeniden adlandırarak ve
Bağlantıyı kesmeden önce kesiliyor


Mac'iniz önceden yüklenmiş bir SSD ile gelirse, 1 TRIM varsayılan olarak etkindir. Bu durumdan sonra bir SSD eklediyseniz, komutu sudo trimforce enableTerminal'de vererek TRIM'i etkinleştirmelisiniz .


3
Bu kabul edilen cevap olmalı.
LS

TRIM, dosyayı terminalde (silinen dosyalar Çöp Kutusu'nda görünmeyecek) veya yalnızca "düzenli olarak" sildiğinizde (Çöp Kutusuna taşıdığınızda) boşluğu bu şekilde işaretler mi? Teşekkürler!
ScienceFriction

1
"Çöp Kutusu" ana dizininizdeki gizli bir klasördür - ~/.Trash. Yani "bir dosyayı çöp kutusuna taşıma" sadece bir dosya taşıma. Ne zaman boş çöp aslında dosyayı sildiğinizde olduğunu. Dosya gerçekten bu yöntemle veya yoluyla silindiğinde rm, TRIM etkili olur.
Allan,

2
Bir SSD'deki verileri güvenilir bir şekilde silmek için TRIM komutuna güvenilmemelidir. Bu sadece işletim sisteminin SSD'ye belirli blokların artık kullanılmadığını söylemesini sağlar. TRIM'i doğru şekilde uygulamak SSD ürün yazılımı kontrol cihazına bağlıdır. Sürücü üreticilerinin burada iyi bir sicili yok. Daha güçlü olan "güvenli silme" ATA komutu bile, tüm veriler sürücüde kaldığında, bazen raporlama başarısı bile tutarsız bir şekilde uygulanır. Daha fazla bilgi için cseweb.ucsd.edu/~swanson/papers/Fast2011SecErase.pdf adresini ziyaret edin.
William Budington,

1
@WilliamBudington - bilgileriniz nezaketsiz güncel değil. Bu yazıya bakınız: apple.stackexchange.com/questions/269863/…
Allan

25

rm, silmeden önce dosyanın üzerine üç kez yazacak bir -P anahtarına sahiptir. Sanırım hiç yoktan iyidir.


Bu kullanım durumunda, bu teknik olarak doğrudur. Üç kere hiçbir şey hiçbir şeyden iyidir.
Rimian

9

MacOS Sierra'daki bir dosyayı / klasörü harici bir yardımcı program kullanmadan güvenli bir şekilde silmek için rmbu -Pdüğmeyi kullanın :

## delete a single file
rm -Pv wikileak1.txt

## delete a folder recursively
rm -Pvrf ~/.wikileaks

Gönderen adam sayfası :

 -P          Overwrite regular files before deleting them.  Files are
             overwritten three times, first with the byte pattern 0xff,
             then 0x00, and then 0xff again, before they are deleted.

 -v          increase verbosity

NOT : GNU coreutils'i varsayılan adlarla homebrew'den yüklediyseniz , örneğin PATH'nizibrew install coreutils --default-names nasıl yapılandırdığınıza bağlı olarak GNU sürümü rmMac sürümünü gölgeleyebilir /bin/rmve bu -Pseçeneği kabul etmeyebilir . which -a rmİki kez kontrol etmek için kullanın .


7

Bu soru aslında cevaplandığından beri iki şey oldu:

  • homebrew-dupes ile birleştirildi homebrew-core
  • srm -den silindi homebrew-core

Şimdi yüklemeyi denerseniz, silme taahhüdünün ayrıntılarını ve hala ihtiyacınız varsa kendi musluğunuzu oluşturma önerisini size verecektir. Öyle yapmış burada .

Homebrew kullanarak yükleyebilirsiniz :brew install khell/homebrew-srm/srm



0

Güvenli silme araçları kullanmak değil iyi nedenler (Var bolluk srm, shred, rm -P(TRIM etkin SSD'ler ve / veya journalled dosya sistemleriyle) Modern sistemlerde, vs). @ Allan'ın özellikle cevabı çok açık.

Ancak, gerçekten , gerçekten geri yüklemek istiyorsanız srm, birileri burada çalışan bir Homebrew musluğu yayınladı . yani:

brew install khell/homebrew-srm/srm
srm secrets.txt

( Açıkçası Homebrew'u yükledikten sonra .)


-2

sudo port yüklemek srm


3
Muhtemelen bir -bash: port: command not foundhataya yol açacaktır , bu yüzden burada daha fazla detay gerekebilir.
nohillside

1
Macport'ları yükleyin: macports.org/install.php
eggonlegs 15:16

Macports işletim sistemi yükseltme işlemi sırasında kaldırıldığı zaman yaptığım şey buydu. Bu benim kitabımda tercih edilen yöntem, ancak tam bir cevap değil, bu yüzden yukarı oy veremiyorum. Daha sonra komut sudo srm -RfvD TargetDirectoryToWipe kullandım . Bir SSD'de değil ...
NOTjust - user4304
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.