LINUX.ORG.RU

>> И когда он писать на NTFS научится? :( А ты что знаешь все внутренности NTFS? Правильно - никто не знает. Кроме Билла и его друзей, разумеется ;)

anonymous
()

Отцы! подскажите, научите! Признаюсь, виноват виндузятник я, но не совсем потерян для обчества - в дуал буте стоит Linux (ASP 7.2, 2.4.9-13smp). Есть локальный диск под NTFS, на нем файлы и каталоги с русскими именами. Как подмонтировать его чтобы в Linux'e были видны эти файлы,(нужно только чтение). Сейчас монтирую mount -tntfs -oiocharset=utf8 /dev/sda1 /mnt/sda1 - видны только катологи и файлы с именами в латинице :-((((. Если никак, тогда подскажите прогу которая может писать из под мастдая на Linux разделы ext2 или ext3 или raiserfs. Не дайте погибнуть пингвину в моей душе и на моем серваке!

anonymous
()

Попробуй mount -t ntfs -o codepage=866,iocharset=koi8-r /dev/sda1 /mnt/sda1 (так делаю для FAT32) c NTFS не сталкивался :(

или

mount -t ntfs -o codepage=utf8,iocharset=koi8-r /dev/sda1 /mnt/sda1 /mnt/sda1

anonymous
()
Ответ на: комментарий от anonymous

2anonymous (*) (2002-05-15 14:01:32.763)
попробуй
-o iocharset=koi8-r
должно помочь

rathamahata
()
Ответ на: комментарий от anonymous

2anonymous (*) (2002-05-15 15:05:15.002) "-o codepage=866,iocharset=koi8-r" codepage там не нужен - если вообще будет работать(в чём сомневаюсь)

rathamahata
()

codepage действительно не нужен, потому как NTFS хранит имена файлов в Unicode'е, а вот iocharset=koi8-r - нужен (если, конечно, у тебя в системе локаль именно с KOI8-R)

Led ★★★☆☆
()
Ответ на: комментарий от anonymous

>> И когда он писать на NTFS научится? :(
да оно ужо давно это умеет
Вот только юзе он йоур овн риск
Да и вообще - зачем нужно NTFS заниматься?
Как ФС она не катит
Зачем её под линух сильно суппортить?
А по поводу её интерналов - есть статейки на NT-Insider и на windows 2000 magazine А ещё есть куча доков на сорсфоржевском сайте
Вот только делать это особливо не имеет смысла

anonymous
()
Ответ на: комментарий от anonymous

> стоит Linux (ASP 7.2, 2.4.9-13smp). Есть локальный диск под NTFS, на нем файлы и каталоги с русскими именами.

Хороший пример для противников пересборки ядер... Я всегда пересобираю ядро.
В 2.4 есть опция default charset (говорю по памяти). Так вот, когда друг принес
мне диск 160Гиг с фильмами, и я его подсоединил к своей машине, то узнал я что там NTFS только
тогда, когда он попросил записать туда кое-что ;) Все файлы и каталоги в нем были
на русском. А я лишь как обычно сказал mount /dev/hdb1 /mountpoint. Все прекрасно
читалось, и я думал, что это fat32. оказалось, что fat32 не держит такие большие партиции,
потому человек поставил ntfs...

anonymous
()

>>Да и вообще - зачем нужно NTFS заниматься?
>>Как ФС она не катит
>>Зачем её под линух сильно суппортить?

Для того чтобы можно было комфортно обмениваться файлами, когда стоит и Windows, и Linux. К сожалению Linux пока не может заменить Windows в некоторых задачах или делает это посредственно.
Хорошо хоть парагоновский драйвер ext2/3 для винды имеется. Только тем и спасаемся.

Eugeny_Balakhonov ★★
() автор топика
Ответ на: комментарий от anonymous

2anonymous (*) (2002-05-15 16:48:49.735)

> a ext2, ext3 iz window krasivo vidit(read-write) Paragon >ext2Anywhere.

А серийник или кряк к этому ext2Anywhere у тебя есть? Если есть кинь сюдаи пжалуйста. Сенкс

anonymous
()
Ответ на: комментарий от anonymous

2anonymous (*) (2002-05-15 17:08:32.47)
>>> И когда он писать на NTFS научится? :(
> да оно ужо давно это умеет
тот драйвер о которм идет речь, а именно ,бывший ntfs-tng,
позже включенный в 2.5 а вот теперь backported на 2.4 как раз не
умеет. Если будет уметь - то не скоро. Хотя если таки научится -
то должен делать это без лейбла "dangerous".

rathamahata
()
Ответ на: комментарий от Eugeny_Balakhonov

> Хорошо хоть парагоновский драйвер ext2/3 для винды имеется.

Правильно было бы сказать так:
"Спасибо товарищу Линусу за его открытую для всех ось"
и
"Чтоб ты здох, господин Билли, со своими закрытыми технологиями".
Кстати, все прочитали http://www.compulenta.ru/2002/5/15/29576/ ?

anonymous
()
Ответ на: комментарий от Eugeny_Balakhonov

> Для того чтобы можно было комфортно обмениваться файлами, когда стоит и Windows, и Linux.

Ну поступись чуть-чуть комфортом - держи на винде небольшую партицию fat32 и копируй
туда файлы из линукса. Где проблема?

anonymous
()

>Eugeny Balahonov (*) (2002-05-15 10:28:21.285) >И когда он писать на NTFS научится? :( >Умел бы, помог ;) -Итак помогает!!! Читать та он умеет, это уже весьма сильный прогресс :) Были конечно нюансы когда некоторые ntfs-портишены НЕЛЬЗЯ было монтировать, но теперь этот недостаток исправили :)))

