Author | Message |
---|
НуПогоди Член клуба The eBook
Joined: 11 Oct 2011 Posts: 388
Location: Jena
| Posted: 04.12.2014 22:02 | |
| ovn wrote: | Папок физически нет, но коллекции воспринимаются пользователем как папки. Проблем нет, есть нюансы, которые можно использовать на пользу. К примеру, один файл в нескольких папках (коллекциях) - может кому-то и пригодится. |
Есть в линуксе (и не только) такая штука -- symbolic link
Code: | ln -s target_path link_path |
Места в отличие от копии файла не занимает, а CoolReader (да и весь остальной linux-софт) открывает по ней исходный файл. Если разбросать симлинки по разным папкам, можно легко поиметь полный аналог этой "фичи" коллекций (и даже без ограничений по вложенности - хоть 5 уровней, хоть 50) _________________ Rooted: Kindle 3.0.3, Tolino Shine 1.1.1, THL T7 |
| | | Ben Gunn Член клуба The eBook
Joined: 28 Nov 2008 Posts: 5089
Location: Москва
| Posted: 04.12.2014 22:25 | |
| НуПогоди wrote: | Есть в линуксе (и не только) такая штука -- symbolic link
Code: | ln -s target_path link_path |
|
Только в данном случае нужен не soft, а hard link. |
| | | НуПогоди Член клуба The eBook
Joined: 11 Oct 2011 Posts: 388
Location: Jena
| Posted: 04.12.2014 23:03 | |
| Зачем? места слишком много? ну, как пожелаете
Code: | so@so-Lenovo-G700:~/Downloads/books/to library/tmp > ln -s test.fb2.zip symlink so@so-Lenovo-G700:~/Downloads/books/to library/tmp > ln -P test.fb2.zip hardlink so@so-Lenovo-G700:~/Downloads/books/to library/tmp > ls -l total 544 -rw-r--r-- 2 so so 275029 Nov 17 2011 hardlink lrwxrwxrwx 1 so so 12 Dez 4 20:16 symlink -> test.fb2.zip -rw-r--r-- 2 so so 275029 Nov 17 2011 test.fb2.zip
|
_________________ Rooted: Kindle 3.0.3, Tolino Shine 1.1.1, THL T7 |
| | | Ben Gunn Член клуба The eBook
Joined: 28 Nov 2008 Posts: 5089
Location: Москва
| Posted: 05.12.2014 12:19 | |
| НуПогоди wrote: | Зачем? места слишком много? |
Странный вопрос, если вы представляете разницу между soft и hard линками... |
| | | НуПогоди Член клуба The eBook
Joined: 11 Oct 2011 Posts: 388
Location: Jena
| Posted: 05.12.2014 13:37 | |
| Если этот вопрос показался странным, задам другой: вы знаете, как оценить размер хардлинка? я до сих пор исходил из того, что он занимает столько же, сколько пустая папка, т.е. 4096. А symbolic link занимает куда меньше -- в нем по существу прописан путь к исходному файлу ПС общую разницу (при операциях над исходником - удалении, перемещении и тд) я представляю _________________ Rooted: Kindle 3.0.3, Tolino Shine 1.1.1, THL T7 |
| | | Ben Gunn Член клуба The eBook
Joined: 28 Nov 2008 Posts: 5089
Location: Москва
| Posted: 05.12.2014 13:56 | |
| НуПогоди wrote: | Если этот вопрос показался странным, задам другой: вы знаете, как оценить размер хардлинка? я до сих пор исходил из того, что он занимает столько же, сколько пустая папка, т.е. 4096. А symbolic link занимает куда меньше -- в нем по существу прописан путь к исходному файлу ПС общую разницу (при операциях над исходником - удалении, перемещении и тд) я представляю |
В файле-каталоге (directory) в UNIX файлы адресуются ссылками на номера i-node. Если в разных каталогах файлы ссылаются на одни и те же i-node, это хард линк. Если имя файла ссылается на путь, это софт. В этом смысле размерами что тех, что других можно пренебречь. Существенная разница в том, что для хард линков все имена одного файла (в разных каталогах) равноправны. Поэтому, если у вас на файловой системе имитируется каталогизация типа тэгов (один файл имеет имена в разных папках), вы можете спокойно удалять лишние имена (тэги) и файл не пропадет, пока вы не удалите его последнее имя. Это в случае хард линков. В софт линках у вас есть 'primary name', поэтому имена файла неравноправны. Если вы грохнете оригинал, пропадут все другие имена. |
| | | НуПогоди Член клуба The eBook
Joined: 11 Oct 2011 Posts: 388
Location: Jena
| Posted: 05.12.2014 14:20 | |
| Quote: | В файле-каталоге (directory) в UNIX файлы адресуются ссылками на номера i-node. Если в разных каталогах файлы ссылаются на одни и те же i-node, это хард линк. Если имя файла ссылается на путь, это софт. В этом смысле размерами что тех, что других можно пренебречь. Существенная разница в том, что для хард линков все имена одного файла (в разных каталогах) равноправны. Поэтому, если у вас на файловой системе имитируется каталогизация типа тэгов (один файл имеет имена в разных папках), вы можете спокойно удалять лишние имена (тэги) и файл не пропадет, пока вы не удалите его последнее имя. Это в случае хард линков. В софт линках у вас есть 'primary name', поэтому имена файла неравноправны. Если вы грохнете оригинал, пропадут все другие имена. | Функциональную разницу между типами линков и что с ними происходит в случае удаления исходника, как уже писал, я представляю. Я спрашивал о конкретном размере хардлинков, отличается ли он от размера пустой папки -- и общие слова меня пока не убедили, что их физический размер сравним с софтлинками. Да, размеры symbolic и hard линков не сопоставимы с размером исходного файла, и тем не менее... если путь к исходнику достаточно короткий вроде test.fb2.zip, соотношение, насколько я вижу, может достигать нескольких сотен (в конкретном примере 4096 : 12). _________________ Rooted: Kindle 3.0.3, Tolino Shine 1.1.1, THL T7 |
| | | Ben Gunn Член клуба The eBook
Joined: 28 Nov 2008 Posts: 5089
Location: Москва
| Posted: 05.12.2014 14:51 | |
| НуПогоди wrote: | Я спрашивал о конкретном размере хардлинков, отличается ли он от размера пустой папки -- и общие слова меня пока не убедили, что их физический размер сравним с софтлинками. |
Вообще-то, размер хард линка никакого отношения к размерам пустых "папок" не имеет. Да и вообще никакого отношения к папкам. Это просто запись в файле каталога. В отличие от софт линка, который есть объект файловой системы со своим размером. Т.о., размер хард линка всегда меньше размера софт линка. Чаще всего, его просто нет. |
| | |
| You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
© Libroom, 2021
|