꺼내기/안전 삭제 및 제거

꺼내기/안전 삭제 및 제거

저는 Ubuntu 12.04를 사용하고 있으며 플래시 드라이브 아이콘(Unity의 왼쪽 사이드바에 있음)을 마우스 오른쪽 버튼으로 클릭하면 혼란스러운 두 가지 옵션이 표시됩니다.주입그리고안전한 제거.
답에 가까워질수록이 포럼 주제, 결론은 (플래시 드라이브의 경우) 모두 동일하며 이 umount명령을 사용하는 것과 동일하다는 것입니다. 그러나 마지막 주장은 거짓인 것으로 보입니다. 명령을 사용하여 콘솔에서 flash div를 마운트 해제
하면 여전히 내 장치가 표시됩니다(물론 MOUNTPOINT 아래에는 아무것도 표시되지 않음). 반면에 만약 내가umountlsblk주입또는안전한 제거내 플래시 드라이브가 lsblk더 이상 목록에 없습니다.

제 질문은 실제로 동작을 재현하는 콘솔 명령이 무엇인지입니다.주입그리고안전한 제거?

답변1

를 사용하는 경우 다음 옵션과 함께 유틸리티를 systemd사용하십시오 .udisksctlpower-off

전원을 끄세요

드라이브를 안전하게 제거하고 전원을 끄도록 조치하십시오. 운영 체제 측에서는 드라이브를 사용하는 프로세스가 없는지 확인한 다음 실행 중인 버퍼와 캐시가 안정적인 저장소에 커밋되도록 요청하는 작업이 포함됩니다.

먼저 해당 USB의 모든 파일 시스템을 마운트 해제하는 것이 좋습니다. 이 작업은 를 통해서도 수행할 수 있으므로 udisksctl단계는 다음과 같습니다.

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

사용하지 않으면 systemd이전 버전이 udisks작동합니다.

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

답변2

umount디스크에는 완전히 안전합니다. 이 작업이 완료되면 파일 시스템이 성공적으로 마운트 해제되었으므로 이러한 문제에 대해 걱정할 필요가 없습니다. 주요 차이점은주입디스크에 대해서는 전혀 신경 쓰지 마십시오 umount. USB 포트에서 출력되는 5V 전원만 있으면 됩니다.

디스크 가 여전히 열려 있고 연결되어 있으므로 나중에 umount나열된 디스크를 계속 볼 수 있습니다 . 내부 하드 드라이브의 파일 시스템을 사용하면 동일한 이유로 동일한 동작을 볼 수 있습니다. 하지만 당신이 언제lsblkumount주입USB 장치의 전원을 끄면 더 이상 평소처럼 5V를 소비하지 않습니다. 점진적으로 0.5V로 떨어질 것이라고 생각했지만 그런 일은 오래 전에 일어났습니다.

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 

이것은 USB 버스 경로입니다 ...

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

거의 설치하지 않았음에도 불구하고 오랫동안 꽂혀서 깜박이는 것 같은데...

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

이 문제에 대해 어떻게 해야 합니까?

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

이제 다시 봐야겠습니다...

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

음...

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

관련 정보