Теперь о записи: писать тоже умел :(, помнится в версии кернел этак 2.5.10, 2.4.16 (точно уже не помню), Но поддержка записи ТОЧНО была!!! Собственно как раз для не для терпеливых ;) Последствия были весьма не очень хорошие...

Теперь вместо write support (DANGEROUS) поменяли на DEBUGING (NEW) ;)

На сколько я представляю все дело в не понимании Linux-VFS и ms-MFT (File Alocation table + журнал + квота + m$_ACL + MFT_backup ) К этому мона добавить СЖАТИЕ.

А терер на сколько это не смешно, но это ФАКТЫ. m$_ntfs может делать: 1. Hard и Symbolic Links 2. Unicode 3. max_path_to_file_length = 65536 // Это вОООще отдельный прикол :) 4. Дополнительные атрибуты файла (?) владелец_не_зарегистрированный в системы, дополнительная инфа_файла не хранящаеся в самом фале и вооще не где не хранящаяся* ;) // не многое похожие на attr

А теперь кто нить видел эти фичи ? использовал ? а на oS m$ wыn ??? а сама wыn ???

Наверное это будет реализовано этак в m$_XP_4lammers-2005 ;)

А linux-ntfs team над этим упорно работает!....

P.S. Вопрос на за засыпку: каков max_file_size и max_fs_size в ntFS ? P.P.S. Я и сам не знаю и другим не дам. -=Билл Гейтс=-

С Уважением.

FBX

anonymous
()
Ответ на: комментарий от anonymous

2anonymous (*) (2002-05-15 19:20:09.711)

