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

JBB: An Artblog!
art blog(derogatory)

Kiana Khansmith
Cosimo Galluzzi
Three Goblin Art

izzy's playlists!
Jules of Nature

No title available
Aqua Utopia|海の底で記憶を紡ぐ

Origami Around
trying on a metaphor
Sade Olutola
Alisa U Zemlji Chuda
Cosmic Funnies

⁂

❣ Chile in a Photography ❣
Show & Tell
DEAR READER
Claire Keane

seen from Malaysia

seen from United States
seen from Guernsey
seen from United States
seen from United States

seen from Switzerland
seen from Canada
seen from Türkiye

seen from Canada
seen from Germany

seen from United States
seen from United States

seen from United States
seen from United States

seen from United States

seen from United States
seen from United States
seen from United States
seen from United States
seen from United States
@itruns
Итак. Абстрагируемся от мощных высокотехнологичных постов на хабре я им апплодирую. Но жизнь рядового программиста начинается с его рабочего места, куда он...
HTML5 was a great leap forward for web developers, however there is a void that HTML5 has yet to fix and that void is truly semantic markup.
nginx+mysql+php+svftp@centos
В интернете много статей, где для установки Nginx приходится собирать не только сам веб-сервер, приходится собирать практически всё. В данной статье я опишу установку используя репозитории. Для статьи поставил специально виртуальную машину и на неё произвел установку и настройку Nginx в связке с php-fpm. Если соблюдать четко все пункты, думаю у новичков вопросов не возникнет. Удачи.
Установка Nginx:
Имеем установленную систему CentOS-6.2-i386-minimal, установленные пакеты
yum install openssh-server wget
и обновлённую систему:
yum -y update
В системе перед установкой подключенны следующие репозитарии
yum repolist
Добавляем репозитории :
EPEL
rpm -ihv http://mirror.yandex.ru/epel/6/i386/epel-release-6-8.noarch.rpm
Nginx
rpm -ihv http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
Remi
rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
Устанавливаем пакет приоритета оригинальных пакетов RHEL перед пакетами из дополнительных репозиториев:
yum install yum-priorities
Устанавливаем приоритет для репозитория EPEL:
vi /etc/yum.repos.d/epel.repo
Тоже самое для репозиториев Nginx и Remi:
1vi /etc/yum.repos.d/nginx.repo
2vi /etc/yum.repos.d/remi.repo
Устанавливаем MySQL:
yum install mysql mysql-server
Добавляем MySQL в автозагрузку и запускаем:
chkconfig --levels 235 mysqld on
service mysqld start
Настроим MySQL:
/usr/bin/mysql_secure_installation
Система просит нас ввести текущий пароль пользователя root. Нажимаем «Enter», пароля пока как бы нет )))
Вводим новый пароль и отключаем анонимного пользователя (нажимаем «Y» и «Enter»)
Отключаем удаленное подключение для пользователя root (нажимаем «Y» и «Enter»)
Удаляем тестовую базу данных (нажимаем «Y» и «Enter»)
Remove test database and access to it? [Y/n]
Сбрасываем все привилегии для баз (нажимаем «Y» и «Enter»)
Reload privilege tables now? [Y/n]
Устанавливаем Nginx:
yum install nginx
Добавляем в автозагрузку и запускаем:
chkconfig --levels 235 nginx on
service nginx start
Для проверки веб-сервера и дальнейшей настройки временно отключим фаервол, настроим его в самом конце статьи
Вводим адрес (http://192.168.17.241) в web-браузер (У вас скорее всего будет свой )
Устанавливаем PHP и PHP-FPM:
PHP5 c Nginx будут работать через PHP-FPM (PHP — FastCGI Process Manager):
1yum --enablerepo=remi install php-fpm php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy
переходим в конфигурационный файл PHP:
vi /etc/php.ini
находим строку «cgi.fix_pathinfo = 1», снимаем с нее комментарий и меняем на «cgi.fix_pathinfo = 0» было:
;cgi.fix_pathinfo = 1
стало:
cgi.fix_pathinfo = 0
Подробнее о cgi.fix_pathinfo можно почитать тут: http://www.php.net/manual/ru/ini.core.php#ini.cgi.fix-pathinfo
Добавляем в автозагрузку и запускаем:
chkconfig --levels 235 php-fpm on
/etc/init.d/php-fpm start
Настраиваем Nginx:
Делаем резервную копию конфига
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.default
Редактируем конфиг Nginx:
vi /etc/nginx/nginx.conf
Ищем в нём строку
include /etc/nginx/conf.d/*.conf;
и меняем на
server {
listen 80;
server_name _;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Должно получится:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name _;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
}
перезапускаем nginx
service nginx restart
проверяем работу php
echo '<?php echo phpinfo(); ?>' > /usr/share/nginx/html/phpinfo.php
Вводим адрес (http://192.168.17.241/phpinfo.php) в web-браузер (У вас скорее всего будет свой ). Если увидете такое окно то все ок, вы правильно настроили.
Настраиваем PHP-FPM:
До этого момента в настройках сервера мы использовали соединение TCP для нашего PHP-FPM пула (127.0.0.1:9000, 127.0.0.1:9001 и так далее). Теперь попробуем избежать расходы на TCP соединение и настроим на использование сокета Unix.
Делаем резервную копию конфига
cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.default
Редактируем
vi /etc/php-fpm.d/www.conf
В самом начале ищем
listen = 127.0.0.1:9000
и меняем на
listen = /tmp/php-fpm.sock
Перезагружаем php-fpm
/etc/init.d/php-fpm restart
Теперь настраиваем Nginx
vi /etc/nginx/nginx.conf
В секции
location ~ \.php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
меняем
fastcgi_pass 127.0.0.1:9000;
на
fastcgi_pass unix:/tmp/php-fpm.sock;
Проверяем как ранее.
перезапускаем nginx
service nginx restart
Вводим адрес (http://192.168.17.241/phpinfo.php) в web-браузер.
всё
Настраиваем Iptables для Nginx:
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
iptables-save > /etc/sysconfig/iptables
Возможные ошибки
No input file specified.
Исправляется или правами на папку веб-сервера или правильной настройкой конфига.
via.
+FTP
Install Vsftp:
yum install vsftpd
Disable anonymous ftp:
vi /etc/vsftpd/vsftpd.conf
Change anonymous_enable=YES
anonymous_enable=NO
Then create a user for ftp and set password:
adduser ftpuser
passwd ftpuser
Change permissions for our html folder to ftpuser: (So that you can access and change files from ftp)
chown -hR ftpuser:ftpuser /usr/share/nginx/html/
Then we have to change the default folder for ftpuser linux user, so that when we loggin to ftp we go to the nginx html folder.
usermod -d /usr/share/nginx/html/ ftpuser
Then restart vsftp:
/etc/init.d/vsftpd restart
Then login to ftp with your favrourite software (i like filezilla) you will see your html folder.
via.
Grub Error 18
Установив Cent Os на старенькую машину, и перезагрузившись, попал в консоль Grub. При попытке запустить kernel выдаёт следующую ошибку:
Error 18: Selected cylinder exceeds max supported by BIOS
Проблема решилась просто: обновил BIOS на материнке.
25 Aug 91 20:57:08 GMT Hello everybody out there using minix - I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things). I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-) Linus ([email protected]) PS. Yes - it's free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(
Ядру 19 лет.
Да и вообще сайт полезный. В прошлом он был ILoveJackDaniels.com
Символические ссылки. Ограничения «жестких» ссылок
Здесь мы вынуждены столкнуться с очень распространенным заблуждением (даже среди пользователей UNIX), которое является в основном следствием того, что ссылки, как мы видели ранее (незаслуженно называемые «жесткими» ссылками), ассоциируются только с обычными файлами (и мы видели, что это не повод —— так как даже символические ссылки являются «связанными»). Но для этого требуется, чтобы мы сначала разъяснили, что же представляют собой символические ссылки (часто называемые «мягкими» ссылками или даже еще чаще «симлинками»).
Символические ссылки — это файлы особого типа, единственным содержанием которых является произвольная строка, которая может указывать (а может и не указывать) на существующий файл. Когда вы обращаетесь к символической ссылке в командной строке или в программе, на самом деле вы обращаетесь к файлу, на который она указывает, если он существует. Например:
$ echo Hello > myfile $ ln -s myfile mylink $ ls -il total 4 169 -rw-rw-r-- 1 queen queen 6 Dec 10 21:30 myfile 416 lrwxrwxrwx 1 queen queen 6 Dec 10 21:30 mylink -> myfile $ cat myfile Hello $ cat mylink Hello
Как видите, тип файла mylink — «l» (от слова Link), т. е. он является символической ссылкой. Права доступа для символической ссылки значения не имеют: они всегда будут rwxrwxrwx. Вы также можете видеть, что она и файл myfile — это два разных файла, т. к. ее номер inode отличается. Но она ссылается на него символически, поэтому, когда вы вводите команду
cat mylink
на самом деле вы выводите содержимое файла myfile. Чтобы продемонстрировать, что символическая ссылка содержит произвольную строку, мы можем сделать следующее:
$ ln -s "I'm no existing file" anotherlink $ ls -il anotherlink 418 lrwxrwxrwx 1 queen queen 20 Dec 10 21:43 anotherlink -> I'm no existing file $ cat anotherlink cat: anotherlink: No such file or directory
Но символические ссылки существуют благодаря тому, что они преодолевают несколько ограничений, присущих («жестким») ссылкам:
Вы не можете создать ссылку на inode в каталоге, который находится в другой файловой системе. Причина проста: счетчик ссылки хранится в самом inode’е, а последние не могут совместно использоваться в разных файловых системах. А симлинки позволяют сделать это.
Вы не можете создать ссылки на каталоги, во избежание создания циклов в файловой системе. Но вы можете создать симлинк, указывающий на каталог и использовать его так, как если бы это на самом деле был каталог.
Поэтому символические ссылки очень полезны в различных ситуациях, и очень часто люди стремятся их использовать для связывания файлов даже тогда, когда могла бы быть использована обычная ссылка. Одно из преимуществ обычного связывания состоит в том, что вы не потеряете файл, если удалите «оригинальный».
И напоследок, если вы были внимательны, то могли заметить, что размер симлинка — это просто размер строки.
via
Новая команда
Я поставил матлаб в /usr/local. Но почему-то вот такая ерунда происходит: матлаб не хочет запускаться без консоли, т. е. вызвать его можно только командой, выполненной в эмуляторе термнала. При этом, автодополнение имени команды тоже не оказалось после установки. Эту проблему раньше я решал с помощью добавления такой строки в ~/.bashrc:
alias matlab=’/usr/local/matlab/bin/matlab &’
Теперь автодополнение есть. Амперсант стоит для того, чтобы дальше можно было пользоваться консолью, в которой вводится команда, т. к. дальнейший вывод матлаба в ней я не наблюдал.
Сегодня же ко мне пришло озарение. Я как-то из водуха догадался, что автодополнение можно сделать путем создания ссылки в /usr/bin на исполняемый матлабовский файл:
ln -s /usr/local/matlab2008b/bin/matlab /usr/bin/matlab
Теперь можно вызывать матлаб без ввода полного пути, причем от любого пользователя, чего нельзя было так просто добиться первым способом.
Slackware vs Archlinux: выбор дистрибутива для опытного пользователя
Статья (перевод) отсюда, оригинал — здесь.
Как вам должно быть уже известно, в мире существует огромное количество дистрибутивов Linux (для тех, кто не в курсе — «Linux» — это ядро операционной системы, вокруг которого создают коллекцию утилит и приложений, все это вместе называется «дистрибутив»).
Какой дистрибутив выбрать — зависит от того, что вы собираетесь с ним делать, и хотите ли вы настраивать все сами, чтобы дистрибутив находился по вашим полным контролем. Может быть вы хотите, чтобы все просто работало «из коробки» (в таком случае я рекомендую Ubuntu). Некоторым нужно запустить сервер. Их выбор — Red Hat (или CentOS). Разумеется, существует масса альтернатив, например BSD.
Если вы пользователь, который любит копаться во внутренностях системы и настраивать все своими руками, вам необходимо рассмотреть два нижеописанных дистрибутива. Оба поддерживают 32 и 64-битные платформы и придерживаются правила KISS. Это относительный новичек Arch Linux (создан в 2002 году) и почтенный, проверенный в битвах Slackware Linux (создан в 1993 году и сегодня является старейшим активно поддерживающимся дистрибутивом — дети, которые родились в один год со Slackware, сейчас уже водят машины). Оба дистрибутива подразумевают настройку путем ручной правки конфигурационных файлов, мало графических утилит настройки, много работы в консоли. В итоге вы получите систему с прекрасным графическим интерфейсом: оба дистрибутива официально поддерживают KDE, Arch также официально поддерживает GNOME, который несложно установить и в Slackware. Зачем вам все это? Ответ — для того, чтобы больше узнать о работе системы и научиться самостоятельно администрировать ее.
Ирония дружественных к пользователю систем заключается в том, что повышение дружелюбности к пользователю сопровождается соответствующим усложнением системы. Процесс управления системой от сравнительно умного и сверхмощного человеческого мозга передается относительно тупой части сложного и хрупкого софта для управления системой (я считаю, что именно по причине сложности и хрупкости этих систем администрирование Unix всегда осуществлялось людьми, и они никогда не строились по принципу «выстрелил и забыл»).
Итак, мы избавимся от лишних уровней сложности и вернем людей назад, в итоге мы получим более простую систему в обмен на необходимость больше знать о том как настраивать и поддерживать ее (если вы действительно хотите узнать все о том, как работает Linux, можете собрать свой собственный дистрибутив, используя Linux From Scratch, но не думаю, что вы сегодня так далеко зайдете).
Итак, вернемся к двум нашим дистрибутивам — Arch и Slackware. Оба устанавливаются в текстовом режиме и не запускают X, пока вы им об этом не скажете. Инсталлятор Slackware ведет вас за руку через весь процесс установки, в то время как у Arch он фактически предлагает вам вручную редактировать /etc/rc.conf (который на самом деле очень простой и симпатичный файл).
Установка Арча чуть-чуть отличается вследствие того, что она не включает X — его необходимо загрузить и установить с помощью менеджера пакетов, только тогда можно будет работать в графическом режиме.
В обоих дистрибутивах после установки попадаешь в консоль, графическая сессия по умолчанию не стартует. Оба дистрибутива имеют софт для пакетного менеджмента и оба используют пакеты формата tarball. Менеджер пакетов Арча — «pacman» быстрее, чем у Slackware, но вряд ли это будет заметно на практике. Самое существенное отличие — использование в Arch системы контроля зависимостей пакетов в отличие от Slackware, где она до сих пор не используется. Пользователи Slackware не застрахованы от конфликтов, которые часто называют «адом зависимостей». Может ли система быть стабильной без автоматического контроля зависимостей? Да, может, и Slackware подтвердил это на практике. Пользователи просто обновляют пакеты, когда это необходимо. С другой стороны, работу с Arch можно назвать раем зависимостей, где все просто работает и все нужные зависимости скачиваются и устанавливаются автоматически.
Стабильность Slackware общеизвестна. В дистрибутив включают только проверенные версии пакетов, обновление которых, за исключением обновлений безопасности, происходит достаточно редко. Вы устанавливаете систему и она просто работает.
Arch не ставит во главу угла стабильность, в основном система включает самые последние версии приложений (хотя девелоперские версии как правило отсутствуют). Как только выходит новый релиз программы, значит она очень скоро появится в Arch (часто задержка связана с тем, что новые пакеты сначала попадают в «тестовый» репозиторий, к которому обычные пользователи не подключены, однако вы можете к нему подключиться, если хотите помочь в тестировании программы. Пользователи Арча обновляют свою систему чаще всего с помощью команды «pacman -Syu», чтобы обновить все пакеты. Обычно несколько пакетов обновляются каждый день после выхода новых версий.
Хотя это звучит как кошмар в плане стабильности, который должен постоянно приводить к нарушениям, обычно обновление работает без сучка и задоринки. У меня была одна проблема, когда майнтайнер Арча забыл включить один из пакетов KDE, являвшийся частью общего обновления, но ошибка была очень быстро исправлена. Другая проблема появилась, когда nVidia переместила драйвер для моей видеокарты в другой пакет, а старый оказался несовместим с последней версией Xorg — установка собственного пакета драйвера от Arch решила и эту проблему. Эти две неприятности случились за восемь месяцев практически ежедневных обновлений.
Если вы хотите придать Slackware немного больше свежести, можно использовать репозиторий «-current». Эти пакеты не очень хорошо протестированы (так как их пользователи являются тестерами), но в итоге они станут частью следующего релиза и будут нерушимы как скала.
Если говорить об обновлениях безопасности, Slackware предоставляет обновления безопасности как для текущего, так и для нескольких более старых релизов. Вы можете быть уверены, что поддержка обновлений безопасности будет доступна длительное время, и я нигкогда не видел, чтобы обновления безопасности каким-либо образом повредили систему. Что касается Арча, он не предлагает отдельных обновлений безопасности, они просто являются частью политики, направленной на обновление всех пакетов до последних версий. Arch не обеспечивает отдельного отслеживания обновлений безопасности.
Один из примеров, где действительно видна разница между этими двумя концепциями обновлений — это серверы. Со Slackware вы можете быть уверены, что обновления обеспечивают только повышение безопасности, и все. Но вам вряд ли понравится, если обновление postfix до последней версии «просто, чтобы было» нарушит работу пользователей. Поэтому я не рекомендую использовать Arch в качестве сервера, хотя некоторые используют его в таком качестве (единственное послабление в этом вопросе сос стороны разработчиков дистрибутива — версия ядра с долгосрочной поддержкой, которая обновляется не часто и поэтому больше подходит для машин, работающих в течение долгого времени без перезагрузки.
Вы можете подумать: «Если Арч постоянно обновляет все пакеты до последних версий, почему я каждый раз должен скачивать DVD с последним релизом?» Вы не должны! После установки вам никогда не нужно будет переустанавливать его или устраивать большое обновление каждые шесть месяцев. Вы просто всегда будете получать из сети последние версии пакетов. Такая модель называется «инкрементный релиз». Slackware использует обычную модель разработки с нумерованными релизами.
акой из дистрибутивов имеет больше пакетов? Ответ однозначный — Arch. Slackware 13.0 включает около 1000 пакетов, в то время как Arch более 4000. Это например, означает, что Inkscape есть в Archlinux, но отсутствует в Slackware. Не поймите меня неправильно — 1000 это много, однако вы можете не найти в этом списке что-что из того, что вам нужно (конечно вы всегда можете самостоятельно собрать для себя нужный пакет).
Если вам нужен пакет, которого нет в официальных репозиториях, можно поискать его в сторонних репозиториях. Для Slackware наиболее популярный — slackbuilds.org (SBo), где представлены около 1700 созданных пользователями шелл-скриптов для сборки пакетов Slackware, которые затем можно установить. Например, здесь есть скрипт Inkscape Slackbuild, так что вы можете просто установить его, не изучая, как собрать пакет самому. Кроме того, обычно имеется файл README, где описываются зависимости, которые необходимо установить. В духе легендарной стабильности Slackware все скрипты SBo рассматриваются и проверяются администраторами сайта.
Для сравнения, Arch имеет « Arch User Repository» (AUR), который содержит около 18000 загруженных пользователями скриптов для сборки. Арч не предоставляет никаких гарантий для этих скриптов и предупреждает, что пользователь использует их на свой страх и риск. При обновлении программ сценарии устаревают и пользователь, поддерживающий скрипт сборки, должен обновить его. Для скриптов, оставшихся «бесхозными» может найтись другой майнтайнер. Система работает сама и администраторы AUR не склонны вмешиваться в этот процесс. Хотя теоретически скрипты сборки могут быть опасными, на практике я не встречал такого ни разу, к тому же такие пакеты будут быстро удалены администраторами.
По сравнению со скриптами Slackware, сборочные скрипты Арча базируются на bash и запускаются с помощью программы makepkg. Эти скрипты проще, чем слаковские, так как большую часть черновой работы берет на себя makepkg, кроме того они могут использовать преимущества bash, такие как массивы. Недостаток — зависимость от bash и от makepkg, тогда как скрипты Slackware зависят только от sh. Для пользователя работа с обеими типами скриптов выглядит практически одинаково: запуск скрипта и затем установка собранного пакета.
Суммируя все вышесказанное выделим основные черты сходства и различия дистрибутивов.
И Slack и Arch: базирование на принципе KISS, поддержка 32 и 64-битных архитектур, пакетная система, основанная на тарболлах, текстовая установка, администрирование с помощью редактирования конфигурационных файлов, KDE в качестве рабочего стола по умолчанию.
Основные особенности дистрибутивов.
Slackware: полная стабильность, хорош для серверов, относительно небольшое (но достаточное) количество отлично протестированных стабильных программ, обновления безопасности, GNOME официально не поддерживается, стандартная модель релизов.
Archlinux: хорошая (но не гарантированная) стабильность, большое количество передового софта, хорош для десктопов, все пакеты обновляются постоянно, GNOME поддерживается официально, модель инкрементных релизов.
Какой из них лучше? Решать вам!
Сразу после открытия smokespots.ru, мы столкнулись с одной "очень серьезной проблемой". Я получил следующий е-мэйл:
Уважаемый администратор сайта www.smokespots.ru Я, почетный член арбитражной комиссии, электронной платежной системы WebMoney, login - FrichX, заявляю Вам, как представителю Интернет-ресурса smokespots.ru, о том, что располагаю компрометирующими материалами, относительно Вашей деятельности в сети Интернет, которые нам любезно предоставил Ваш хостинг-провайдер ****.com. Мною, на сайте WebMoney, уже была создана персональная страница претензий http://arbitrage.webmoney.ru/asp/claimsurl.asp?procurl=http://smokespots.ru/ , предназначенная для публикации жалоб на Ваш ресурс, и я предлагаю Вам, добровольно внести пожертвование, направленное на развитие платежной системы WebMoney, для приостановления этого негативного процесса. Деньги от Вас, должны быть переданы лично мне на мыло [email protected] (удалите все пробелы), в виде реквизитов Паймер-чеков, на общую сумму 900 WMZ, не познее 8 июня 2010 года, в противном случае, помимо публикации на вышеуказанной странице претензий, всех поданных нам претензий на Ваш сайт, я опубликую этот компромат также и в своих личных, многочисленных блогах, таким образом помимо блокирования вашего WM ID, вместе со всеми Вашими электронными деньгами, я могу Вам гарантировать существенный отток Ваших клиентов, а может быть и вовсе полное блокирование домена smokespots.ru, его регистратором. Вот ссылка на всего одну из многочисленных моих работ (множество аналогичных документов найдете через поиск ключевых слов "FrichX" и например "gullon"): http://cripo.com.ua/?sect_id=7&aid=89293&nv=gullon&fe=eu Здесь, как видите, фигурирует ставший вдруг скандальным сайт gullon.eu, раньше безупречной и процветающей испанской кондитерской фирмы Gullon, который был полностью блокирован арбитражным сервисом WebMoney и лично мною, теперь его место вполне может занять SMOKESPOTS.RU! Так что не тяните, потому что потом это будет гораздо дороже, а может быть и вовсе станет уже не возможно остановить негативный процесс, инициированный мною. Также хочу Вас предупредить о том, что я не намерен вступать с Вами в переговоры, и в виде ответа на данное предупредительное сообщение, Вы можете отправить мне только реквизиты Paymer-чеков в выше оговоренной сумме, на выше указанный адрес, и ничего больше! FrichX P.S. Любителям пошуметь, и тем, кто желает обвинить меня в мошенничестве или вымогательстве, советую объективно взвешивать аргументы и свои возможности, с учетом того, что у меня хорошие связи не только в WebMoney, электронных СМИ, доменных регистраторов и хостерах, но и в силовых структурах Украины!
Я читал и катался по полу. "компрометирующими материалами, относительно Вашей деятельности в сети Интернет, которые нам любезно предоставил Ваш хостинг-провайдер ****.com" - этож просто ппц! ****.com - это вообще не провайдер, тем более, это сайт, принадлежащий ITRuns. И если бы товарищ додумался хотя бы на него зайти, то все что он бы увидел - огромную обоину с огромными сиськами :-D
На фоне этого тааак ржачно читать все остальное :-D Однако, создается впечатления, что многих это действительно может напугать. Люди! Не ведитесь на всякую хуйню и шантаж!
Конец.
Настройка Wifi Atheros AR242x (AR5007EG) в Debian Lenny (5.0)
Поставил на ноут (Lenovo B450-4TK-B) Debian Lenny. Первая проблема - обе сетевухи не заработали. Лановская вообще не определилась, а вайфайная не захотела находить беспроводные сети. Помогла статья, которую привожу далее.
У обладателей таких ноутбуков, как: Asus X51RL, Fujitsu-Siemens s6420, Toshiba a201, Samsung NC10, Amilo Mini 3520, Acer Aspire 5315 и еще многих других, есть одна общая проблема - Wifi карточка Atheros AR5007EG / AR242x, работоспособность которой после установки Linux-системы, как правило, оставляет желать лучшего. Благодаря проекту madwifi, установка драйверов Atheros не доставляет много проблем.
Диагностика оборудования: наличие Atheros AR5007EG /AR242x
В первую очередь необходимо убедиться, что в системе действительно установлена Wifi карта Atheros AR5007EG /AR242x:
$ lspci | grep Atheros 18:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)
Установка пакетов для сборки драйверов для Atheros AR5007EG /AR242x
Следующим шагом, необходимо установить пакеты для успешной компиляции драйвера:
$ sudo aptitude update $ sudo aptitude install build-essential linux-headers-$(uname -r)
Установка MadWifi драйверов для для Atheros AR5007EG /AR242x
Далее, необходимо скачать драйвер для Atheros AR5007EG /AR242x:
$ mkdir ./mad-wifi $ cd ./mad-wifi $ wget http://snapshots.madwifi-project.org/madwifi-hal-0.10.5.6/madwifi-hal-0.10.5.6-r4103-20100110.tar.gz
После того, как драйвер скачан, его необходимо разархивировать и скомпилировать:
# Разархивируем драйвер $ tar zxvf madwifi-hal-0.10.5.6-r4103-20100110.tar.gz $ cd madwifi-hal-0.10.5.6-r4103-20100110 # Компилируем драйвер $ make $ sudo make install
Теперь драйвер скомпилирован. Необходимо проверить работу wifi-карты с новым драйвером:
# включаем модуль ядра $ sudo modprobe ath_pci # включаем wifi-интерфейс $ sudo ifconfig ath0 up # проверяем настройки wifi $ iwconfig lo no wireless extensions. eth0 no wireless extensions. wifi0 no wireless extensions. ath0 IEEE 802.11g ESSID:"XXXXXXXXXXXXX" Nickname:"" Mode:Managed Frequency:2.437 GHz Access Point: XX:XX:XX:XX:XX:XX Bit Rate:6 Mb/s Tx-Power:17 dBm Sensitivity=1/1 Retry:off RTS thr:off Fragment thr:off Power Management:off Link Quality=21/70 Signal level=-74 dBm Noise level=-95 dBm Rx invalid nwid:848 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Если вывод последней команды похож на приведенный, то можно констатировать, что wifi карта работает. Остается лишь включить модуль ядра в загрузку и перезагрузиться:
$ sudo su $ echo "ath_pci" >> /etc/modules # блокируем загрузку альтернативного драйвера $ echo "blacklist ath5k" >> /etc/modprobe.d/blacklist # перезагрузка $ reboot
Единственным недостатком такого метода является необходимость пересобирать драйвер после каждого обновления ядра. Благо, теперь это просто.
Удаление MadWifi драйверов для для Atheros AR5007EG /AR242x
В случае, если что-либо не получилось, либо появилось желание установить более свежий драйвер, то текущую установку можно без труда удалить:
$ cd ./mad-wifi/madwifi-hal-0.10.5.6-r4103-20100110 $ sudo make uninstall
via
Wordpress + twitter = fucking hell please work!!!
Нужно заставить Wordpress автоматически постить ссылку в твиттер каждый раз когда добавляется новый или редактируется старый пост. Казалось бы, очень простая функция! Надо всего лишь найти плагин, который это делает и дать ему свой логин-пароль от твиттера! Но нет, 7 плагинов из 8 которые я попробовал не могли справиться с этим элементарным заданием!! Названий всех уже не помню. Но хочется отметить тот самый восьмой, который работал:
Tweetly Updater
Хочется обнять и расцеловать автора этого замечательного плагина (кстати, он забавный :-D). Вот полный список его настроек:
данные аккаунта твиттера (вводятся обязательно)
данные аккаунта на bit.ly (прекрасно работает и без них)
твиттить когда постится новый пост (плюс шаблон твитта)
твиттить когда редактируется старый пост (плюс шаблон твитта)
генерировать хэштэги из названий категорий
все. Идеально просто и идеально работает. Почему остальные, более популярные и навороченные аналоги не могут осилить такой простой процесс - загадка.
Вот эта считалка количества точек (пикселей) на дюйм важна, к примеру, для того, чтобы этот параметр правильно выставить в иксах и ожидать более внятного и чудесного отображения шрифтов.
Восстановление удаленных файлов ext2, ext3, ufs1, ufs2, ntfs, fat
Часто возникает необходимость восстановить удаленный файл в Linux. Многие «эксперты» говорят о том, что это невозможно для ext2/ext3. Не верьте — в этом может помочь программа Sleuth Kit.
Программа умеет работать с сырыми (raw) данными; поддерживает файловые системы NTFS, FAT, UFS 1, UFS 2, EXT2FS, EXT3FS, ISO9660; работает под операционными системами Linux, Mac OS X, Windows, CYGWIN, OpenBSD, FreeBSD, Solaris.
Загрузить Sleuth Kit | Документация по Sleuth Kit | http://www.sleuthkit.org/
via & via(!)
Amazon.com
Если покупка товара на amazon.com вызывает у Вас затруднения с доставкой товара (а некоторые товары доставляются только по США), то предлагаю Вам воспользоваться немецким отделом Амазона - amazon.de.
У них не такие дикие ограничения, как на английском или американском, где не каждую книгу или двд шлют в Россию. Плюс на .de - доставка почтой (с предоставлением трекинга!) и стоит всего 6 евро на заказ любой величины. при доставке почтой таможенный лимит - 10 тыщ рублей (а пошлина будет всего 30% от суммы, превышающей 10000). А еще немцы благородно вычитают величину НДС (19%!) из стоимости товара для граждан стран, не входящих в Евросоюз (т.е. для россиян, например (: ).
Но что делать, если вы не нашли товар на немецком аналоге amazon.com?
на amazon.com можно покупать, используя посредников. например, shipito.com. таким образом можно брать вещи, которые продаются только в сша или у которых доставка только по сша.
Сам не пробовал, но юзерам с форума respectfamily.com доверяю.
OpenID
Последние два дня прошли за авторизацией через OpenID. Задача традиционная: позволить юзеру регистрироваться и авторизоваться как парой логин-пароль, так и идентификатором OpenID.
В первую очередь, хочется сказать пару слов о том, зачем вообще это нужно. Все мы, будучи юзерами привыкли к парам логин-пароль, которые создаем на каждом новом сайте. OpenID заменяет их все всего-лишь одним. Стоит девелоперу сайта добавить эту опцию, и тебе не надо придумывать новый логин-пароль - вместо него ты просто используешь уже существующий, например, от Яндекса, или от ЖЖ. Это упрощает жизнь пользователя в сотни раз, т.к. ему не надо придумывать ничего нового, в 50й раз подтверждать свой e-mail, заходить в почту и т.д. Он просто вводит свой идентификатор, и все готово! Умники утверждают, что большинство пользователей рунета зарегистрированы на Яндексе. У остальных, наверное, есть почта на mail.ru или на гугле. Проблема только в том, что большинство юзеров живут в неведении, и не догадываются, что могут авторизоваться с помощью этих аккаунтов на других сайтах, а тупая надпись "OpenID" им совсем ни о чем не говорит. Поэтому задача немного расширяется: сообщить юзерам, что они могут не регистрироваться, а использовать уже имеющиеся у них аккаунты.
Сразу скажу, что если самим заниматься этим неблагодарным делом лень, то есть замечательный сервис, который предоставляет виджет для этого дела: http://loginza.ru/index
Но я выбрал путь посложнее. Итак, для начала мы качаем библиотеку OpenID: http://www.oneid.ru/info/openid-php/
кладем все, что скачалось в вебрут, и запускаем файл examples/detect.php, который нам кратко описывает совместимость нашей системы с библиотекой. Далее нужно подогнуть систему так, чтобы на этой странице все было хорошо.
Все, все должно работать. Заходим запускаем в браузере examples/consumer/ и наблюдаем вполне живой пример.
Возможно, вы захотите убрать все файлы, кроме папочки examples/consumer куда-нибудь назад, чтобы они не болтались в вебруте. В скрипте examples/consumer/common.php видно, как реализован импорт этой библиотеки в использующие ее скрипты - с помощью ini_set. Редактируйте эти строчки, и кладите файлы куда хотите. Хотя я просто положил их в один из include_path'ов.
Итак, мы имеем самую элементарную авторизацию с помощью OpenID. Теперь задача усложняется: сделать так, чтобы юзеру не надо было перенаправляться с вашей страницы, т.е. чтобы сайт провайдера открывался в поп-апе. Схема такая: пользователь вводит свой OpenID у нас на странице(1), шлется AJAX-запрос к нашему серверу. Сервер обрабатывает идентификатор так же, как страница try_auth.php из примера, и либо возвращает URL провайдера, либо ошибку. Далее ызывается поп-ап, в котором грузится тот самый URL провайдера, где юзер подтверждает доверие к ресурсу, и отправляется обратно к нам, на некую промежуточную страницу(2), цель которой вызвать функцию на странице, ее породившей (странице номер 1). Функция на странице 1 шлет AJAX-запрос к нашему серверу, который обрабатывает данные аналогично странице finish_auth.php из примера, и либо возвращает ошибку, либо регистрирует юзера, либо просто его логинит.
Вот и все. На всякий случай, приведу код промежуточной страницы (номер 2):
<html><head></head> <body onload="window.opener.handleOpenIDResponse((window.location+'').split('?')[1]);window.close();"> </body> </html>
просто вызывает функцию handleOpenIDResponse, передает ей в качестве аргументов присланную ей строку запроса, после чего закрывает само себя.
Дальше дело за тем, под каким соусом это подать. На большинстве сайтов, само собой, сделано просто отдельное небольшое поле, рядом с которым надпись OpenID, которая почти никому ничего не говорит. Более-менее светлую идею нашел на одном форуме:
Идеей обязан вот этому: http://xekc.com/
Конец.