Jump to content

ntfs-3g-utils - набор утилит для работы с файловой системой NTFS.


Recommended Posts

 

Установка и настройка ntfs-3g-utils

 

ntfs-3g - драйвер NTFS с открытым исходным кодом, который разрабатывается компанией Tuxera. В Linux OS данный пакет устанавливается отдельно, путем ввода в консоли команды:

sudo apt install ntfs-3g

В состав данного пакета входит утилита ntfsfix, которая позволяет проверить раздел фс NTFS на ошибки в Linux системах. Например, у Вас подключен к роутеру Keenetic накопитель с двумя фс EXT4 \ NTFS - на EXT4 установлен opkg Entware, на NTFS файловое хранилище, установлен прошивочный Transmission, DLNA. Выключили свет, размонтирование разделов прошло некорректно и далее при загрузке фс NTFS получаем записи в логе:

[E] [May 21 11:21:45] ndm: FileSystem::Native: failed to mount "FLS" drive: filesystem is dirty, please perform a chkdsk maintenance of this drive on your Windows computer.
[E] [May 21 11:21:45] ndm: FileSystem::Ext: failed to mount a dirty partition.

в которой сказано, что нужно подключить диск к клиенту с Windows OS и сделать chkdsk раздела. В WebUI при этом будет сказано, что раздел "Требует проверки":

2018-05-22-screen_7.png

Чтобы этого не делать, достаточно установить пакет из репозитория Entware под названием ntfs-3g-utils, в который входят утилиты:

/ # opkg info ntfs-3g-utils 
Package: ntfs-3g-utils
Version: 2017.3.23-1-fuseext
Depends: libc, libssp, librt, libpthread, ntfs-3g, libgcrypt, libuuid
Status: install user installed
Section: utils
Architecture: mipsel-3.4
MD5Sum: 1804405a96cc22bc989a89d0fc6791dc
Size: 356141
Filename: ntfs-3g-utils_2017.3.23-1-fuseext_mipsel-3.4.ipk
Description: Suite of NTFS utilities for doing neat things with NTFS.
 Contains:
 - mkntfs - Create an NTFS filesystem.
 - ntfscat - Dump a file's content to the standard output.
 - ntfsclone - Efficiently clone, backup, restore or rescue NTFS.
 - ntfscluster - Locate the files which use the given sectors or clusters.
 - ntfscmp - Compare two NTFS filesystems and tell the differences.
 - ntfscp - Copy a file to an NTFS volume.
 - ntfssecaudit - Display ownership and permissions, check consistency
 - ntfsfix - Check and fix some common errors, clear the LogFile.
 - ntfsinfo - Show information about NTFS or one of the files or directories within it.
 - ntfslabel - Show, or set, an NTFS filesystem's volume label.
 - ntfsls - List information about files in a directory residing on an NTFS.
 - ntfsresize - Resize NTFS without losing data.
 - ntfsundelete - Recover deleted files from NTFS.
 - ntfsusermap - Define mapping of Windows accounts to Linux logins
Installed-Time: 1526913822

Далее рассмотрим работу утилиты по исправлению ошибок файловой системы NTFS:

- ntfsfix - Check and fix some common errors, clear the LogFile.

Приступим к установке.

Версия из репозитория ntfs-3g-utils_2017.3.23-1:

http://bin.entware.net/mipselsf-k3.4/ntfs-3g-utils_2017.3.23-1-fuseext_mipsel-3.4.ipk

Подготовка:

1. Создаем раздел EXT4 на жестком диске - Использование файловой системы EXT4 на USB-накопителях.

2. Установка и настройка Entware - в данной теме.

Работоспособность проверена с:

Keenetic Giga KN-1010, прошивка draft 2.12.A.6.0-2 от 19.05.2018, раздел на HDD EXT4.

Обновляемся:

/ # opkg update
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/entware
Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/keendev

Устанавливаем пакет ntfs-3g-utils:

/ # opkg install ntfs-3g-utils
Installing ntfs-3g-utils (2017.3.23-1-fuseext) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g-utils_2017.3.23-1-fuseext_mipsel-3.4.ipk
Installing ntfs-3g (2017.3.23-1-fuseext) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g_2017.3.23-1-fuseext_mipsel-3.4.ipk
Configuring ntfs-3g.
Configuring ntfs-3g-utils.