"Теперь о записи: писать тоже умел :(, помнится в версии кернел этак 2.5.10, 2.4.16 (точно уже не помню), Но поддержка записи ТОЧНО была!!!"
Была - но не в том драйвере о котором идёт речь (напомню речь идёт о ntfs-tng, который официально включен Линусом в 2.5.11 http:http://kernelnewbies.org/status/latest.html)

экспериментальная поддержка записи была в старом драйвере (Martin von LЖwis & co. - этот драйвер правда в последние годы тоже поддерживал Anton Altaparmakov).

В новом драйвере поддерхки записи _нет_

"Теперь вместо write support (DANGEROUS) поменяли на DEBUGING (NEW) ;)"
Эти опции хотя вторая и стоит на том же месте что раньше стояла
первая - относятся к совершенно разным драйверам.
сделайте
diff -urN linux-2.4.18 linux-2.5.15 | less
- поймете о чём я говорю.


rathamahata
()
Ответ на: комментарий от anonymous

2FBX anonymous (*) (2002-05-15 19:20:09.711) А терер на сколько это не смешно, но это ФАКТЫ. m$_ntfs может делать: 1. Hard и Symbolic Links..."

Можно поподробнее про Symbolic Links - откуда такая информация?

rathamahata
()

Народ, подскажите, а где взять этот Парагоновский драйверок для чтения ext2?

anonymous
()

Писать он научится как всегда - через полгода после FreeBSDшной версии

anonymous
()

Symbolic links в терминологии Микрософт зовётся препарс-поинтс....
Для желающих могу послать страничку из МСДН
Вот только про хард-линки это скорее всего лажа хотя их можно организовывать на NTFS но как на это NTFS-FSCK смотреть будет не ясно
По поводу максимального размера партиции так дядя Билли это ни от кого не скрывает...Если знать максимальный размер кластера и максимальную длину VCN записи можно получить ответ - 1Tb
А вот по поводу максимальной длины пути к файлу, то это свойство не файловой системы а ядра ОС. Вот например на Линуксе такой размер равен размеру одной странички, то есть 4Кб на Интеле Хотя вопрос - разве кому не хватало?

anonymous
()

2anonymous (*) (2002-05-16 11:01:02.849):

Насчет hard - вещь относительно бесполезная (отн. symlinks), тем не менее, еще на NT4 Far Manager прекрасно их делает (ALT+F6) и chkdsk не ругается.

anonymous
()

Хард линки можно прекрасно создавать какойто утилиткой из Reskita, FAR менеджером, или своими программами использующими : "The CreateHardLink function establishes an NTFS hard link between an existing file and a new file. An NTFS hard link is similar to a POSIX hard link.

BOOL CreateHardLink( LPCTSTR lpFileName, // link name name LPCTSTR lpExistingFileName, // target file name LPSECURITY_ATTRIBUTES lpSecurityAttributes );" а вот почему в M$ нет встроеной потдержки это уже загадка ...

anonymous
()

Я точно не знаю, но пока стояла NT4, то линукс легко писал на неё. Когда же поставил Windows2000, то линуксовое ядро начало ругаться. Причем даже на ту партицию, на которой оставалась четвертая NT.

Править ядро на предмет проверки, чья NTFS мне боязно, поскольку боюсь за целостность данных. Но тому, кому терять нечего, думаю можно попробовать. Имею в виду линия 2.4.xx ядер.

alman ★★★
()

Для anonymous (*) (2002-05-16 11:32:11.11)
Признаю свою ошибку.....Действительно есть
Интересно как они устроены? Ведь в NTFS время модификации храниться как в dentry так и в FILE(аналог inode) как же она на них ссылается?
К слову появилась то эта фича только в 2000 видать только за тем чтобы сказать всем фанатам Юниксов - и у нас есть хард линки
Поэтому нативно они нигде не создаются
Вот мне интересно - а зачем вообще нужны хард-линки?
Где и когда они кативно используются?

anonymous
()

Для anonymous (*) (2002-05-16 17:28:16.684) Ну представь себе, делаем супер пупер секурную систему где все сервисы и даже tcpdump - chroot'ed ;-)) так библиотеки через Хард линки ложим, так как Симбольные линки работать не будут ... ну еще можно пару примеров привести ...

anonymous
()

2rathamahata (*) (2002-05-15 19:48:44.924)

А ни кто и не спорит что там (в 2.4.18 и до 2.4.11) стояла другая версия нтфс драйвера. Прогресс идет драйвера меняютcя.

2rathamahata (*) (2002-05-15 20:16:00.228)

>может быть имеется в виду вот это? >http://linux-ntfs.sourceforge.net/ntfs/concepts/links.html И там тоже. Поройся в доках. Вот только как обычно стандартными функциями сделать Symbolic Links увы нельзя :( Но программы сторонних роизводителей позволяют их делать :)

2anonymous (*) (2002-05-16 11:01:02.849)

>о поводу максимального размера партиции так дядя Билли это ни от кого не >скрывает...Если знать максимальный размер кластера и максимальную длину >VCN записи можно получить ответ - 1Tb

-1TB ?!?! Да ну. Бредятина.

>А вот по поводу максимальной длины пути к файлу, то это свойство не >файловой системы а ядра ОС.

Давайте разберемся: В нтфс возможен(РЕАЛИЗОВАН) путь к файлу (имя файла это тоже путь) <65536 символов, то соответственно функции чтения, записи и т.д. ОС должны грамотно выполнятся по отношению к этой ФС. Дык в чем ошибка? - в том что мелкий_софт разработала ФС с path'ом > 255 (так сказать отошла от традиции) или ..... ;)

255 может и нехватить (не забывайте, что в в2к можно монтировать) Прям таки WinLin ;)

С Уважением.

FBX

anonymous
()

2rathamahata (*) (2002-05-15 19:48:44.924)

А ни кто и не спорит что там (в 2.4.18 и до 2.4.11) стояла другая версия нтфс драйвера. Прогресс идет драйвера меняютcя.

2rathamahata (*) (2002-05-15 20:16:00.228)

>может быть имеется в виду вот это? >http://linux-ntfs.sourceforge.net/ntfs/concepts/links.html И там тоже. Поройся в доках. Вот только как обычно стандартными функциями сделать Symbolic Links увы нельзя :( Но программы сторонних роизводителей позволяют их делать :)

2anonymous (*) (2002-05-16 11:01:02.849)

>о поводу максимального размера партиции так дядя Билли это ни от кого не >скрывает...Если знать максимальный размер кластера и максимальную длину >VCN записи можно получить ответ - 1Tb

-1TB ?!?! Да ну. Бредятина.

>А вот по поводу максимальной длины пути к файлу, то это свойство не >файловой системы а ядра ОС.

Давайте разберемся: В нтфс возможен(РЕАЛИЗОВАН) путь к файлу (имя файла это тоже путь) <65536 символов, то соответственно функции чтения, записи и т.д. ОС должны грамотно выполнятся по отношению к этой ФС. Дык в чем ошибка? - в том что мелкий_софт разработала ФС с path'ом > 255 (так сказать отошла от традиции) или ..... ;)

255 может и нехватить (не забывайте, что в в2к можно монтировать) Прям таки WinLin ;)

