Жесткие ссылки

Любые разговоры которые хоть как-то связаны с тематикой форума

Модератор: Модераторы разделов

sl0
Сообщения: 33
ОС: OpenSuSe 11

Жесткие ссылки

Сообщение sl0 »

Давно меня мучает вопрос по сабжу. Что это такое я понимаю, а для чего оно надо -нет. Хотелось бы увидеть конкретные примеры использования и объяснений, чем это удобнее, чем обычное копирование.
Нас невозможно сбить с пути. Нам пофигу куда идти.
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Жесткие ссылки

Сообщение diesel »

sl0 писал(а):
22.10.2008 12:12
Хотелось бы увидеть конкретные примеры использования

cделай ls -a и увидишь как минимум две жесткие ссылки :)

sl0 писал(а):
22.10.2008 12:12
и объяснений, чем это удобнее, чем обычное копирование.

тем что это не копирование - а возможность видеть(и редактировать) один и тот же файл в разных местах. применяется действительно нечасто.
Спасибо сказали:
sl0
Сообщения: 33
ОС: OpenSuSe 11

Re: Жесткие ссылки

Сообщение sl0 »

Так, а что мешает (если надо редактировать файл) сделать мягкую ссылку на него? Зачем место зря тратить?
Нас невозможно сбить с пути. Нам пофигу куда идти.
Спасибо сказали:
Аватара пользователя
Red Gremlin
Сообщения: 512
Статус: самоучка
ОС: Rosa 2016 Fresh

Re: Жесткие ссылки

Сообщение Red Gremlin »

sl0 писал(а):
22.10.2008 12:12
Что это такое я понимаю, а для чего оно надо -нет.

Уж 200 раз твердили Сене:
Хардлинк спасет от удаленья!
А кто создать его поможет?
Crontab и man, тупая рожа!
© no-dashi
"В мире есть случайность, есть предопределенность и есть то, что ты планируешь совершить."
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Жесткие ссылки

Сообщение diesel »

sl0 писал(а):
22.10.2008 12:30
Так, а что мешает (если надо редактировать файл) сделать мягкую ссылку на него? Зачем место зря тратить?

если подходить с точки зрения места то на хардлинк его тратится меньше :) хардлинк - это еще одно имя для одного и того же файла, симлинк - это файл который содержит имя файла на который он указывает - симлинками в обычной жизни пользоваться удобнее - ими чаще и пользуются.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5426
ОС: Gentoo

Re: Жесткие ссылки

Сообщение /dev/random »

sl0 писал(а):
22.10.2008 12:30
Так, а что мешает (если надо редактировать файл) сделать мягкую ссылку на него? Зачем место зря тратить?

Место не тратится.

Объясняю в _сильно_ упрощённом виде.
Файлы в линуксовых ФС на самом деле не имеют имён - только номера. Каталоги - это файлы, содержащие таблицу: имя - номер, имя - номер, ...
(кстати, исходя из этого получается, что термин "каталог" гораздо точнее термина "папка")
Один и тот же файл может упоминаться в нескольких каталогах, или даже под разными именами в одном каталоге.
Эти упоминания принято называть хардлинками, в некоторых источниках - всегда, в некоторых - если их больше одного.
Удаление файла - это на самом деле удаление хардлинка. Сам файл удаляется с диска сразу, как только оказывается, что он не упоминается ни в одном каталоге, и при этом не открыт ни одной программой. Этот факт часто используют для защиты файла от случайного удаления - на него создают дополнительный хардлинк где-нибудь в укромном месте.
Хардлинки возможны только на файлы, расположенные в том же разделе, что и каталог, в котором вы пытаетесь их создать.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Жесткие ссылки

Сообщение rm_ »

Если не ошибаюсь, одно из реальных применений - дать программе, работающей в chroot'е, читать и/или исправлять файл, находящийся вне этого chroot'а. Для каталогов жёсткие ссылки не создаются, если нужно дать целый каталог - можно воспользоваться mount --bind.
Спасибо сказали:
Аватара пользователя
Voice
Сообщения: 1073
Статус: столлманист
ОС: Debian GNU/Linux

Re: Жесткие ссылки

Сообщение Voice »