Проверяем доступность утилиты ntfsfix:

/ # ntfsfix -h
ntfsfix v2017.3.23 (libntfs-3g)

Usage: ntfsfix [options] device
    Attempt to fix an NTFS partition.

    -b, --clear-bad-sectors Clear the bad sector list
    -d, --clear-dirty       Clear the volume dirty flag
    -h, --help              Display this help
    -n, --no-action         Do not write anything
    -V, --version           Display version information

For example: ntfsfix /dev/hda6

Developers' email address: ntfs-3g-devel@lists.sf.net
News, support and information:  http://tuxera.com
/ # ntfsfix -V
ntfsfix v2017.3.23

Attempt to fix an NTFS partition.

Copyright (c) 2000-2006 Anton Altaparmakov
Copyright (c) 2002-2006 Szabolcs Szakacsits
Copyright (c) 2007      Yura Pakhuchiy
Copyright (c) 2011-2015 Jean-Pierre Andre

This program is free software, released under the GNU General Public License
and you are welcome to redistribute it under certain conditions.  It comes with
ABSOLUTELY NO WARRANTY; for details read the GNU General Public License to be
found in the file "COPYING" distributed with this program, or online at:
http://www.gnu.org/copyleft/gpl.html

Developers' email address: ntfs-3g-devel@lists.sf.net
News, support and information:  http://tuxera.com

Проверяем доступность разделов:

/ # mount | grep sd
/dev/sdb1 on /tmp/mnt/OPKG type ext4 (rw,relatime,stripe=8191,data=ordered)
/dev/sdb1 on /opt type ext4 (rw,relatime,stripe=8191,data=ordered)
/dev/sdb2 on /tmp/mnt/FLS type tntfs (rw,relatime,uid=0,gid=0,umask=022,nls=utf8,min_prealloc_size=64k,max_prealloc_size=32763900,readahead=4M,perm,user_xattr,case_sensitive,fail_safe,hidden=show,dotfile=show,protected_system=ignore,errors=continue,mft_zone_multiplier=1)

Выбираем нужный NTFS раздел для проверки:

/dev/sdb2 on /tmp/mnt/FLS type tntfs

Отмонтируем раздел NTFS:

/ # umount /dev/sdb2

Проверяем раздел NTFS на ошибки:

/ # ntfsfix -b -d /dev/sdb2
Mounting volume... OK
Processing of $MFT and $MFTMirr completed successfully.
Checking the alternate boot sector... OK
NTFS volume version is 3.1.
Going to un-mark the bad clusters ($BadClus)... No bad clusters...OK
NTFS partition /dev/sdb2 was processed successfully.

Будут выполнены команды:

-b, --clear-bad-sectors Clear the bad sector list
-d, --clear-dirty Clear the volume dirty flag

После монтируем раздел обратно:

/ # mount /dev/sdb2 /tmp/mnt/FLS

Проверяем, что раздел примонтирован:

/ # mount | grep sd
/dev/sdb1 on /tmp/mnt/OPKG type ext4 (rw,relatime,stripe=8191,data=ordered)
/dev/sdb1 on /opt type ext4 (rw,relatime,stripe=8191,data=ordered)
/dev/sdb2 on /tmp/mnt/FLS type tntfs (rw,relatime,uid=0,gid=0,umask=022,nls=utf8,min_prealloc_size=64k,max_prealloc_size=32763900,readahead=4M,perm,user_xattr,case_sensitive,fail_safe,hidden=show,dotfile=show,protected_system=ignore,errors=continue,mft_zone_multiplier=1)

Далее проверяем show log NDMS:

[I] May 21 16:55:06 ndm: FileSystem::Ext: ntfs "7783495649C29371:": filesystem initialized.
[I] May 21 16:55:06 ndm: kernel: tntfs info (device sda2, pid 30728): ntfs_fill_super(): fail_safe is enabled.
[I] May 21 16:55:06 ndm: kernel: tntfs info (device sda2, pid 30728): load_system_files(): NTFS volume name 'FLS', version 3.1 (cluster_size 4096, PAGE_SIZE 4096).
[I] May 21 16:55:06 ndm: FileSystem::Repository: "7783495649C29371:" registered.

