Çıkar / güvenli bir şekilde vs umount kaldır


42

Ubuntu 12.04 kullanıyorum ve flash sürücü simgesine sağ tıklanınca (Unity sol çubukta) kafamın karışmasına neden olan iki seçenek alıyorum: çıkarma ve güvenli bir şekilde çıkarma .
Bir cevaba daha yaklaştığımda , (flash sürücü için) komutun kullanımı için eşit ve aynı derecede eşdeğer oldukları sonucuna varılan bu forum başlığını oluşturduk umount. Ancak, bu son iddia yanlış gibi görünüyor.
Ben kullanırsanız umountbenim flaş dalış kaldırmak için konsoldan, sonra komutunu kullanın lsblk, hala (tabii ki mountpoint altında hiçbir şey ile) cihazımı görüyoruz. Öte yandan, flash sürücümü çıkarır ya da güvenle çıkarırsam , lsblkartık listelemez.

Öyleyse benim sorum şu, çıkarma davranışını gerçekten yeniden üreten ve güvenli bir şekilde kaldıran konsol komut / komutları ne olurdu ?


3
Altındaki simge /usr/share/applications/veya benzeri bir şey için bir .desktop dosyası bulabilirsiniz . Bir metin düzenleyicide açarsanız, Exec = ... alanı, üzerine tıkladığınızda çalışan komuta karşılık gelir.
spelufo

Yanıtlar:


64

Eğer kullanıyorsanız systemdo zaman kullanmak udisksctlile programı power-offseçeneği:

Kapat

Sürücünün güvenli bir şekilde çıkarılmasını ve kapatılmasını sağlar. İşletim sistemi tarafında bu, sürücüyü kullanan hiçbir işlemin bulunmamasını ve ardından uçuş sırasında önbelleklerin ve önbelleklerin kararlı depolamaya bağlı olmasını talep etmeyi içerir.

İlk önce o usb üzerindeki tüm dosya sistemlerini sökmeyi tavsiye ederim. Bu da yapılabilir udisksctl, böylece adımlar olacaktır:

udisksctl unmount -b /dev/sda1
udisksctl power-off -b /dev/sda

Kullanmıyorsanız systemdeski mal udisksişe yaramalı:

udisks --unmount /dev/sda1
udisks --detach /dev/sda

Oh adam - Ben sadece şimdi sorunun bu komut satırından nasıl yapıldığını anladım - bir şey ile diğeri arasındaki fark ne değil. ben biraz perspektif sunuyor düşünüyorum çünkü benim cevap silmek olmaz - ama seninki Linux sistemler için doğru cevaptır, bence (bu bsd ilgili soru zaten eğer hatta dont know ...) .
mikeserv

4
udisksctl power-offBenim durumumda "güvenle kaldır" eşdeğer görünmüyor. Dahili kart okuyucumdaki mikro SD kartta, cihazda /dev/sddtakılı dosya sistemi yok, komutu kullandığımda udisksctl power-off -b /dev/sddokuyucunun LED'i sönüyor, ama sonra tüm cihaz çalışmaz hale geliyor, sanırım tam anlamıyla tamamen kapanıyor. Tekrar kullanılabilir hale gelmesi için sistemi yeniden başlatmalıyım.
ack

1
@Ack için: okuyucunun bağlı olduğu (muhtemelen dahili) göbeği devre dışı bırakabilir / etkinleştirebilirsiniz. Bu bir hub olduğundan, eksik aygıt da dahil olmak üzere her şeyi düşecek ve yeniden sıralayacaktır. Umarım bu örneği okuyabilirsiniz: udisksctl power-off -b /dev/mmcblk0mmc0: kart aaaa USB 3-1.8 çıkarıldı: USB bağlantısını kesin, cihaz numarası 41 cd /sys/bus/usb/devices/usb3/3-1 echo 0 > authorized echo 1 > authorizedhub 3-1: 1.0: USB hub bulundu usb 3-1: USB'yi bağlamaya yetkili 3-1.8: Yeni USB cihazı bulundu , idVendor = 0bda, idProduct = 0129 mmc0: aaaa adresindeki yeni ultra yüksek hızlı SDR50 SDHC kartı
AB

14

umountdisk için tamamen güvenlidir. Bunu yaptıktan sonra, dosya sistemini başarıyla kaldırdınız ve bu satırlar için endişelenmenize gerek yok. Çıkarma ve çıkarma arasındaki birincil fark umount, diski hiç ilgilendirmiyor - bunun yerine USB portunun 5v güç çıkışıyla ilgili.

