$ ls -l
-rw-rw-r-- 1 rogerio rogerio 991 Jul 9 2015 teste.txt
drwxr-xr-x 3 rogerio rogerio 4096 Jul 9 2015 Desktop
drwxrwxr-x 10 rogerio rogerio 4096 Jun 9 2015 outrodir
Primeiro char
Sequências de 3
Cada sequência
chmod change mode
Método simbólico
$ chmod u+w teste.txt
$ chmod g+rw teste.txt
Método numérico
Permissão | Binário | Decimal |
---|---|---|
- - - | 000 | 0 |
- - x | 001 | 1 |
- w - | 010 | 2 |
- w x | 011 | 3 |
r - - | 100 | 4 |
r - x | 101 | 5 |
r w - | 110 | 6 |
r w x | 111 | 7 |
$ chmod 600 teste.txt
$ chmod 755 teste.txt
chown change owner/group
$ chown usuario:grupo teste.txt
$ chown :grupo teste.txt
# apt-get update
# apt-get upgrade
# apt-get dist-upgrade
# apt-get install <nomes-dos-pacotes>
# apt-get remove <nomes-dos-pacotes>
# apt-get purge <nomes-dos-pacotes>
# apt-get install mysql-server
$ mysql -uroot -p
$ mysqladmin -uroot -p create <database>
$ mysqladmin -uroot -p drop <database>
$ mysqladmin -uroot -p status
$ mysqladmin -uroot -p shutdown
> show databases;
> show tables;
> use <database> [;]
> desc <table>;
> show create table <table>;
> quit [;]
> CREATE DATABASE treinamento;
DDL (Data Definition Language) refers to the CREATE, ALTER and DROP statements
> CREATE TABLE alunos (
id INT AUTO_INCREMENT,
nome VARCHAR(180) NOT NULL,
PRIMARY KEY (id)
);
> DROP TABLE alunos;
> INSERT INTO alunos (nome) VALUES ('Rogério');
DML (Data Manipulation Language) refers to the INSERT, UPDATE and DELETE statements
> UPDATE alunos SET nome = 'Rogério Lino' WHERE nome = 'Rogério';
> DELETE FROM alunos WHERE id = 1;
> SELECT
id, nome
FROM
alunos
WHERE
nome LIKE 'Rogério%'
ORDER BY
nome ASC
LIMIT 20
OFFSET 10
DQL (Data Query Language) refers to the SELECT, SHOW and HELP statements (queries)
# mysql_secure_installation
> CREATE USER 'rogerio'@'localhost' IDENTIFIED BY '123456';
> GRANT ALL ON treinamento.* TO 'rogerio'@'localhost';
> GRANT SELECT ON outrobanco.tabela TO 'rogerio'@'%';
> SHOW GRANTS FOR 'root'@'localhost';
> REVOKE INSERT ON *.* FROM 'rogerio'@'localhost';
> REVOKE INSERT ON *.* FROM 'rogerio'@'%';
# nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 0.0.0.0
$ mysqldump -uroot -p <database> > database-backup.sql
$ mysqldump -uroot -p --all-databases > all-databases-backup.sql
$ mysqldump -uroot -p --no-data <database> > only-database-schema.sql
$ mysqldump -uroot -p --no-create-info <database> > only-data-backup.sql
$ mysql -uroot -p <database> < database-backup.sql
$ mysql -uroot -p < all-databases-backup.sql
# apt-get install apache2
# service apache2 start
# service apache2 stop
# service apache2 reload
# service apache2 status
Sites disponíveis
/etc/apache2/sites-available/<arquivo>.conf
Sites habilitados
/etc/apache2/sites-enabled/<link>
# /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
#ServerName localhost
DocumentRoot /var/www/example
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Arquivos .htaccess oferecem um meio de fazer mudanças nas configurações por-diretório.
# /etc/apache2/sites-available/000-default.conf
# ...
<Directory /var/www/html>
AllowOverride All
</Directory>
# ...
# Protegendo com Basic Authentication
AuthType Basic
AuthName "My Protected Area"
AuthUserFile /path/to/.htpasswd
Require valid-user
# Desabilitando listagem do diretório
Options -Indexes
# apt-get install php5
$ php --version
$ php -i
$ php -S 127.0.0.1:8000
$ php -a
# apt-get install php5-mysql
<?php
$dsn = 'mysql:host=hostname;dbname=treinamento';
$user = 'rogerio';
$pass = '123456';
try {
$conn = new PDO($dsn, $user, $pass);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare('SELECT * FROM alunos');
$stmt->execute();
$rs = $stmt->fetchAll();
print_r($rs);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
# apt-get install libapache2-mod-php5
# nano /var/www/html/info.php
<?php
phpinfo();
http://127.0.0.1/info.php