Basic auth with .htpasswd and .htaccess

AuthType Basic
AuthName "Restricted area"
AuthUserFile /home/data/site/.htpasswd
Require valid-user
13 июня 2015, 10:23

Bash - current directory

#!/bin/sh
BASEDIR=$(dirname $0)
27 мая 2015, 11:10

Mysql ORDER BY optimizations

SELECT * FROM t1
  ORDER BY key_part1,key_part2,... ;

SELECT * FROM t1
  WHERE key_part1 = constant
  ORDER BY key_part2;

SELECT * FROM t1
  ORDER BY key_part1 DESC, key_part2 DESC;

SELECT * FROM t1
  WHERE key_part1 = 1
  ORDER BY key_part1 DESC, key_part2 DESC;

SELECT * FROM t1
  WHERE key_part1 > constant
  ORDER BY key_part1 ASC;

SELECT * FROM t1
  WHERE key_part1 < constant
  ORDER BY key_part1 DESC;

SELECT * FROM t1
  WHERE key_part1 = constant1 AND key_part2 > constant2
  ORDER BY key_part2;
6 мая 2015, 18:01

Удаление записи из known_hosts

ssh-keygen -R "hostname"
2 мая 2015, 00:16

Подсчет размера директорий первого уровня

du
du -hs *
23 апреля 2015, 18:21

Настройка сетевого интерфейса в Debian

nano /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address XXX.XXX.XXX.XXX
        netmask 255.255.255.255
        gateway XXX.XXX.XXX.XXX
Ну и в завершении
/etc/init.d/networking restart
19 апреля 2015, 17:03

Crontab

Добавление файла расписания:
crontab /path/to/file
Вывести содержимое текущего файла расписания:
crontab -l
Удаление текущего файла расписания:
crontab -r
Редактирование текущего файла расписания (при первом запуске будет выведен список поддерживаемых текстовых редакторов):
crontab -e
Этот ключ позволяет выполнять вышеописанные действия для конкретного пользователя (запуск только от root):
crontab -u username
Зарезервированные литералы
@reboot	Запуск при загрузке	
@yearly	Раз в год	0 0 1 1 *
@annually	Тоже что и @yearly	
@monthly	Раз в месяц	0 0 1 * *
@weekly	Раз в неделю	0 0 * * 0
@daily	Раз в день	0 0 * * *
@midnight	В полночь (00:00)	
@hourly	Каждый час	0 * * * *
13 апреля 2015, 10:48

Установка nginx в ubuntu 14.04

sudo apt-get install nginx-extras
sudo update-rc.d nginx enable
12 апреля 2015, 11:56

Установка FFmpeg на Centos 6, сборка из исходников

yum -y groupinstall "Development Tools"

git clone git://git.videolan.org/x264.git
cd x264
./configure --prefix=/usr --bindir=/usr/bin --libdir=/usr/lib64 --disable-asm --enable-shared
make && make install
cd ..

git clone https://github.com/mstorsjo/fdk-aac.git
cd fdk-aac
autoreconf -i
./configure --prefix=/usr --bindir=/usr/bin --libdir=/usr/lib64 --disable-shared
make && make install
cd ..

wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
tar xvzf yasm-1.2.0.tar.gz
cd yasm-1.2.0/
./configure
make && make install
cd ..

wget http://downloads.sourceforge.net/opencore-amr/vo-aacenc-0.1.2.tar.gz
tar xzvf vo-aacenc-0.1.2.tar.gz
cd vo-aacenc-0.1.2
./configure --prefix=/usr --bindir=/usr/bin --libdir=/usr/lib64 --disable-shared
make && make install
cd ..

wget http://downloads.sourceforge.net/opencore-amr/fdk-aac/fdk-aac-0.1.4.tar.gz
tar xzvf fdk-aac-0.1.4.tar.gz
cd fdk-aac-0.1.4
./configure --prefix=/usr --bindir=/usr/bin --libdir=/usr/lib64 --disable-shared
make && make install
cd ..

git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
./configure --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --enable-libfdk-aac --enable-libx264 --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libvo-aacenc
make && make install
cd ..
11 апреля 2015, 14:45

Список установленных пакетов в Centos

yum list installed
4 апреля 2015, 17:44

Как удалить файлы из git индекса

git rm --cached mylogfile.log
git rm --cached -r mydirectory
28 марта 2015, 19:48

Запуск php приложения через Google App Engine launcher

~google_appengine/dev_appserver.py --skip_sdk_update_check --port 8085 --admin_port 9005 --php_executable_path /usr/local/bin/php-cgi ~application_path
19 марта 2015, 22:33

Mac OSX syslogd restart

sudo launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist
17 марта 2015, 18:37

Как показать превью загружаемой картинки, не отправляя ее на сервер

<img id="uploadPreview" style="width: 100px; height: 100px;" />
<input id="uploadImage" type="file" name="myPhoto" onchange="PreviewImage();" />
<script>
function PreviewImage() {
    var oFReader = new FileReader();
    oFReader.readAsDataURL(document.getElementById("uploadImage").files[0]);
    oFReader.onload = function (oFREvent) {
        document.getElementById("uploadPreview").src = oFREvent.target.result;
    };
};
</script>
10 марта 2015, 23:13

Восстановление RPMDB в Centos 6

Если вы видите нечто такое
yum list | grep -i xml
 rpmdb: Thread/process 31902/140347322918656 failed: Thread died in Berkeley DB library
 error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
 error: cannot open Packages index using db3 -  (-30974)
 error: cannot open Packages database in /var/lib/rpm
 CRITICAL:yum.main:
 Error: rpmdb open failed
То должно помочь следующее
rm -f /var/lib/rpm/__*
rpm --rebuilddb
9 марта 2015, 13:22

Как выполнить запрос из нескольких команда в mysql через PDO

1. Используем exec (ATTR_EMULATE_PREPARES надо выключить)
$db = new PDO("mysql:host=localhost;dbname=test", 'root', '');

// works regardless of statements emulation
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 0);

$sql = "
DELETE FROM car; 
INSERT INTO car(name, type) VALUES ('car1', 'coupe'); 
INSERT INTO car(name, type) VALUES ('car2', 'coupe');
";

try {
    $db->exec($sql);
}
catch (PDOException $e)
{
    echo $e->getMessage();
    die();
}
2. Используем prepare (ATTR_EMULATE_PREPARES надо включить)
$db = new PDO("mysql:host=localhost;dbname=test", 'root', '');

// works not with the following set to 0. You can comment this line as 1 is default
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 1);

$sql = "
DELETE FROM car; 
INSERT INTO car(name, type) VALUES ('car1', 'coupe'); 
INSERT INTO car(name, type) VALUES ('car2', 'coupe');
";

try {
    $stmt = $db->prepare($sql);
    $stmt->execute();
}
catch (PDOException $e)
{
    echo $e->getMessage();
    die();
}
6 марта 2015, 22:23

CURL CLI - как получить заголовки и передать реферер

curl -X HEAD -e http://site.com -i  http://ya.ru
6 марта 2015, 17:51

sysctl reload

FreeBsd
service sysctl reload
Linux:
sysctl -p /etc/sysctl.conf
26 февраля 2015, 12:36

Проверка диска на badblocks при помощи ddrescue

 ddrescue --force /dev/ada1 /dev/null
25 февраля 2015, 14:36

Warning: Changing a readonly file / Centos

mount -o remount,rw /              # Linux
mount -o rw /                      # FreeBSD
23 февраля 2015, 00:59