2018-05-21-screen_7.png.c86db029b9ba07b9279e7c6c691e95fc.png

как видим, раздел загрузился без ошибок и можно продолжать работу.

  • Thanks 6
  • Upvote 1
Link to comment
Share on other sites

  • 2 weeks later...
  • 8 months later...

@ndm @Le ecureuil Добавить бы данную фичу в прошивку с управлением в вэб. Точно была бы не лишней. А то бывает ошибки на подключенном диске на каком нибудь удаленном роутере возникают, а устранить их рядом компа нет. Вот и мучаешься потом. То,что она в OPKG есть это конечно гуд. Но диски подключены у многих, а с OPKG разберутся не все.

Edited by T@rkus
  • Upvote 4
Link to comment
Share on other sites

5 часов назад, T@rkus сказал:

@ndm @Le ecureuil Добавить бы данную фичу в прошивку с управлением в вэб. Точно была бы не лишней. А то бывает ошибки на подключенном диске на каком нибудь удаленном роутере возникают, а устранить их рядом компа нет. Вот и мучаешься потом. То,что она в OPKG есть это конечно гуд. Но диски подключены у многих, а с OPKG разберутся не все.

Не хватит ОЗУ на устройствах с 64 мб чтобы проверить 2тб диск. Уже сто раз муссировалось.

  • Thanks 1
Link to comment
Share on other sites

18 минут назад, Le ecureuil сказал:

Не хватит ОЗУ на устройствах с 64 мб чтобы проверить 2тб диск. Уже сто раз муссировалось.

Так с 64 мб из KN с USB всего KN-1210 (Keenetic 4G III) и то он вроде диски не поддерживает.  Omni II из старых только если. Я посмотрел на всех новых других КN с USB минимум 128. На Extra II тоже 128.

Edited by T@rkus
  • Upvote 1
Link to comment
Share on other sites

Выходит, что частично реализовалась моя хотелка 2016 года (которая, впрочем и находится сейчас в реализованных), не смотря на то, что там многие (в том числе многоуважаемый @Le ecureuil) указывали на не реальность всего этого.

Дефрагментация, соглашусь, была чрезмерной хотелкой для роутера. Признаю.

Link to comment
Share on other sites

1 час назад, ankar84 сказал:

Выходит, что частично реализовалась моя хотелка 2016 года (которая, впрочем и находится сейчас в реализованных), не смотря на то, что там многие (в том числе многоуважаемый @Le ecureuil) указывали на не реальность всего этого.

Дефрагментация, соглашусь, была чрезмерной хотелкой для роутера. Признаю.

Конечно нереально.

1. Сколько времени будет занимать проверка 2Тб диска по USB2.0?

2. Кто-то проверял как на устройствах с 128 Мб ОЗУ себя ведет эта проверка с тем же диском в 2 Тб на котором десяток миллионов файлов?

3. Кто даст гарантии корректной работы этой утилиты? Все же проверка ФС даже на торрентопомойке это крайне ответственная операция. Именно потому в ядро 3.4 мы не переносим ФС из более новых ядер - сломать элементарно, чинить почти невозможно.

Потому да, для мелких применений оно пойдет, но мы для вас специально сделали opkg: то, что делать стандартным функционалом полноценно неразумно или невозможно, вы можете попробовать сделать сами.

  • Upvote 3
Link to comment
Share on other sites

  • 3 months later...

@TheBB @zyxmon @enpa Утилита перестала устанавливаться. Пробовал на KN-1010 и Giga II прошивка 2.15.C.4.0-1. Устанавливаю Entware, обновляю, далее opkg install ntfs-3g-utils. Еще пару неделю назад все устанавливалось прекрасно.

 

opkg install ntfs-3g-utils 