Давно в голове крутится следующая идея.
Имеем раздел с музыкой, все красиво разложено по каталогам и имеет формат:
artist/album/track
Так вот, часто бывает у команды А сплит с командой В, вот тут и использование хардлинка красиво подходит. :)
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
Спасибо сказали:
MiK13
Сообщения: 1280
ОС: Linux Debian

Re: Жесткие ссылки

Сообщение MiK13 »

Voice писал(а):
22.10.2008 13:57
Давно в голове крутится следующая идея.
Имеем раздел с музыкой, все красиво разложено по каталогам и имеет формат:
artist/album/track
Так вот, часто бывает у команды А сплит с командой В, вот тут и использование хардлинка красиво подходит. :)

Именно. Можно всю музыку разбить по исполнителям, а можно и по композиторам. Можно и по жанрам. А также по годам. А сами файлы будут в одном экземпляре. И не надо никаких дополнительных программ для организации поиска.
Тоже самое можно сделать и для фотоархива: группа каталогов с именами кто снят, группа -- где снято, группа -- когда снято.
В общем много для чего можно придумать.

Когда-то давно я ещё на дискете сделал группу жёстких ссылок -- на одной дискете 1.2 МБ разместил дистрибутив с 4-х дискет по 360 кБ (какая-то СУБД была, по-моему, FoxBase, но не уверен). Можно всю СУБД ставить с одной дискеты, а можно из отдельных каталогов скопитьвать на разные дискеты для "стандартной" установки.
Жаль, что ни DOS, ни Windows не поддерживают работу с жёсткими ссылками на FAT -- нормально можно только читать файлы.
Спасибо сказали:
sl0
Сообщения: 33
ОС: OpenSuSe 11

Re: Жесткие ссылки

Сообщение sl0 »

Voice, MiK13
Спасибо!
Нас невозможно сбить с пути. Нам пофигу куда идти.
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Жесткие ссылки

Сообщение Bluetooth »

MiK13 писал(а):
24.10.2008 14:02
Voice писал(а):
22.10.2008 13:57
Давно в голове крутится следующая идея.
Имеем раздел с музыкой, все красиво разложено по каталогам и имеет формат:
artist/album/track
Так вот, часто бывает у команды А сплит с командой В, вот тут и использование хардлинка красиво подходит. :)

Именно. Можно всю музыку разбить по исполнителям, а можно и по композиторам. Можно и по жанрам. А также по годам. А сами файлы будут в одном экземпляре. И не надо никаких дополнительных программ для организации поиска.
Тоже самое можно сделать и для фотоархива: группа каталогов с именами кто снят, группа -- где снято, группа -- когда снято.
В общем много для чего можно придумать.

Когда-то давно я ещё на дискете сделал группу жёстких ссылок -- на одной дискете 1.2 МБ разместил дистрибутив с 4-х дискет по 360 кБ (какая-то СУБД была, по-моему, FoxBase, но не уверен). Можно всю СУБД ставить с одной дискеты, а можно из отдельных каталогов скопитьвать на разные дискеты для "стандартной" установки.
Жаль, что ни DOS, ни Windows не поддерживают работу с жёсткими ссылками на FAT -- нормально можно только читать файлы.

честно говоря для музыки я бы предпочел бы вариант безо всяких ссылок, ведь есть довольно полные теги, по которым можно сортировать в любом порядке, есть плееры со встроенной базой данных, с удобным поиском, и тд.

другое дело - фотоархив, идея выглядит здраво :)
Спасибо сказали:
Аватара пользователя
minoru-kun
Сообщения: 621
ОС: Debian GNU/Linux

Re: Жесткие ссылки

Сообщение minoru-kun »

/dev/random писал(а):
22.10.2008 12:47
sl0 писал(а):
22.10.2008 12:30
Так, а что мешает (если надо редактировать файл) сделать мягкую ссылку на него? Зачем место зря тратить?

Место не тратится.

Объясняю в _сильно_ упрощённом виде.
<...>

Прекрасно. :)
Спасибо сказали:
Аватара пользователя
.Serj.
Сообщения: 127
ОС: Gentoo, Win7

Re: Жесткие ссылки

Сообщение .Serj. »

Bluetooth
Для фотоархивов это тоже не обязательно, т.к. есть exif и каталогизаторы, которые могут работать с ним.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Жесткие ссылки

Сообщение watashiwa_daredeska »

Bluetooth писал(а):
26.10.2008 15:13
другое дело - фотоархив, идея выглядит здраво :)

