Punta de Choros

27 декември 2009

На 2009г й оставаха 120ч съществуване. От календара падна поредния лист с дата 27 декември и към 10.30ч сутринта ме събуди звън от телефона.

Инсталация на Microsoft шрифтове в Ubuntu 16.04

14 януари 2017

нсталация на Microsoft шрифтове в Ubuntu се поражда от идеята браузърите в различните системи, да показват еднакво текстовото съдържанието на интернет страниците.

Ubuntu 16.04 инсталация на USB disk on Key

19 ноември 2016

Арсеналът ми от мобилни компютри съдържа Fujitsu Lifebook AH530. Това е бюджетна машина от 2011г на Intel Core i5-480M процесор и 4GB DDR3 RAM памет.

gparted

Paragon ExtFS for Windows

30 юли 2016

ExtFS for Windows е утилита на Paragon Software разработена през 2013г. Тя представлява решение, предоставящо пълен достъп на четене и на запис до раздели ...

msvcr100.dll is missing Windows 10

04 октомври 2016

Майк Патерсън от Plixer, компания по компютърната сигурност, публикува доклад , че Windows 10 изпраща данни в криптиран вид от вашата машина на всеки пет минути. Той е направил максимума, за да спре изтичането, но системата продължавала да изпраща информация.


За да се избегне копиране на файлове и каталози в различни части на файловата система в Linux, може да се прибегне до ползване на връзки (links), позволяващи откриване достъп към даден файл от разни места в системата. Linux поддържа гъвкави (прието да се наричат символни) и твърди връзки.

Кратки пътища

Обикновено миграцията към Linux от начинаещите става на база *buntu-дистро. По навик те формират своя десктоп с камара от икони подобна на църква и първото лутане е как да направят short-cut.



Добавяне на икона на приложение или системна икона на десктопа зависи от избора на система. Всяко дистро идва с DE (десктоп обкръжение/среда) и ръководител на файлове (file manager). Предпочитам работа в Gnome 2. Системните икони в тази среда могат да се викат или премахват по следния начин.Натискаме 'Alt + F2' и пишем 'gconf-editor', след което избираме 'run'. В появилия се прозорец преминаваме apps > nautilus > desktop и съответно добавяме, или премахваме нужна икона чрез чекбоксовете.
Gnome 2 конфигуратор

Gnome 2 е на изживяване и негов наследник е Mate. Пътят е подобен, но вместо Nautilus, ръководител на файлове е вече Caja, като повика става в началото с 'mateconf-editor'
Mate конфигуратор

Ако желаете, да добавете кратък път на приложение към иконите на вашия десктоп, то това позволява конктестното меню.
кратък път

Обективността обаче не може да нарече горните неща ShortCut, присъщи за Windows. Конкретно в *buntu това са десктоп стартери (desktop launcher), които са обект на desktop configuration file.
desktop launcher

Както казах, това са особености на обкръжението и характерна такава е в Lubuntu, която идва с LXDE и PCmanFM. В тази система конфигурацията на десктоп системна икона става чрез файл наречен Desktop Entry.

Например, системна икона на кошчето:
[Desktop Entry]
Type=Application
Icon=user-trash
Name=Trash
Name[bg]=Кошче
GenericName=Trash
GenericName[bg]=Кошче
Comment=open trash in PCManFM
Comment[bg]=Преглед на коша
Categories=FileManager;Utility;Core;GTK;
Exec=pcmanfm trash:///
StartupNotify=true
Terminal=false
MimeType=x-directory/normal;inode/directory;
Копирайте показаното съдържание в текстови файл и в момента на съхранение ще се появи икона с кошче на вашия Lubuntu десктоп. И още, това няма да работи според очакванията ви, защото е пряк път до каталога с затрити файлове и папки според хрумване на създателя на PCManFM. Влачене и пускане на файлове върху тази икона няма да доведе до тяхното изтриване и е възможно PCManFM да ви наругае с съобщение за грешка. Постигнато е един вид връзка в графичен вид, която ви дава чрез десен бутон на контекстното меню да преминете в trash:///. Пускането на ненужен файл и съответно му затриване прави аплет, което е една идея повече от горното.

Символни и твърди връзки в Linux

Когато вие опитате да отворите символна връзка, сочеща към конкретен файл или каталог, изпълняемата команда ще ви пренасочи към съответния обект (файл или каталог).
Обектът на символната връзка притежава собствени права за достъп и права за собственост, които не могат да бъдат определени въз основа на съдържащата се в символната връзка информация. Не е задължително символната връзка да се разполага на същия раздел на диска, където е и самия обект. Нещо повече, тя може да съществува дори при отсъствие на обекта.

