150 likes | 272 Views
Aula 82 – TEC 11ºF. Sistema Operativo de Rede Prof. António dos Anjos. Links (Ligações). Existem dois tipos de links em Linux: Hard links (Ligações rígidas ??); Symbolic links (Ligações simbólicas);. Hard links. Relação entre um nome de uma directoria ou ficheiro e o seu número de inode;
E N D
Aula 82 – TEC 11ºF Sistema Operativo de Rede Prof. António dos Anjos
Links (Ligações) • Existem dois tipos de links em Linux: • Hard links (Ligações rígidas ??); • Symbolic links (Ligações simbólicas);
Hard links • Relação entre um nome de uma directoria ou ficheiro e o seu número de inode; • Um inode pode ter qualquer número de hard links a fazer-lhe referência; • Um ficheiro (inode) continua a existir até que desapareçam todos os hard links que o referenciem; • As links . e .. são hard links para directorias, criadas pelo SO.
Hard links - Limitações • Não é possível, ao utilizador, criar hard links para directorias; • Não é possível criar hard links para ficheiros que se encontrem em sistemas de ficheiros diferentes (e.g. partições diferentes).
Hard links - Criação • touch fich1 • ln fich1 fichlink • ls –i fich1 fichlink 1324 fich1 1324 fichlink • Note-se que ambos os nomes têm o mesmo número de inode.
Symbolic links • Tipo especial de ficheiro que se refere a um outro ficheiro pelo nome em vez de pelo número de inode directamente; • Permite que se façam links para ficheiros e directorias, mesmo que estes se encontrem em sistemas de ficheiros diferentes; • Também são conhecidas por symlinks.
Symlinks – Limitações • Se o ficheiro para o qual a symlink faz referência for apagado, a symlink fica partida (broken); • É necessária uma atenção maior na criação da link ao definir o destino da mesma.
Symlinks - Criação • pwd /home/antónio • ln –s /usr/fich1 fichLink • ls –l fichLink lrwxr-xr-x 1 antonio antonio 8 2004-05-08 16:19 fichLink -> /usr/fich1 • Se se fizer a verificação, poder-se-á notar que o link e o seu destino têm números de inode diferentes;
Symlinks – Atenção! • Exemplo: • pwd /home/antónio/documentos • ln –s pessoais/ personal • ls –l drwxr-xr-x 1 antonio antónio 4096 2004-05-08 16:19 pessoais/ lrwxr-xr-x 1 antonio antonio 8 2004-05-08 16:19 personal -> pessoais/ • Links para caminhos relativos poderão não funcionar se movidos. No exemplo acima, se o link for movido para qualquer outra directoria, não vai funcionar; • Se o nome de destino for alterado, o link não vai funcionar.
Apagar! • rm fich1 • Elimina o ficheiro com o nome fich1; • rm –i fich1 • Pergunta antes de apagar; • rmdir dir1 • Elimina a directoria com o nome dir1 se esta estiver vazia; • rm –r dir1 • Elimina a directoria com o nome dir1 junto com TODO o seu conteúdo. Normalmente usa-se também o parâmetro f para que a shell não faça “perguntas”. • rm –rf é um comando extremamente poderoso e perigoso!!!
Ajudas • Existem muitos outros parâmetros para os comandos abordados; • O SO Linux está equipado com um sistema de documentação muito completo; • Exemplos: • Man pages (páginas de manual); • GNU info pages; • /usr/share/doc; • The Linux Documentation Project (www.tldp.org); • …
Man pages • As “man pages” são a forma tradicional de documentação no Linux/Unix; • Utilização: • man nSecção nome • Onde nSecção se refere ao número da secção e nome se refere ao comando ou ficheiro de configuração sobre o qual desejamos obter ajuda. • Se nSecção não for especificado, será apresentada a primeira secção (e.g. man ls);
Man pages (2) • Para se descobrir as várias secções onde certo tópico aparece, utiliza-se o comando whatis; • O comando whatis permite também ver uma descrição bastante curta do objectivo de um determinado comando; • whatis nome • Apresenta as várias secções existentes para o tópico referido por nome; • Exemplo: $ whatis time time (1) - run programs and summarize system resource usage time (2) - get time in seconds • Agora para aceder á página (secção) do manual da função da linguagem C time(): $ man 2 time
Man Pages – Secções • 1 – Programas de utilizador; • 2 – Chamadas ao sistema; • 3 – Funções de livrarias; • 4 – Ficheiros especias; • 5 – Formatos de ficheiros; • 6 – Jogos; • 7 – Diversos..
GNU Info • Sucessor das man pages que permite a utilização de hipertexto; • info nome • Apresenta as informações disponíveis sobre o tópico nome; • Para aprender a trabalhar com as info pages: $ info info