С Уважением.

FBX

anonymous
()
Ответ на: комментарий от anonymous

2FBX anonymous (*) (2002-05-16 19:06:38.104)

">может быть имеется в виду вот это?
>http://linux-ntfs.sourceforge.net/ntfs/concepts/links.html
И там тоже. Поройся в доках. Вот только как обычно стандартными функциями сделать Symbolic Links увы нельзя :(
Но программы сторонних роизводителей позволяют их делать :)"

Порылся.
Признаю свою ошибку. Действительно есть. Другое дело что это не такие
же symlinks как в unix. reparse points как у них это называется.
которые делятся на 3 категории "mount points, NTFS junctions, and HSM regarded"
"junctions can't be applied to files"
mount points - то же отпадают.
HSM - отпадает, особенно если эта фича реализованна так как описанна на http://www.sysinternals.com/.

Хотя конечно же где 3и там и 4е категории - добавить новый $MAGIC_ID
и обрабатывать его новым хелпером - пожалуй не трудно...

rathamahata
()

Codepage/IOCharset аналог во FreeBSD?

А скажите люди добрые что во FreeБСДе надо mount_ntfs'у сказать чтобы видеть все русские буковки?
И про mount_msdos и про mount_cd9660 аналогично
Спасибо!

anonymous
()

Для FBX:
Здравствуйте, уважаемый!
Мне очень понравились ваши рассуждения про оценку максимального размера NTFS а так же про путь к файлу.
По поводу размера файловой системы - я эту цифру не с потолка взял и не из рекламных проспектов Микрософт а прикинул сам+посмотрел на SGI-ные и VERITAS-овские статейки где сравнивались различные файловые системы. Число 1Тб там тоже фигрурировало. Я не говорю что ты сейчас можешь поставить NT на что-нить с размером в террабайт, наверняка нужны дополнительные заплатки но максимальный размер клястера согласно стандартнам может быть порядка 6 в худшем до 10 в лучшем случае байт. Если 4 байта это 4 Гига то 6 байт это 4*65536... Плюс учти что размер клястера это не один байт и даже не килобайт а десятки килобайт. Конечно какие NTFS покажет результаты на такой партиции это не важно но....
Момент номер два - о пути к файлу...
Я не буду закапываться в то как это в винде реализовано, просто покажу как это сделано в Linuxе(файл linux/fs/open.c)
asmlinkage long sys_open(const char * filename, int flags, int mode)
{
char * tmp;
int fd, error;


#if BITS_PER_LONG != 32
flags |= O_LARGEFILE;
#endif
tmp = getname(filename);
fd = PTR_ERR(tmp);
if (!IS_ERR(tmp)) {
fd = get_unused_fd();
if (fd >= 0) {
struct file *f = filp_open(tmp, flags, mode);
error = PTR_ERR(f);
if (IS_ERR(f))
goto out_error;
fd_install(fd, f);
}
out:
putname(tmp);
}
return fd;

out_error:
put_unused_fd(fd);
fd = error;
goto out;
}

Начало функция getname из linufs/fs/namei.c:
char * getname(const char * filename)
{
char *tmp, *result;

result = ERR_PTR(-ENOMEM);
tmp = __getname();

__getname определяется через дефайн в linux/include/linux.fs.h
#define __getname() kmem_cache_alloc(names_cachep, SLAB_KERNEL)
#define putname(name) kmem_cache_free(names_cachep, (void *)(name))

Если хочешь могу ещё привести куски кода из slab-аллокатора
Или можешь сделать cat /proc/slabinfo и убедиться что размер элементов из names_cachep
равен размеру страницы то-есть 4096 Таким образом из юзер-спейса не может быть скопирован путь длинее чем 4Кб
Так что максимальный размер пути - свойство ОС а не конкретной FS
А максимальный размер имени - это другое дело.
К тому же я и не думал утверждать что максимальный размер пути в Win2K равен 256 байт
А по поводу максимальной длинны имени файла в WinNT то если ты посмотришь в stdio.h то там MAX_FNAME 260. К слову максимальная длинна имени, так как всего навсего является аттрибутом записи файл в MFT не может превышать 1килобайт. Откуда была взята цифра в 65536 байт - не понимаю
С уважением,
Никита

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.