За разлика от символната, твърдата връзка е възможна само за файлове, но не и каталози. На практика тя е начин за присвояване на име на конкретен физически файл.
Всеки файл притежава поне една символна връзка, благодарение на която се разбира че е такъв. Всяко допълнително име на файла (твърда връзка), трябва да се намира на същия раздел/том, където е и самия файл-обект на връзката. Начин за определяне, че даден файл се явява твърда връзка е да се види, че притежава един и същи номер на inode равен на същия у обекта. Важно е да се знае, че изменения на права за достъп, информация за дата и време или съдържание на произволна твърда връзка ще доведе до съответни изменения и в файл-обекта. Но, премахване на връзка няма да предизвика премахване на същинския файл - той ще съществува докато не бъде премахната и последната твърда връзка сочеща към него.

Нека приведем казаното на практика, за да внесем яснота.
Начин за създаване на връзка в Linux става чрез команда ln (съкратено от link). Каква е тази команда отговор получаваме така:
profruit@prodesktop:~$ whatis ln
ln (1) - make links between files

Повече за е нея чрез man ln или info ln.

За удoбство на упражнението се преместим в каталог Desktop и създадем файл test, каталог hard и каталог symbolic на моя десктоп в качество на примери.
profruit@prodesktop:~$ cd Desktop
profruit@prodesktop:~/Desktop$ > test
profruit@prodesktop:~/Desktop$ mkdir hard
profruit@prodesktop:~/Desktop$ mkdir symbolic

А сега в каталог hard създадем твърда връзка hardlink и съответно в каталог symbolic създадем сивмолна връзка symlink.
profruit@prodesktop:~/Desktop$ ln test hard/hardlink
profruit@prodesktop:~/Desktop$ ln -s ~/Desktop/test symbolic/symlink

Отлично. Имаме това:
създаване на връзки

или същото погледнато през командния процесор:
преглед на връзки - tree

Вниматeлен поглед в последните две команди се чете, че символна връзка се създава с помощта на опция -s. Преход в дадена папка (прието е визуализирани каталози, да се наричат папки) ми дава възможност, чрез намиращата се там връзка да отварям файл-обект test.

Интерес буди техните свойства и на помощ команда ls с опции -li (i - inode) и параметър съответния файл.

За test това:
profruit@prodesktop:~/Desktop$ ls -li test
995060 -rw-r--r-- 2 profruit profruit 0 2012-12-15 13:07 test

За hardlink това:
profruit@prodesktop:~/Desktop$ ls -li hard/hardlink
995060 -rw-r--r-- 2 profruit profruit 0 2012-12-15 13:07 hardlink

За symlink това:
profruit@prodesktop:~/Desktop$ ls -li symbolic/symlink
995099 lrwxrwxrwx 1 profruit profruit 27 2012-12-15 13:11 symlink -> /home/profruit/Desktop/test

Какво получихме до тук?
Ако влезем в папка symbolic и отворим symlink ще бъдем преведени в файл test. Достъпът към него ще бъде съобразен с неговите зададени права, а те разрешават четене и писане на притежателя, само четене от групата на притежателя и само четене от останалите членове на системата. Дефисът отпред говори, че е файл (-rw-r--r--). Самата символна връзка започва с l, което говори, че е такава. Правата й (lrwxrwxrwx) се отличават от тези на файл test. Това е важно да се схване и следва да знаете, че не можете да определите разрешен ли ви е достъп до test, докато не преминете чрез нея и не прегледате файла.

Какво е положението около hardlink-връзка?
Тя повтаря правата на test. Забележете, тя има същия номер inode 995060, докато на символната връзка е 995099. Ако влезем в папка hard и отворим hardlink в текстови редактор, а после запишем текст, същият ще се появи в файл test. Ако редактираме test, то промените ще се идентични с тези в hardlink.






до нови срещи   ^.^
15.12.2012 profruit 


0 Response to "Символни и твърди връзки в Linux"

Публикуване на коментар

Този блог е реинкарнация на първите ми опити за споделяне в нета. На времето започнах с къси разкази на преживяното. После се обезсмисли и превърнах блога си в системно радио. Пиша единствено неща, които карат душата ми да живее: Ubuntu, WEB, Photoshop, Фотография, Споделено и т.н. Това е моето системно радио, разбирате ли? Моята вълна и вие сте на нея сега.

Архив на блога