O comando SED é um poderoso utilitário de processamento de texto e é um dos mais antigos e populares utilitários UNIX.
É utilizado para alterar o conteúdo de um ficheiro, geralmente colocando os conteúdos num outro ficheiro daí o se nome "Stream Editor".
SED pode filtrar texto e efetuar substituições em streams de dados.
$sed s/pattern/replace_string/ file
Substituir a primeira string encontrada numa linha.
$sed s/pattern/replace_string/g file
Substituir todas as ocorrências na linha.
$ sed s/pattern/replace_string/g file > file2
O comando anterior vai substituir todas as ocorrências de "pattern" por "replace_string" no ficheiro "file" e copiar par "file2".
O comando AWK é utilizador para extrair e imprimir conteúdos especificos de ficheiros.
$awk '{ print $0 }' /etc/passwd
O comando anterior permite imprimir o ficheiro passwd.
$awk -F: '{ print $1 }' /etc/passwd
O comando anterior permite imprimir a primeira coluna do ficheiro passwd, cujos campos estão separador pelo limitador ":" definido com ".F:".
$awk -F: '{ print $1 $6 }' /etc/passwd
O mesmo que o anterior, mas desta vez permite mostrar a coluna 1 e 6.
quinta-feira, março 27, 2014
domingo, março 23, 2014
Process Isolation
Linux é considerado, desde há muito tempo, um sistema operativo muito seguro relativamente a outros sistemas operativos. Isto deve-se em grande parte à forma como os processos correm.
Um processo é uma instancia de uma ou mais tarefas relacionadas (threads) que estão a executar no computador. Não são necessariamente programas ou comandos pois um programa pode iniciar vários processos ao mesmo tempo. Alguns processos são independentes, outros são relacionados.
Os processo são corridos de forma isolada, ou seja, não utilizam os recursos de outros processos que estão a correr, mesmo que tenham sido chamados pela mesma conta.
Assim sendo é muito difícil ser atacado por vírus ou exploits (mas não impossível obviamente).
Outros mecanismos de segurança foram acrescentados ao longo do tempo:
Tipos de processos:
Um processo é uma instancia de uma ou mais tarefas relacionadas (threads) que estão a executar no computador. Não são necessariamente programas ou comandos pois um programa pode iniciar vários processos ao mesmo tempo. Alguns processos são independentes, outros são relacionados.
Os processo são corridos de forma isolada, ou seja, não utilizam os recursos de outros processos que estão a correr, mesmo que tenham sido chamados pela mesma conta.
Assim sendo é muito difícil ser atacado por vírus ou exploits (mas não impossível obviamente).
Outros mecanismos de segurança foram acrescentados ao longo do tempo:
- cgroups (control groups) - permitem ao administrador agrupar processos em grupos e alocar recursos finitos a esses grupos;
- (LXC) linux containers - Possibilita correr multiplos sistemas isolados Linux (containers) num unico sistema com cgroups;
- Virtualization - Hardware é emulado por forma a que não só apenas os processos são isolados, mas também todos os sistemas de forma isolada num host fisico.
Tipos de processos:
Process Type | Description | Example |
Interactive Processes | Need to be started by a user, either at a command line or through a graphical interface such as an icon or a menu selection. | bash, firefox, top |
Batch Processes | Automatic processes which are scheduled from and then disconnected from the terminal. These tasks are queued and work on a FIFO (First In, First Out) basis. | updatedb |
Daemons | Server processes that run continuously. Many are launched during system startup and then wait for a user or system request indicating that their service is required. | httpd, xinetd, sshd |
Threads | Lightweight processes. These are tasks that run under the umbrella of a main process, sharing memory and other resources, but are scheduled and run by the system on an individual basis. An individual thread can end without terminating the whole process and a process can create new threads at any time. Many non-trivial programs are multi-threaded. | gnome-terminal, firefox |
Kernel Threads | Kernel tasks that users neither start nor terminate and have little control over. These may perform actions like moving a thread from one CPU to another, or making sure input/output operations to disk are completed. | kswapd0, migration, ksoftirqd |
domingo, março 16, 2014
Gandolada - Jogo educativo?
Resolvi fazer um jogo para a minha filha. Ela gosta muito dos jogos do tipo "Hit The Mole". Achei interessante faze-lo com os principais protagonistas da pouca vergonha que está a acontecer no nosso país atualmente.
www.grandolada.tk
www.grandolada.tk
Subscrever:
Mensagens (Atom)