Installing ntfs-3g-utils (2017.3.23-2-fuseext) to root... 
Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g-utils_2017.3.23-2-fuseext_mipsel-3.4.ipk 
opkg: allocatestack.c:530: allocate_stack: Assertion `size != 0' failed. 
Aborted 

Edited by T@rkus
  • Thanks 1
Link to comment
Share on other sites

~ # opkg install ntfs-3g-utils
Installing ntfs-3g-utils (2017.3.23-2-fuseext) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g-utils_2017.3.23-2-fuseext_mipsel-3.4.ipk
Installing libfuse (2.9.7-2) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/libfuse_2.9.7-2_mipsel-3.4.ipk
Installing ntfs-3g (2017.3.23-2-fuseext) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g_2017.3.23-2-fuseext_mipsel-3.4.ipk
Installing libgpg-error (1.36-1) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/libgpg-error_1.36-1_mipsel-3.4.ipk
Installing libgcrypt (1.8.4-1) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/libgcrypt_1.8.4-1_mipsel-3.4.ipk
Configuring libfuse.
Configuring ntfs-3g.
Configuring libgpg-error.
Configuring libgcrypt.
Configuring ntfs-3g-utils.

ЧЯДН? Пакеты вчера обновились. Попробуйте еще раз.

Link to comment
Share on other sites

22 минуты назад, zyxmon сказал:

~ # opkg install ntfs-3g-utils
Installing ntfs-3g-utils (2017.3.23-2-fuseext) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g-utils_2017.3.23-2-fuseext_mipsel-3.4.ipk
Installing libfuse (2.9.7-2) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/libfuse_2.9.7-2_mipsel-3.4.ipk
Installing ntfs-3g (2017.3.23-2-fuseext) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g_2017.3.23-2-fuseext_mipsel-3.4.ipk
Installing libgpg-error (1.36-1) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/libgpg-error_1.36-1_mipsel-3.4.ipk
Installing libgcrypt (1.8.4-1) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/libgcrypt_1.8.4-1_mipsel-3.4.ipk
Configuring libfuse.
Configuring ntfs-3g.
Configuring libgpg-error.
Configuring libgcrypt.
Configuring ntfs-3g-utils.

ЧЯДН? Пакеты вчера обновились. Попробуйте еще раз.

По прежнему не устанавливается ни на KN-1010 ни на Giga II. Обе флешки отформатированны в NTFS это может влиять?

Edited by T@rkus
Link to comment
Share on other sites

4 минуты назад, zyxmon сказал:

@T@rkus проблема локализовна и решена. Можно переустановить entware поверх имеющейся версии. Другое решение есть в группе телеграм.

Сегодня ночью заново скачал дистрибутив с Entware и установил. Утилита установилась на обоих устройствах. Спасибо.

Link to comment
Share on other sites

  • 1 year later...
  • 4 months later...

А как проверять диск, если он не виден в системе и SSH под root не работает, пока диск не проверишь из под Windows? :)

Есть другой способ установки opkg на другой раздел?

Link to comment
Share on other sites

2 часа назад, MuadDiib сказал:

Есть другой способ установки opkg на другой раздел?

Превратит раздел в "реаниматор", накидать нужных утилит, напр., "mc"  - для удобства, какой-нибудь текстовый редактор  (конфиги подправить), описанный здесь пакет и/или др. пакеты для работы с ФС, архиватор(ы) - для создания резервной копии или упаковки "нажитого непосильным трудом", ...

Link to comment
Share on other sites

  • 8 months later...

Доброго времени суток. Установил удалённо entware на внутреннюю память, далее ntfs-3g-utils. На команду mount | grep sd ни какой реакции нет. Подскажите как узнать раздел с жёстким диском. 

Link to comment
Share on other sites

21 минуту назад, Иван Козлов сказал:

Доброго времени суток. Установил удалённо entware на внутреннюю память, далее ntfs-3g-utils. На команду mount | grep sd ни какой реакции нет. Подскажите как узнать раздел с жёстким диском. 

Смотрите просто df и mount

 

Роутер с Entware во внутренней но без HDD

/ # df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root                18048     18048         0 100% /
tmpfs                    62312         0     62312   0% /dev
tmpfs                    62312       216     62096   0% /tmp
/dev/ubi0_0              56540     33484     20132  62% /storage
/dev/ubi0_0              56540     33484     20132  62% /opt

/ # mount
/dev/root on / type squashfs (ro,relatime)
tmpfs on /dev type tmpfs (rw,nosuid,noexec,relatime)
none on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600,ptmxmode=000)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
none on /sys/kernel/debug type debugfs (rw,nosuid,noexec,relatime)
/dev/ubi0_0 on /storage type ubifs (rw,relatime,compr=zlib)
/dev/ubi0_0 on /opt type ubifs (rw,relatime,compr=zlib)
/ # 

Роутер с HDD и ПРИ МОНТИРОВАННЫМИ разделами

/opt/tmp # mount | grep sd
/dev/sda1 on /tmp/mnt/0......................0 type tntfs (rw,nosuid,noexec,noatime,uid=0,gid=1000,umask=02,allow_utime=0020,utf8,min_prealloc_size=64k,max_prealloc_size=481296376,readahead=4M,user_xattr,case_insensitive,disable_sparse,fail_safe,hidden=show,dotfile=show,protected_system=ignore,errors=continue,mft_zone_multiplier=1)
/dev/sda3 on /tmp/mnt/f......................1 type ext4 (rw,noatime,data=ordered)
/dev/sda3 on /opt type ext4 (rw,noatime,data=ordered)
/opt/tmp # 

 

Link to comment
Share on other sites

11 минуту назад, Иван Козлов сказал:

Т.е. если на mount | grep sd ни какой реакции нет, то ж.д. со статусом "требует проверки" ни как удалённо не исправить ?

Как оно может быть исправлено, если не может примонтироваться так как требует проверки?! Лэ - логика...

Link to comment
Share on other sites

А можно ли как-то автоматизировать процесс проверки диска или хотя бы сделать доступным из консоли? Диск каждые две-три недели отваливается, замучился лазить за ним :(

Link to comment
Share on other sites

  • 7 months later...

Добрый день,

Подскажите, почему после выполнения команд 

ntfsfix -b -d /dev/sdb2
mount /dev/sdb2 /tmp/mnt/[имя диска]

в вебморде напротив проблемного диска всё-равно отображается "Требуется проверка"?

При этом через консоль я могу спокойно перемещаться по данному диску.

Если роутер перезагрузить - то диск сам успешно монтируется, ошибок на нём нет.

p.s Keenetic Giga (KN-1011) RU  3.8.5

Link to comment
Share on other sites

  • 3 weeks later...
В 13.10.2022 в 12:22, TJohn7002 сказал:

Добрый день,

Подскажите, почему после выполнения команд 

ntfsfix -b -d /dev/sdb2
mount /dev/sdb2 /tmp/mnt/[имя диска]

в вебморде напротив проблемного диска всё-равно отображается "Требуется проверка"?

При этом через консоль я могу спокойно перемещаться по данному диску.

Если роутер перезагрузить - то диск сам успешно монтируется, ошибок на нём нет.

p.s Keenetic Giga (KN-1011) RU  3.8.5

А человеческого решения для исправления ошибки с HDD до сих пор нет.????????

Это что за полный п......................... каждые 5-8 дней, лазаю на шкаф снимаю жесткий проверяю. потому что он отваливается.

Скажите пожалуйста есть нормально простое спасение от отваливающегося диска.?

Link to comment
Share on other sites

Файловая система EXT, если с физикой диска все в порядке. После какого то из обновления у меня начались проблемы ntfs при скачке торрентов, при этом диск проверен и с ним все в порядке. Устал ждать исправления и перешел на EXT4 и он прекрасно работает, никаких тебе не читаемых секторов и прочего, на что ругался трансмишн при ntfs.

Edited by keshun
Link to comment
Share on other sites

  • 2 months later...
On 2/8/2022 at 12:10 PM, Иван Козлов said:

Т.е. если на mount | grep sd ни какой реакции нет, то ж.д. со статусом "требует проверки" ни как удалённо не исправить ?

У меня сработало ntfsfix -b -d /dev/sda1

Link to comment
Share on other sites

  • 4 weeks later...
On 2/7/2019 at 7:14 PM, Le ecureuil said:

Не хватит ОЗУ на устройствах с 64 мб чтобы проверить 2тб диск.

А если внедрить только на модели с 256 МБ ОЗУ и выше, только по интерфейсу USB3.0 такое возможно?
Сейчас уже не 2019 год и полно девайсов с достаточным объемом озу, или есть еще какие подводные камни?

Link to comment
Share on other sites

  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...