Искате ли да научите повече за изтриването на неработещи символни връзки във вашата система? Може би някой ви е казал как мъртвите символични връзки заемат място на вашето устройство за съхранение и сега искате да се отървете от тях окончателно.
За щастие има няколко помощни програми, които можете да изтеглите на вашия компютър с Linux, за да управлявате символни връзки. Тези инструменти също ще ви помогнат да намерите неработещи меки връзки и да ги коригирате за постоянно.
Тук ще обсъдим как можете да докладвате и коригирате неработещи символични връзки във вашата система с помощта символни връзки и намирам команда.
Като цяло, всяка компютърна система има два вида връзки, меки връзки и твърди връзки. Твърдите връзки са записи в директорията, които свързват конкретно име с файл, наличен във вашата система. Това са оригиналните файлове, които се съхраняват на определен адрес във вашето хранилище.
От друга страна, меките връзки са текстови низове, които свързват две директории или файлове помежду си. Преки пътища към програмата са чудесен пример за символни връзки. Да предположим, че файл A има символна връзка с файл B. Това означава, че файл А ще съхранява абсолютния или относителния път към файл Б.
Свързани: Как да създадете Symlink в Linux
Преки пътища към файлове са полезни, но символните връзки (символни връзки) могат да променят начина, по който използвате файлове и папки в Linux, macOS и Windows.
За да създадете символна връзка:
- Стартирайте терминала, като натиснете Ctrl + Alt + т на клавиатурата.
- Създайте нов текстов файл с име text.txt.
докоснете text.txt
- Свържете друг текстов файл (друга.txt) с току-що създадения файл (text.txt).
ln -s text.txt another.txt
Току-що сте свързали два различни текстови файла заедно чрез символична връзка. The ln command е начинът по подразбиране за създаване на символни връзки в Linux-базирана операционна система. The -с в гореспоменатата команда означава символни връзки.
Свързани: Как да използвам командата ls в Linux
Основният проблем със символните връзки е, че ако изтриете или преместите целевия файл, символната връзка не се премахва автоматично. Вместо това връзката сега сочи към файл, който дори не присъства във вашата система. Такива връзки са известни като висящи, счупени, осиротели или мъртви връзки.
Първо, трябва да потвърдите, че в системата съществува символна връзка. Можете лесно да направите това, като използвате ll и grep команда.
ll | grep txt
Горната команда ще изброи всички символни връзки, свързани с текстови файлове в текущата ви работна директория.
Сега, ако трябва да прекъснем символната връзка, която сме създали по-горе, като изтрием родителския текстов файл (text.txt):
rm text.txt
Символната връзка ще се счупи и не се премахва от вашата система. Можете да потвърдите това, като напишете ll | grep txt команда отново във вашия терминал.
Въпреки че няколко счупени символни връзки няма да навредят на вашия компютър, това постепенно може да стане хиляда за нула време. Ето защо е необходимо да наблюдавате висящи връзки във вашата система.
Единственият начин да коригирате тези счупени символни връзки е като ги изтриете. Вашата система съдържа стотици висящи връзки и никой няма време да провери за тези връзки ръчно. В такива случаи инструментите и командите на Linux се оказват наистина полезни.
Symlinks е мощна помощна програма, която ви предоставя всички инструменти, необходими за управление и коригиране на счупени символни връзки във вашата система. Тъй като по подразбиране не е инсталиран на повечето дистрибуции на Linux, ще трябва да го инсталирате ръчно.
Можете да използвате Pacman за инсталирайте пакета на Arch Linux:
sudo pacman -S символни връзки
На Fedora:
sudo dnf инсталирайте символни връзки
На CentOS:
sudo yum инсталирайте символни връзки
На дистрибуции, базирани на Debian:
sudo apt-get инсталирайте символни връзки
Ако използвате Ubuntu, преди да инсталирате пакета за символни връзки, ще трябва да добавите хранилището на вселената към списъка с хранилища на вашата система.
sudo add-apt-repository universe
След като успешно сте инсталирали символни връзки, трябва да проверите за осиротели връзки във вашата система. За да направите това, въведете:
символни връзки.
The . (точка) знак се отнася до текущата работна директория. Ако искате да съобщите за прекъснати символни връзки във вашия /home директория, можете да го направите, като въведете:
символни връзки / начало
Ако във вашата система има прекъсната връзка, ще получите изход, който изглежда по следния начин.
висящи: /home/sharmadeepesh/another.txt -> test.txt
За да изтриете бързо съобщената символна връзка, можете да използвате -д флаг с командата по подразбиране.
символни връзки -d.
За да изтриете висящи символни връзки в /home директория, въведете:
символни връзки -d / home
Този път изходът не само ще посочи счупената връзка, но и ще докладва, че връзката вече е изтрита.
висящи: /home/sharmadeepesh/another.txt -> test.txt
изтрито: /home/sharmadeepesh/another.txt -> test.txt
За да съобщавате и изтривате неработещи символни връзки в дадена директория рекурсивно, използвайте -dr флаг с командата по подразбиране, където д означава изтриване и r означава рекурсивно.
символни връзки -dr.
Използване на командата Find
The намирам команда идва предварително инсталирана на всяка система Linux. Както подсказва името, можете търсене на папки и файлове използвайки тази команда. The намирам команда ви позволява лесно да съобщавате и изтривате мъртви меки връзки във вашата система.
За да изброите неработещите символни връзки в текущата работна директория, въведете:
намирам. -текст l
За да намерите неработещи връзки, присъстващи във всяка друга директория на вашата система, просто заменете. (точка) символ с пътя на директорията. Следващата команда ще търси счупени връзки в /home директория.
find / home -xtype l
Можете също така да изброите неработещите символни връзки, които не се използват от вашата система.
намирам. -текст l! -exec тест -e {} \; -печат
За да проверите къде сочат тези счупени връзки, използвайте:
намирам. -xtype l -exec ls -l {} \ +
В зависимост от количеството прекъснати символни връзки във вашата система, ще получите изход, който изглежда нещо подобно.
lrwxrwxrwx 1 корен на корен 19 февруари 21 11:53 /home/sharmadeepesh/another.txt -> /home/sharmadeepesh/text.txt
Освен това можете да изтриете счупени символични връзки наведнъж със следната команда.
sudo find. -xtype l -delete
Има и алтернативен начин за изтриване на мъртви връзки:
sudo find. -текст l! -exec тест -e {} \; -Изтрий
Символните връзки са важни за Linux система, тъй като улесняват процеса на разрешаване и управление на пътя на вашия компютър. Но ако не се погрижите, счупените символични връзки могат да заемат огромен дял от системното ви съхранение и дори няма да знаете за това. В такива ситуации комунални услуги като символни връзки и намирам влезте в игра.
Ако сте начинаещ и искате да подобрите своя опит в Linux, тогава изучаването на нови команди от време на време е идеалният подход, който трябва да изберете. Потребителите трябва да знаят коя команда им е необходима, за да разрешат дадена ситуация ефективно.
Искате да се запознаете с Linux? Започнете с тези основни команди на Linux, за да научите стандартни компютърни задачи.
- Linux
- Терминал
- Linux
- Символична връзка

Deepesh е технически блогър и пише информационно съдържание повече от 3 години. В момента той следва бакалавърска степен по компютърни приложения от известен университет в Индия. В свободното си време той обича да пише, да слуша музика и да свири на китара.
Абонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!
Още една стъпка…!
Моля, потвърдете имейл адреса си в имейла, който току-що ви изпратихме.