Sonra hala açık ve takılı olduğundan umountdiskte listelenen hala görebilirsiniz lsblk. umountdahili bir sabit diskin dosya sistemi ve aynı sebepten dolayı aynı davranışı göreceksiniz. Eğer Ama çıkarmak Bir USB cihazı bunu aşağı güç ve buna zamanki 5v çizmek olmaktan çıkar - Ben .5v trickles düşünüyorum ama bu sınıf uzun zaman önce oldu.

lsblk -f /dev/disk/by-id/usb-SanDisk_Cruzer_200522428118F4325EC2-0:0
NAME   FSTYPE LABEL   UUID                                 MOUNTPOINT
sdd                                                        
├─sdd1 vfat   USBESP  3AD6-C7CC                            
└─sdd2 ext4   USBROOT 5afbfe93-6955-44ec-8c4f-cf381f8ef174 

İşte usb veri yolu yolu ...

cat /sys/bus/usb/devices/5-3/manufacturer 
SanDisk

Neredeyse hiç takmamış olmama rağmen, fişe takılı ve uzun süre yanıp sönüyor sanırım ...

cat /sys/bus/usb/devices/5-3/power/{level,connected_duration}
on
1777877440

Bununla ilgili bir şeyler yapmalıyım:

echo 1 | sudo tee /sys/bus/usb/devices/5-3/remove                                      

Şimdi tekrar bakacağım ...

cat /sys/bus/usb/devices/5-3/power/level                            
cat: /sys/bus/usb/devices/5-3/power/level: No such file or directory

Hmmm ...

lsblk -f /dev/disk/by-id/usb-SanDisk_Cruzer_200522428118F4325EC2-0:0
lsblk: /dev/disk/by-id/usb-SanDisk_Cruzer_200522428118F4325EC2-0:0: not a block device

1
Teşekkürler. umountHarici bir hdd'den sonra , harici hdd'yi bilgisayardan çıkarmak güvenli midir?
Tim

1
umount"Güvenli bir şekilde kaldır" seçeneğine eşdeğer olduğunu sanmıyorum ve ikisi udisksctl power-offde diğer cevap hakkındaki yorumuma bakınız. Örneğin Windows'taki davranışla karşılaştırın. Tahminime göre, Windows cihazdaki dosya sistemlerini yalnızca 'unmount' yapmaktan biraz daha fazlasını yapıyor. Ben, harici sabit diskler aşağı iplik (kart okuyucu üzerindeki LED'ler kapatmadan gözlemledim olmadan vb RePlugged ya da sistem yeniden sürece sonradan cihazı kullanılmaz hale)
ack

2
@ack - Windows'un bununla ne alakası var? ve neden tahmin ediyorsun ve tekrar kullanılabilir hale gelmesi için yeniden başlatmanız gerekmez. sen umount. o zaman kapat. ve asla udiskctlbir şekilde ya da diğeriyle ilgili bir şey önermedim .
mikeserv,

1
@mikeserv "Donanımı güvenle kaldır", Windows'ta kullanılan ifadedir. Kullanıcı tanıdıklarından dolayı diğer sistemlerin bu cümleyi kopyalamaları muhtemeldir. Dosya sisteminden kaldırma işleminden yalnızca onu ayırmak önemlidir. Bunun çok önemli olduğu noktalara bir örnek, işletim sisteminin bir depolama aygıtının yazma önbelleği konusunda belirsiz olduğu durumdur. Sadece harici bir sabit diski söküp çıkardıktan sonra kişisel olarak oldukça önemli veri kaybı (bozuk süper blok ve dosyalar) yaşadım. Daha sonra Linux'un bu konuda uyardığını öğrendim: "Önbellekleme modu sayfası bulunamadı", "Sürücü önbelleği varsayarak yaz".
ack

1
@ack - hayır, bu önemli değil. senin problemin muhtemelen senin acpi. işletim sistemiyle tam olarak ilgisi yok - sadece pano üreticiniz yalnızca bir işletim sistemi için sürücü yazdı. bu küçük çoklu kart cihazları, kart hedefine oldukça düşük seviyeli erişim gerektirir - göz farı gibi şeyler yapabilmeleri gerekir. blok aygıtları değiller - karakter aygıtları. USB diskleri gibi bir şey değiller. board-rom bunları ayrı ayrı ele almak zorundadır ve satıcınız bunu desteklemiyorsa (sıra dışı değil - birinden önyüklemeyi deneyin) şanssızsınız. ama linux'un sorunu değil.
mikeserv
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.