sadm.magnus.pp.ru Заметки крошки-админа

27 November 2007

Что бы мы делали без замечательной утилиты crle?

Filed under: Компьютеры и интернет — Tags: — Magnus @ 14:53

В процессе компилирования необходимого набора программ для 64 бит, я в очередной рад воспользовался замечательной утилитой crle, и снова отметил, насколько проще становится жизнь если её использовать.

В странице-руководстве (man crle) сказано вот что:

The crle utility provides for the creation and display of a runtime linking configuration file. The configuration file is read and interpreted by the runtime linker, ld.so.1(1), during process start-up.

И именно этим утилита и полезна - можно указать, где компоновщику следует искать необходимые библиотеки в первую очередь, и многие проблемы пропросту исчезнут.

Так что бы мы делали без этой замечательной утилиты? Всё очень просто:

1) указывали бы обязательно дополнительные параметры для компиляторов - пути к библиотекам с параметрами -L и -R
2) Пользовались бы старой и надёжной переменной LD_LIBRARY_PATH, которая так же позволяет указывать каталоги, откуда компоновщику стоит брать библиотеки.

Мало того, что это неудобно потому, что нужно тратить дополнительное время, так ещё и настройки эти годятся только для конкретного пользователя - и любой другой, кто захочет использовать скомпилированную с помощью подобных ухищрений программу, вынужден будет делать то же самое - устанавливать себе аналогичное значение LD_LIBRARY_PATH.

А с crle всё гораздо проще:

для просмотра текущих параметров работы компоновщика (списков каталогов), нужно просто запустить команду:

-bash-3.00$ crle
Default configuration file (/var/ld/ld.config) not found
Default Library Path (ELF): /lib:/usr/lib (system default)
Trusted Directories (ELF): /lib/secure:/usr/lib/secure (system default)

для просмотра конфигурации при работе компоновщика с 64-битными объектами, нужно указать соответствующий параметр:

-bash-3.00$ crle -64
Configuration file [version 4]: /var/ld/64/ld.config
Default Library Path (ELF): /lib/64:/usr/lib/64:/usr/sfw/lib/64
Trusted Directories (ELF): /lib/secure/64:/usr/lib/secure/64 (system default)

Command line:
crle -64 -c /var/ld/64/ld.config -l /lib/64:/usr/lib/64:/usr/sfw/lib/64

И как видно из примера, достаточно выполнить вот такую команду, чтобы добавить новый каталог к списку тех, где компоновщик будет искать библиотеки. Например, если я хочу добавить к списку свой собственный каталог /export/soft/lib/64, то сделать это можно вот так:

-bash-3.00$ crle -64 -c /var/ld/64/ld.config -l /lib/64:/usr/lib/64:/usr/sfw/lib/64:/export/soft/lib/64

Источник: http://solaris.reys.net/2006/04/crle

21 November 2007

Как использовать в awk и sed внешнюю переменную

Filed under: Компьютеры и интернет — Tags: , , — Magnus @ 16:58

В awk:

[~]$ A="aaa"
[~]$ echo '' | awk -v a=${A} '{print a}'
aaa

В sed:

[~]$ A="old"
[~]$ B="oldstring"
[~]$ echo $B | sed 's/'$A'/new/g'
newstring

Как удалить сообщения из очереди Postfix’а?

Filed under: Компьютеры и интернет — Tags: — Magnus @ 16:56

Для это можно воспользоваться утилитой postsuper:
postsuper -d ID_сообщения

Например, удалим из очереди все сообщения от MAILER-DAEMON:

mailq | grep -v "^[^0-9A-Z]" | grep MAILER-DAEMON$ | awk '{print $1}' | sed 's/*//' | postsuper -d -

Комментарий:
mailq - просматриваем очередь
grep -v "^[^0-9A-Z]" - удаляем все строки, кроме начинающихся ID сообщения
grep MAILER-DAEMON$ - выбираем строки, которые заканчиваются на MAILER-DAEMON
awk '{print $1}' - выбираем из строки ID
sed 's/*//' - удаляем символ *: означает что сообщение находится в очереди deferred - "отложенные"
postsuper -d - - удаляем сообщение: "-" - это стандартные вывод

Как, имея доступ по ssh, скопировать директорию с удаленной машины на локальную и обратно?

Filed under: Компьютеры и интернет — Tags: , , — Magnus @ 16:54

Это можно сделать следующей командой:

ssh -c blowfish username@somehost.ru "tar -C /path/to/some/directory -cvf - ." | tar -xvf -

Обратно:

tar -cvf - . | ssh -c blowfish username@somehost.ru "tar -C /path/to/some/directory -xvf -"

Как отключить использование "умных кавычек" в WordPress?

Filed under: Компьютеры и интернет — Tags: — Magnus @ 16:51

"Умные кавычки" вставляются функцией wptexturize.

Отключить их можно добавив в functions.используемой темы:

remove_filter('the_content', 'wptexturize');
Older Posts »

Powered by WordPress