Для любых файлов с метаинформацией я бы предпочел вариант с виртуальной ФС, чтоб кинул файлы в общую помойку, а в виртуальной ФС они бы отобразились сразу в нескольких каталогах, вроде artist/album, tag/album и т.п.
Ибо делать мне нефиг, кроме как ссылки по каталогам раскладывать и ходить по граблям при резервном копировании. :)
Спасибо сказали:
MiK13
Сообщения: 1280
ОС: Linux Debian

Re: Жесткие ссылки

Сообщение MiK13 »

.Serj. писал(а):
27.10.2008 08:23
Для фотоархивов это тоже не обязательно, т.к. есть exif и каталогизаторы, которые могут работать с ним.

А кто и как будет заполнять exif? Фотоаппарат, ведь, в нём прописывает только время и параметры съёмки. А кто снят, где, в каких условиях -- это надо руками,
А каталогизаторы -- хорошая вещь, но это -- дополнительные программы, которые надо изучать.

Но вопрос был о том, что такое жёсткие ссылки и для чего они нужны. Я привёл один из вариантов их использования. А использовать его или специальную программу каталогизации -- это дело вкуса.

По поводу виртуальной ФС. Может быть и неплохо. Но разброс по каталогам с созданием жёстких ссылок как раз и предполагает наличие общей помойки (наважно, с каталогами или без). А уже "рассовывать" ссылки по разным каталогам можно как руками, так и с помощью какой-нибудь специальной программы. и, соответственно, таблицы, в которой будет хранится список этих ссылок, по которым можно легко восстановить всю их структуру.
Спасибо сказали:
Аватара пользователя
Maximus_V
Сообщения: 432
ОС: Gentoo, FreeBSD

Re: Жесткие ссылки

Сообщение Maximus_V »

Прочитав топик, нашел применение жестким ссылкам для себя: в сети DC++ местного провайдера некоторые участники, чтобы с них качать, требуют расшарить более 100 Гб. А где их взять, если у меня винт всего на 40? Сотня хардлинков на один и тот же файл меня спасли
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Жесткие ссылки

Сообщение watashiwa_daredeska »

Maximus_V писал(а):
01.11.2008 13:46
Прочитав топик, нашел применение жестким ссылкам для себя: в сети DC++ местного провайдера некоторые участники, чтобы с них качать, требуют расшарить более 100 Гб. А где их взять, если у меня винт всего на 40? Сотня хардлинков на один и тот же файл меня спасли
Можно расшарить петабайтный файл нулей, без всяких ссылок :)
Спасибо сказали:
Аватара пользователя
Maximus_V
Сообщения: 432
ОС: Gentoo, FreeBSD

Re: Жесткие ссылки

Сообщение Maximus_V »

watashiwa_daredeska писал(а):
01.11.2008 15:00
Maximus_V писал(а):
01.11.2008 13:46
Прочитав топик, нашел применение жестким ссылкам для себя: в сети DC++ местного провайдера некоторые участники, чтобы с них качать, требуют расшарить более 100 Гб. А где их взять, если у меня винт всего на 40? Сотня хардлинков на один и тот же файл меня спасли
Можно расшарить петабайтный файл нулей, без всяких ссылок :)

А можно поподробнее, как такой мнимый файл создать? А то идея со ссылками провалилась: DC++-клиент прохэшировал файлы и понял, что это один и тот же файл: хэш-то одинаковый... на момент написания того сообщения я еще не знал, что так выйдет.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5426
ОС: Gentoo

Re: Жесткие ссылки

Сообщение /dev/random »

Maximus_V писал(а):
01.11.2008 17:54
А можно поподробнее, как такой мнимый файл создать? А то идея со ссылками провалилась: DC++-клиент прохэшировал файлы и понял, что это один и тот же файл: хэш-то одинаковый... на момент написания того сообщения я еще не знал, что так выйдет.

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: Жесткие ссылки

Сообщение Portnov »

/dev/random
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
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5426
ОС: Gentoo

Re: Жесткие ссылки

Сообщение /dev/random »

Portnov писал(а):
02.11.2008 13:24
/dev/random
dd умеет считать сам. Т.е. вашу команду можно сократить до
dd if=/dev/zero of=temp.tmp bs=1 count=1 seek=200G

Спасибо.
Спасибо сказали: