mount.ntfs
파티션이 올바르게 마운트된 것처럼 보이는 경우 작업이 완료되지 않는 이유(계속 CPU 소모)는 무엇입니까 ? 이것을 어떻게 디버깅할 수 있나요?
Linux Mint 19.3에서는 fstab(아래)이 오랫동안 올바르게 작동했습니다. Windows와 공유하는 NTFS 데이터 파티션을 마운트합니다. 한동안 창문을 사용하지 않았는데 확실히 최대 절전 모드가 아닙니다. 부팅 시 드라이브가 올바르게 마운트되고 특정 폴더가 바인딩되며 모든 데이터에 액세스할 수 있습니다. 평소와 같이 완전히 작동하는 것 같지만 온라인에서 다른 참조를 찾을 수 없는 지점이 바로 이 지점입니다.
로그인 후 부팅 후 루트 프로세스는 mount.ntfs
계속해서 코어의 CPU 사용량을 소모/소모합니다. (이미 마운트된 것 같기 때문에) 원인이 무엇인지 알 수 없지만 프로세스는 fstab: cat /proc/[id of mount.ntfs process]/cmdline
: 에서 나옵니다 /sbin/mount.ntfs /dev/sda7 /mnt/DATA -o rw,noatime,locale=en_US.utf8,umask=007,uid=1000,gid=1000
.
# /etc/fstab: static file system information.
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda9 during installation
UUID=xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4 noatime,errors=remount-ro 0 1
# /boot/efi was on /dev/sda2 during installation
UUID=xxxx-xxxx /boot/efi vfat umask=0077 0 1
# swap was on /dev/sda10 during installation
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx none swap sw 0 0
# Data Partition, on /dev/sda7
UUID=xxxxxxxxxxxxxxxxx /mnt/DATA ntfs noatime,defaults,locale=en_US.utf8,umask=007,uid=1000,gid=1000 0 2
# Bind directories correctly
/mnt/DATA/Downloads /home/me/Downloads none bind,x-systemd.requires=/mnt/DATA 0 0
/mnt/DATA/Desktop/LinDesktop /home/me/Desktop none bind,x-systemd.requires=/mnt/DATA 0 0
/mnt/DATA/Documents /home/me/Documents none bind,x-systemd.requires=/mnt/DATA 0 0
/mnt/DATA/Media/Music /home/me/Music none bind,x-systemd.requires=/mnt/DATA 0 0
/mnt/DATA/Media/Pictures /home/me/Pictures auto bind,x-systemd.requires=/mnt/DATA 0 0
/mnt/DATA/Media/Videos /home/me/Videos auto bind,x-systemd.requires=/mnt/DATA 0 0
/mnt/DATA/Workspace /home/me/Workspace auto bind,x-systemd.requires=/mnt/DATA 0 0
추적을 보면 쓰기 및 읽기가 성공적으로 수행되는 것 같습니다. 그만한 가치가 있습니다.
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
30.51 1.392332 3 518018 pread64
26.86 1.225702 3 416749 pwrite64
18.16 0.828499 4 232782 1 writev
15.72 0.717149 3 236584 read
7.22 0.329389 86 3846 fsync
0.98 0.044537 3 15188 sendto
0.55 0.025258 2 15188 getpid
------ ----------- ----------- --------- --------- ----------------
100.00 4.562866 1438355 1 total
(syslog/dmesg에서) 마운트 시 찾을 수 있는 유일한 오류는 다른 드라이브를 마운트하기 훨씬 전에 부팅 시 루트/를 다시 마운트하는 것이었습니다. [ 4.155258] EXT4-fs (sda9): re-mounted. Opts: errors=remount-ro
편집(자세한 정보가 포함된 주석을 여기로 이동):
fstab에서 마운트를 주석 처리하고 재부팅하면 사용자 로그인 후에만 멈춥니다. (부팅에서 마운트를 다시 활성화하려면 루트 셸로 이동해야 했습니다.) umount -av
/mnt/DATA가 사용 중이어서 마운트 해제할 수 없다고 말합니다. 내 생각에 이 문제는 1개의 프로세스(this)가 절전 모드를 거부하기 때문에 일시 중지할 수 없는 이유이기도 합니다.
umount는 (탭 전체에서) /mnt/DATA를 대상 마운트로 제안하지만, mount.ntfs 프로세스를 종료하면 마운트 해제할 마운트로도 제거됩니다. 이제 자세히 살펴보면 처음부터 좋은 CPU 덩어리로 실행되는 dconf-service가 있는데, 그것이 왜/무엇을 하는지 모르고, 마운트를 강제로 종료하면 (말한 대로) 스파이크가 발생합니다. NTFS 프로세스.
강제로 마운트 해제를 시도하면 sudo umount -f /mnt/DATA
대상이 사용 중이라고 보고됩니다. 이로 인해 프로세스 mount.ntfs
가 사라지지만 dconf-service
스파이크가 뜨거워집니다. /proc/cmdline은 /usr/lib/dconf/dconf-service
; 이 문제와 관련하여 실제로 무엇을 하고 있는지에 대한 자세한 정보를 얻는 방법을 모르겠습니다. 이 마운트 해제(및 기타 작업)로 인해 stderr에 다음 메시지가 표시됩니다.fatal: unable to access '/[path to now-broken symlink to drive subfolder]': Transport endpoint is not connected