Код загрузчика — 446 байт;
Таблица разделов;
Сигнатура
Наша задача: скопировать первые 446 байт из файла grldr.mbr в начало флешки.
1)dd if=grldr.mbr of=/dev/sdb bs=446 count=1
dd if=grldr.mbr of=/dev/sdb seek=512 skip=512 bs=1
2)bootlace.com /dev/sdb
First, install xcode. I know, groans abound, but it's required so just do it unless you feel like you want to trust my binaries. Secondly, grab the zabbix source code, it's free and relatively small.
Next, follow the sequence of steps exactly, it is easy, fast and relatively pain-free. From a shell as an administrative user:
Install command-line tools:
user

Untar/uncompress the latest tarball (2.4.5)
user

Switch to the tarball directory
user:~ user$ cd zabbix-2.4.5
Run the configure sсript with the --enable-agent switch
user:zabbix-2.4.5 user$ ./configure --enable-agent
Make the executable
user:zabbix-2.4.5 user$ make
Make the necessary local directories
user:zabbix-2.4.5 user$ sudo mkdir -p /usr/local/etc /usr/local/sbin
Copy the configuration file to the local etc directory
user:zabbix-2.4.5 user$ sudo cp ./conf/zabbix_agentd.conf /usr/local/etc/
Copy the daemon file to the local sbin directory
user:zabbix-2.4.5 user$ sudo cp ./src/zabbix_agentd /usr/local/sbin
Edit the agent daemon file (beyond the scope of this document)
user:zabbix-2.4.5 user$ vi /usr/local/etc/zabbix_agentd.conf
Start the agent, and enjoy!
user:zabbix-2.4.5 user$ /usr/local/sbin/zabbix_agentd
Загрузить куст реестра SAM
В появившемся окне открываем файл SAM, который находится в папке C:WindowsSystem32config и задаем ему произвольное имя. Я вбил «122«.
После того, как мы загрузили куст, нужно открыть раздел HKEY_LOCAL_MACHINEваш_кустSAMDomainsAccountUsers00001F4 в котором мы увидим два ключа.
реестр включение администратора
Двойным щелчком открываем ключ F и меняем первое значение в строке 038 на «10» (по умолчанию установлено»11″

Правка параметра реестра
Теперь необходимо выделить куст реестра, который мы загружали, и нажать «Файл» — «Выгрузить куст…» («File» — «Unload hive…»)
несколько строк):
sed -e :a -e 's/<[^>]*>//g;/</N;//ba'
2)/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport
MySQL*
Часто, когда разрабатываешь сайт, замечаешь, как на одни и те же грабли наступают разработчики при проектировании базы данных.
Сегодня я решил опубликовать свои шпаргалки, на самые часто встречающиеся ошибки при работе с MySQL.
Работа с бекапами
Делаем бекап
mysqldump -u USER -pPASSWORD DATABASE > /path/to/file/dump.sql
Создаём структуру базы без данных
mysqldump --no-data - u USER -pPASSWORD DATABASE > /path/to/file/schema.sql
Если нужно сделать дамп только одной или нескольких таблиц
mysqldump -u USER -pPASSWORD DATABASE TABLE1 TABLE2 TABLE3 > /path/to/file/dump_table.sql
Создаём бекап и сразу его архивируем
mysqldump -u USER -pPASSWORD DATABASE | gzip > /path/to/outputfile.sql.gz
Создание бекапа с указанием его даты
mysqldump -u USER -pPASSWORD DATABASE | gzip > `date +/path/to/outputfile.sql.%Y%m%d.%H%M%S.gz`
Заливаем бекап в базу данных
mysql -u USER -pPASSWORD DATABASE < /path/to/dump.sql
Заливаем архив бекапа в базу
gunzip < /path/to/outputfile.sql.gz | mysql -u USER -pPASSWORD DATABASE
или так
zcat /path/to/outputfile.sql.gz | mysql -u USER -pPASSWORD DATABASE
Создаём новую базу данных
mysqladmin -u USER -pPASSWORD create NEWDATABASE
Удобно использовать бекап с дополнительными опциями -Q -c -e, т.е.
mysqldump -Q -c -e -u USER -pPASSWORD DATABASE > /path/to/file/dump.sql, где:
-Q оборачивает имена обратными кавычками
-c делает полную вставку, включая имена колонок
-e делает расширенную вставку. Итоговый файл получается меньше и делается он чуть быстрее
Для просмотра списка баз данных можно использовать команду:
mysqlshow -u USER -pPASSWORD
А так же можно посмотреть список таблиц базы:
mysqlshow -u USER -pPASSWORD DATABASE
Для таблиц InnoDB надо добавлять --single-transaction, это гарантирует целостность данных бекапа.
Для таблиц MyISAN это не актуально, ибо они не поддерживают транзакционность.
Подробнее
Общие факты
Полезно под каждую базу на боевом сервере создавать своего пользователя
Кодировка базы может быть любой, если она UTF8
В большинстве случаев лучше использовать движок InnoDB
В php лучше забыть про сильно устаревшее расширение mysql и по-возможности использовать pdo или mysqli
Новую копию MySQL всегда можно настроить и оптимизировать
Без особой нужды не стоит открывать MySQL наружу. Вместо этого можно сделать проброс портов
ssh -fNL LOCAL_PORT:localhost:3306 REMOTE_USER@REMOTE_HOST
Работа с данными
Числа
На 32-битных системах практически нет смысла ставить для типа INTEGER свойство UNSIGNED, так как такие большие числа в php не поддерживаются.
На 64-битных системах, php поддерживает большие числа, вплоть до MySQL BIGINT со знаком.
Связанные таблицы («Foreign keys») должны иметь полное сходство по структуре ключей. Т.е. если у нас на одной таблице для поля указано «INTEGER UNSIGNED DEFAULT 0 NOT NULL» то и на другой должно быть указано аналогично
Для хранения булевых значений, нужно использовать TINYINT(1)
А деньги лучше хранить в DECIMAL(10, 2), где первое число обозначает количество всех знаков, включая запятую, а второе — количество знаков после запятой. Итого, у нас получится что DECIMAL(10,2) может сохранить 9999999,99
Строки
В старых версиях (до 5.0.3) VARCHAR была ограничена 255 символами, но сейчас можно указывать до 65535 символов
Помните, что тип TEXT ограничен только 64 килобитами, поэтому что бы сохранять «Войну и Мир» пользуйтесь «LONGTEXT»
Самая правильная кодировка для вашей БД UTF8
Даты
Не забывайте, что
DATE, TIME, DATETIME — выводятся в виде строк, поэтому поиск и сравнение дат происходит через преобразование
TIMESTAMP — хранится в виде UNIX_TIMESTAMP, и можно указать автоматически обновлять колонку
Сравнивая типы данных DATETIME и TIMESTAMP, не забывайте делать преобразование типов, например:
SELECT * FROM table WHERE `datetime` = DATE(`timestamp`)
Перечисления
Для перечислений правильно использовать тип ENUM
Правильно пишется так: ENUM('мама', 'мыла', 'раму')
Можно ставить значение по-умолчанию, как и для любой строки
В базе поле с перечислением хранится как число, поэтому скорость работы — потрясающе высокая
Количество перечислений ~ 65 тысяч
dev.mysql.com/doc/refman/4.1/en/storage-requirements.html
help.scibit.com/mascon/masconMySQL_Field_Types.html
Отладка
Если запросы тормозят, то можно включить лог для медленных запросов в /etc/mysql/my.cnf
А потом оптимизировать запросы через EXPLAIN
И наблюдать за запросами удобно через программу mytop
FaceRig - замена физиономии в реальном времени ( продается в steam)
Загружаемся с LiveCD.
Заменяем файл sethc.exe на cmd.exe
В терминале net user <имя пользователя> <пароль>
Для установки Pepper Flash Player для Chromium выполните в терминале команды
sudo apt-get install pepperflashplugin-nonfree
sudo update-pepperflashplugin-nonfree --install
system_profiler - информация о системе
Символ | Значение |
\ | Для обычных символов - делает их специальными. Например, выражение/s/ ищет просто символ 's'. А если поставить \ перед s, то /\s/ уже обозначает пробельный символ.И наоборот, если символ специальный, например *, то \ сделает его просто обычным символом "звездочка". Например, /a*/ ищет 0 или больше подряд идущих символов 'a'. Чтобы найти а со звездочкой 'a*' - поставим \ перед спец. символом: /a\*/ . |
^ | Обозначает начало входных данных. Если установлен флаг многострочного поиска ("m" , то также сработает при начале новой строки.Например,/^A/ не найдет 'A' в "an A", но найдет первое 'A' в "An A." |
$ | Обозначает конец входных данных. Если установлен флаг многострочного поиска, то также сработает в конце строки.Например, /t$/ не найдет 't' в "eater", но найдет - в "eat". |
* | Обозначает повторение 0 или более раз. Например, /bo*/ найдет 'boooo' в "A ghost booooed" и 'b' в "A bird warbled", но ничего не найдет в "A goat grunted". |
+ | Обозначает повторение 1 или более раз. Эквивалентно {1,} . Например,/a+/ найдет 'a' в "candy" и все 'a' в "caaaaaaandy". |
? | Обозначает, что элемент может как присутствовать, так и отсутствовать. Например, /e?le?/ найдет 'el' в "angel" и 'le' в "angle."Если используется сразу после одного из квантификаторов * , + , ? , или {} , то задает "нежадный" поиск (повторение минимально возможное количество раз, до ближайшего следующего элемента паттерна), в противоположность "жадному" режиму по умолчанию, при котором количество повторений максимально, даже если следующий элемент паттерна тоже подходит.Кроме того, ? используется в предпросмотре, который описан в таблице под (?=) , (?!) , и (?: ) . |
. | (Десятичная точка) обозначает любой символ, кроме перевода строки: \n \r \u2028 or \u2029. (можно использовать [\s\S] для поиска любого символа, включая переводы строк). Например, /.n/ найдет 'an' и 'on' в "nay, an apple is on the tree", но не 'nay'. |
( | Находит и запоминает. Это называется "запоминающие скобки". Например, /(foo)/ найдет и запомнит 'foo' в "foo bar." Найденная подстрока хранится в массиве-результате поиска или в предопределенных свойствах объекта RegExp:
$1, ..., $9 .Кроме того, скобки объединяют то, что в них находится, в единый элемент паттерна. Например, (abc)* - повторение abc 0 и более раз. |
(?: | Находит , но не запоминает найденное. Это называется "незапоминающие скобки". Найденная подстрока не сохраняется в массиве результатов и свойствах RegExp.Как и все скобки, объединяют находящееся в них в единый подпаттерн. |
| Находит , только если за следует . Например, /Jack(?=Sprat)/ найдет 'Jack', только если за ним следует 'Sprat'. /Jack(?=Sprat|Frost)/ найдет 'Jack', только если за ним следует 'Sprat' или 'Frost'. Однако, ни 'Sprat' ни 'Frost' не войдут в результат поиска. |
| Находит , только если за не следует . Например, /\d+(?!\.)/ найдет число, только если за ним не следует десятичная точка. /\d+(?!\.)/.exec("3.141" найдет 141, но не 3.141. |
| Находит или . Например, /green|red/ найдет 'green' в "green apple" и 'red' в "red apple." |
{ | Где n - положительное целое число. Находит ровно n повторений предшествующего элемента. Например, /a{2}/ не найдет 'a' в "candy," но найдет оба a в "caandy," и первые два a в "caaandy." |
{ | Где n - положительное целое число. Находит n и более повторений элемента. Например, /a{2,} не найдет 'a' в "candy", но найдет все 'a' в "caandy" и в "caaaaaaandy." |
{ | Где n и m - положительные целые числа. Находят от n до m повторений элемента. |
[ | Набор символов. Находит любой из перечисленных символов. Вы можете указать промежуток, используя тире. Например, [abcd] - то же самое, что[a-d] . Найдет 'b' в "brisket", а также 'a' и 'c' в "ache". |
[^ | Любой символ, кроме указанных в наборе. Вы также можете указать промежуток. Например, [^abc] - то же самое, что [^a-c] . Найдет 'r' в "brisket" и 'h' в "chop." |
[\b] | Находит символ backspace. (Не путать с \b .) |
\b | Находит границу слов (латинских), например пробел. (Не путать с [\b] ). Например, /\bn\w/ найдет 'no' в "noonday"; /\wy\b/ найдет 'ly' в "possibly yesterday." |
\B | Обозначает не границу слов. Например, /\w\Bn/ найдет 'on' в "noonday", а/y\B\w/ найдет 'ye' в "possibly yesterday." |
\c |
- буква от A до Z. Обозначает контрольный символ в строке. Например, /\cM/ обозначает символ Ctrl-M. |
\d | находит цифру из любого алфавита (у нас же юникод). Испльзуйте [0-9], чтобы найти только обычные цифры. Например, /\d/ или/[0-9]/ найдет '2' в "B2 is the suite number." |
\D | Найдет нецифровой символ (все алфавиты). [^0-9] - эквивалент для обычных цифр. Например, /\D/ или /[^0-9]/ найдет 'B' в "B2 is the suite number." |
\f,\r,\n | Соответствующие спецсимволы form-feed, line-feed, перевод строки. |
\s | Найдет любой пробельный символ, включая пробел, табуляцию, переводы строки и другие юникодные пробельные символы. Например, /\s\w*/ найдет ' bar' в "foo bar." |
\S | Найдет любой символ, кроме пробельного. Например, /\S\w*/ найдет 'foo' в "foo bar." |
\t | Символ табуляции. |
\v | Символ вертикальной табуляции. |
\w | Найдет любой словесный (латинский алфавит) символ, включая буквы, цифры и знак подчеркивания. Эквивалентно [A-Za-z0-9_] . Например,/\w/ найдет 'a' в "apple," '5' в "$5.28," и '3' в "3D." |
\W | Найдет любой не-(лат.)словесный символ. Эквивалентно [^A-Za-z0-9_] . Например, /\W/ и /[^$A-Za-z0-9_]/ одинаково найдут '%' в "50%." |
\ | где - целое число. Обратная ссылка на n-ю запомненную скобками подстроку. Например, /apple(,)\sorange\1/ найдет 'apple, orange,' в "apple, orange, cherry, peach.". За таблицей есть более полный пример. |
\0 | Найдет символ NUL. Не добавляйте в конец другие цифры. |
\x | Найдет символ с кодом (2 шестнадцатиричных цифры) |
\u | Найдет символ с кодом (4 шестнадцатиричных цифры). |
Create multipage pdf with gimp
1. Each layer is a layer, in reverse order: page one is the bottom layer, and the last is the upper layer.
2. Save document as mng animation.
3. With imagemagick installed type:
convert document.mng document.pdf.
<номер абонента> <сумма>
Type "sudo dscl . -create /Users/username UserShell /bin/bash" and press "Enter."
Type "sudo dscl . -create /Users/username RealName "John Smith"" and press "Enter." Replace "John Smith" with the new user's full name.
Type "sudo dscl . -create /Users/username UniqueID 1001" and press "Enter." The number after "UniqueID" must be an ID number that is not assigned to another user.
Type "sudo dscl . -create /Users/username PrimaryGroupID 1000" and press "Enter."
Type "sudo dscl . -create /Users/username NFSHomeDirectory /Local/Users/username" and press "Enter." This creates a home folder for the new user.
Type "sudo dscl . -passwd /Users/username password" and press "Enter." Replace "password" with the desired password that the new user will use when logging in to the computer. You may need to type your computer's administrator password again to complete this action.
Type "sudo dscl . -append /Groups/admin GroupMembership username" and press "Enter" to give the new user administrative privileges. To make the new account a limited user account, skip this step.
В окне загрузчика GRUB выделите строку с нужной версией линукса, для которого вам нужно сбросить пароль
Находим диск с системой:
sudo fdisk -l
Монтируем диск:
sudo mount <имя_логического диска> <путь монтирования>
Изменить рута в примонтированном разделе:
sudo chroot <путь монтирования>