Жесткие ссылки
Модератор: Модераторы разделов
-
sl0
- Сообщения: 33
- ОС: OpenSuSe 11
Жесткие ссылки
Давно меня мучает вопрос по сабжу. Что это такое я понимаю, а для чего оно надо -нет. Хотелось бы увидеть конкретные примеры использования и объяснений, чем это удобнее, чем обычное копирование.
Нас невозможно сбить с пути. Нам пофигу куда идти.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: Жесткие ссылки
cделай ls -a и увидишь как минимум две жесткие ссылки
тем что это не копирование - а возможность видеть(и редактировать) один и тот же файл в разных местах. применяется действительно нечасто.
-
sl0
- Сообщения: 33
- ОС: OpenSuSe 11
Re: Жесткие ссылки
Так, а что мешает (если надо редактировать файл) сделать мягкую ссылку на него? Зачем место зря тратить?
Нас невозможно сбить с пути. Нам пофигу куда идти.
-
Red Gremlin
- Сообщения: 512
- Статус: самоучка
- ОС: Rosa 2016 Fresh
Re: Жесткие ссылки
Уж 200 раз твердили Сене:
Хардлинк спасет от удаленья!
А кто создать его поможет?
Crontab и man, тупая рожа!
© no-dashi
"В мире есть случайность, есть предопределенность и есть то, что ты планируешь совершить."
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: Жесткие ссылки
если подходить с точки зрения места то на хардлинк его тратится меньше
-
/dev/random
- Администратор
- Сообщения: 5426
- ОС: Gentoo
Re: Жесткие ссылки
Место не тратится.
Объясняю в _сильно_ упрощённом виде.
Файлы в линуксовых ФС на самом деле не имеют имён - только номера. Каталоги - это файлы, содержащие таблицу: имя - номер, имя - номер, ...
(кстати, исходя из этого получается, что термин "каталог" гораздо точнее термина "папка")
Один и тот же файл может упоминаться в нескольких каталогах, или даже под разными именами в одном каталоге.
Эти упоминания принято называть хардлинками, в некоторых источниках - всегда, в некоторых - если их больше одного.
Удаление файла - это на самом деле удаление хардлинка. Сам файл удаляется с диска сразу, как только оказывается, что он не упоминается ни в одном каталоге, и при этом не открыт ни одной программой. Этот факт часто используют для защиты файла от случайного удаления - на него создают дополнительный хардлинк где-нибудь в укромном месте.
Хардлинки возможны только на файлы, расположенные в том же разделе, что и каталог, в котором вы пытаетесь их создать.
-
rm_
- Сообщения: 3340
- Статус: It's the GNU Age
- ОС: Debian
Re: Жесткие ссылки
Если не ошибаюсь, одно из реальных применений - дать программе, работающей в chroot'е, читать и/или исправлять файл, находящийся вне этого chroot'а. Для каталогов жёсткие ссылки не создаются, если нужно дать целый каталог - можно воспользоваться mount --bind.
-
Voice
- Сообщения: 1073
- Статус: столлманист
- ОС: Debian GNU/Linux
Re: Жесткие ссылки
Давно в голове крутится следующая идея.
Имеем раздел с музыкой, все красиво разложено по каталогам и имеет формат:
artist/album/track
Так вот, часто бывает у команды А сплит с командой В, вот тут и использование хардлинка красиво подходит.
Имеем раздел с музыкой, все красиво разложено по каталогам и имеет формат:
artist/album/track
Так вот, часто бывает у команды А сплит с командой В, вот тут и использование хардлинка красиво подходит.
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
М. В. Ломоносов
-
MiK13
- Сообщения: 1280
- ОС: Linux Debian
Re: Жесткие ссылки
Именно. Можно всю музыку разбить по исполнителям, а можно и по композиторам. Можно и по жанрам. А также по годам. А сами файлы будут в одном экземпляре. И не надо никаких дополнительных программ для организации поиска.
Тоже самое можно сделать и для фотоархива: группа каталогов с именами кто снят, группа -- где снято, группа -- когда снято.
В общем много для чего можно придумать.
Когда-то давно я ещё на дискете сделал группу жёстких ссылок -- на одной дискете 1.2 МБ разместил дистрибутив с 4-х дискет по 360 кБ (какая-то СУБД была, по-моему, FoxBase, но не уверен). Можно всю СУБД ставить с одной дискеты, а можно из отдельных каталогов скопитьвать на разные дискеты для "стандартной" установки.
Жаль, что ни DOS, ни Windows не поддерживают работу с жёсткими ссылками на FAT -- нормально можно только читать файлы.
-
sl0
- Сообщения: 33
- ОС: OpenSuSe 11
-
Bluetooth
- Сообщения: 4395
- Статус: Блюзовый
- ОС: Debian Squeeze amd64
Re: Жесткие ссылки
MiK13 писал(а): ↑24.10.2008 14:02
Именно. Можно всю музыку разбить по исполнителям, а можно и по композиторам. Можно и по жанрам. А также по годам. А сами файлы будут в одном экземпляре. И не надо никаких дополнительных программ для организации поиска.
Тоже самое можно сделать и для фотоархива: группа каталогов с именами кто снят, группа -- где снято, группа -- когда снято.
В общем много для чего можно придумать.
Когда-то давно я ещё на дискете сделал группу жёстких ссылок -- на одной дискете 1.2 МБ разместил дистрибутив с 4-х дискет по 360 кБ (какая-то СУБД была, по-моему, FoxBase, но не уверен). Можно всю СУБД ставить с одной дискеты, а можно из отдельных каталогов скопитьвать на разные дискеты для "стандартной" установки.
Жаль, что ни DOS, ни Windows не поддерживают работу с жёсткими ссылками на FAT -- нормально можно только читать файлы.
честно говоря для музыки я бы предпочел бы вариант безо всяких ссылок, ведь есть довольно полные теги, по которым можно сортировать в любом порядке, есть плееры со встроенной базой данных, с удобным поиском, и тд.
другое дело - фотоархив, идея выглядит здраво
-
minoru-kun
- Сообщения: 621
- ОС: Debian GNU/Linux
Re: Жесткие ссылки
/dev/random писал(а): ↑22.10.2008 12:47
Место не тратится.
Объясняю в _сильно_ упрощённом виде.
<...>
Прекрасно.
-
.Serj.
- Сообщения: 127
- ОС: Gentoo, Win7
Re: Жесткие ссылки
Bluetooth
Для фотоархивов это тоже не обязательно, т.к. есть exif и каталогизаторы, которые могут работать с ним.
Для фотоархивов это тоже не обязательно, т.к. есть exif и каталогизаторы, которые могут работать с ним.
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Жесткие ссылки
Для любых файлов с метаинформацией я бы предпочел вариант с виртуальной ФС, чтоб кинул файлы в общую помойку, а в виртуальной ФС они бы отобразились сразу в нескольких каталогах, вроде artist/album, tag/album и т.п.
Ибо делать мне нефиг, кроме как ссылки по каталогам раскладывать и ходить по граблям при резервном копировании.
Мои розовые очки
-
MiK13
- Сообщения: 1280
- ОС: Linux Debian
Re: Жесткие ссылки
А кто и как будет заполнять exif? Фотоаппарат, ведь, в нём прописывает только время и параметры съёмки. А кто снят, где, в каких условиях -- это надо руками,
А каталогизаторы -- хорошая вещь, но это -- дополнительные программы, которые надо изучать.
Но вопрос был о том, что такое жёсткие ссылки и для чего они нужны. Я привёл один из вариантов их использования. А использовать его или специальную программу каталогизации -- это дело вкуса.
По поводу виртуальной ФС. Может быть и неплохо. Но разброс по каталогам с созданием жёстких ссылок как раз и предполагает наличие общей помойки (наважно, с каталогами или без). А уже "рассовывать" ссылки по разным каталогам можно как руками, так и с помощью какой-нибудь специальной программы. и, соответственно, таблицы, в которой будет хранится список этих ссылок, по которым можно легко восстановить всю их структуру.
-
Maximus_V
- Сообщения: 432
- ОС: Gentoo, FreeBSD
Re: Жесткие ссылки
Прочитав топик, нашел применение жестким ссылкам для себя: в сети DC++ местного провайдера некоторые участники, чтобы с них качать, требуют расшарить более 100 Гб. А где их взять, если у меня винт всего на 40? Сотня хардлинков на один и тот же файл меня спасли
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
-
Maximus_V
- Сообщения: 432
- ОС: Gentoo, FreeBSD
Re: Жесткие ссылки
watashiwa_daredeska писал(а): ↑01.11.2008 15:00Можно расшарить петабайтный файл нулей, без всяких ссылок
А можно поподробнее, как такой мнимый файл создать? А то идея со ссылками провалилась: DC++-клиент прохэшировал файлы и понял, что это один и тот же файл: хэш-то одинаковый... на момент написания того сообщения я еще не знал, что так выйдет.
-
/dev/random
- Администратор
- Сообщения: 5426
- ОС: Gentoo
Re: Жесткие ссылки
dd if=/dev/zero of=temp.tmp bs=1 count=1 seek=$((200*1024*1024*1024-1))
будет ровно 200 GB. А реально на диске займёт несколько килобайт.
Спасибо сказали:
-
Portnov
- Модератор
- Сообщения: 1786
- Статус: Матёрый линуксоид
- ОС: Debian testing/unstable
Re: Жесткие ссылки
/dev/random
dd умеет считать сам. Т.е. вашу команду можно сократить до
dd if=/dev/zero of=temp.tmp bs=1 count=1 seek=200G
dd умеет считать сам. Т.е. вашу команду можно сократить до
dd if=/dev/zero of=temp.tmp bs=1 count=1 seek=200G
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Спасибо сказали:
-
/dev/random
- Администратор
- Сообщения: 5426
- ОС: Gentoo