Символическая ссылка деактивирована путем переименования исходного связанного файла

crontab -e открывает файл в / tmp вместо фактического crontab, чтобы он мог проверить ваш новый crontab на наличие ошибок и предотвратить перезапись вашего фактического crontab этими ошибками. Если ошибок нет, ваш реальный crontab будет обновлен. Если crontab -e просто написал прямо в ваш реальный crontab, то вы рискуете, что все ваши cronjobs не будут запущены из-за синтаксической ошибки в вашем новом crontab.

sudoedit , visudo , vipw и т. Д. Работают по тому же принципу.

Не волнуйтесь, ваш реальный crontab находится в энергонезависимой области на диске.

0
14.03.2018, 04:57
2 ответа

Мягкая ссылка, также известная как символическая ссылка , отслеживает файл по его имени, а не по индексному узлу. Из-за этого файл, на который вы ссылаетесь, может находиться где угодно, а не только в той же файловой системе (, в отличие от жестких ссылок ); еще одна особенность заключается в том, что программные ссылки могут указывать на другие программные ссылки, но не более. Мягкая ссылка — это, по сути, специальный файл, внутри которого хранится целевой путь, но Linux знает об этом типе файла, считывает «внутренний» путь и вместо этого пытается получить доступ к этому файлу, используя разрешения для целевого файла. Программы могут попросить Linux не переходить по ссылке, а вместо этого дать информацию о самом файле (, так lsможет показать вам целевой путь ); однако большинству программ важно только то, куда указывает ссылка.

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

4
28.01.2020, 02:18

Программные ссылки связаны только с именем файла, а не с номером инода. Если исходный файл переименовывается, программная ссылка не работает, и ссылка теперь не знает, куда она указывает. Выкладывая эту картинку из одного из ответов (, который я не помню, я давно сохранил эту картинку в своем телефоне):enter image description here

Если исходный файл переименован, my-soft-linkбудет указывать на имя файла, которого больше не существует, и, следовательно, станет красным, поскольку ссылка или указатель будут повреждены. В таком случае my-soft-linkбудет подобен оборванному указателю. Он указывает на несуществующий файл.

С другой стороны, с жесткими ссылками такой проблемы не возникает, поскольку жесткие ссылки указывают непосредственно на номер инода. Таким образом, если исходный файл будет переименован, my-hard-linkне станет оборванным указателем.

Таким образом, чтобы повторно активировать вашу символическую ссылку, вы можете обновить символическую ссылку, указав на переименованный файл.

ln -sfn test3 test2
0
28.01.2020, 02:18

Теги

Похожие вопросы