При регулярном обновлении системы на базе Debian или Ubuntu в загрузчике(grub), да и на самом винчестере накапливаются различные версии ядер. Есть два способа удалить неиспользуемые ядра.
Способ 1:
$ aptitude remove $(dpkg -l|egrep '^ii linux-(im|he)'|awk '{print $2}'|grep -v `uname -r`)
Способ 2:
$ dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge
В результате будут удалены kernel пакеты ядер, которые не используются в данный момент.
Popularity: 56% [?]
Posted in Советы.
Tagged with aptitude, debian, kernel, Linux, tips, ubuntu.
By Bethrezen
– 16.06.2010
Предлагаю Вашему вниманию небольшой bash скрипт, который я использую для быстрой автоматической установки Hadoop и HBase на Ubuntu Server:
# Для сборки
sudo apt-get install -y build-essential linux-headers-`uname -r`
# Для VirtualBox
mkdir guest-cd
sudo mount /dev/cdrom guest-cd
cd guest-cd/
sudo ./VBoxLinuxAdditions-x86.run
# Просто полезно
sudo apt-get install -y curl python-software-properties
# Java, Hadoop
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
sudo add-apt-repository "deb http://archive.cloudera.com/debian karmic-cdh3 contrib"
sudo add-apt-repository "deb-src http://archive.cloudera.com/debian karmic-cdh3 contrib"
curl -s http://archive.cloudera.com/debian/archive.key | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y sun-java6-jre sun-java6-plugin sun-java6-fonts sun-java6-jdk mc rcconf ssh hadoop hadoop-conf-pseudo ant
# запуск
sudo su
for x in /etc/init.d/hadoop-0.20-*; do $x start; done
# restart
sudo su
for x in /etc/init.d/hadoop-0.20-*; do $x restart; done
# stop
sudo su
for x in /etc/init.d/hadoop-0.20-*; do $x stop; done
# генерим ключ для автозапуска HBase
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
# HBase
wget http://www.sai.msu.su/apache/hadoop/hbase/hbase-0.20.4/hbase-0.20.4.tar.gz
tar xzf hbase-0.20.4.tar.gz
sudo mv hbase-0.20.4 /usr/lib/; cd /usr/lib; sudo ln -s hbase-0.20.4/ hbase; cd hbase/bin; ./start-hbase.sh
Popularity: 100% [?]
Posted in Сервера.
Tagged with hadoop, hbase, ubuntu, автоматизация.
By Bethrezen
– 15.06.2010
Порождающие шаблоны проектирования – это паттерны, которые абстрагируют процесс создания экземпляра класса. Их можно разделить на два основных типа – порождающие класс и порождающие объект.
Абстрактная фабрика
Абстрактная фабрика(abstract factory) – создает инстанцию одного из взаимосвязанных объектов.
Основной принцип:
- Предоставление интерфейса для создания групп связанных или зависимых объектов без явного указания названия классов
- Иерархия подразумевающая: много различных «платформ», и создание набора «продуктов»
- Оператор new считается вредным
Проблема:
Если приложение будет портироваться, необходимо позаботиться о платформенной совместимости. Примеры платформ: оконная оболочка, операционная система, база данных, графическое API, браузер и так далее. Зачастую проблема кроссплатформенности решается за счет огромного количества логических конструкций типа #ifdef с параметры для поддерживаемой платформы. В итоге эти конструкции плодятся как кролики по всему коду приложения.
Обсуждение:
Provide a level of indirection that abstracts the creation of families of related or dependent objects without directly specifying their concrete classes. The “factory” object has the responsibility for providing creation services for the entire platform family. Clients never create platform objects directly, they ask the factory to do that for them.
04
This mechanism makes exchanging product families easy because the specific class of the factory object appears only once in the application – where it is instantiated. The application can wholesale replace the entire family of products simply by instantiating a different concrete instance of the abstract factory.
05
Because the service provided by the factory object is so pervasive, it is routinely implemented as a Singleton.
Popularity: 12% [?]
Posted in Software engineering.
Tagged with шаблоны проектирования.
By Bethrezen
– 27.04.2010
При проектировании сложного программного обеспечения разработчики часто сталкиваются с проблемами дизайна архитектуры приложения. В результате может возникнуть дублирование кода, нечеткая структура или иерархия компонентов, проблемы при тестировании кода или того хуже – глобальные переменные. Очень хорошо в решении таких проблем помогают так называемые шаблоны проектирования. Некоторые их называют паттернами проектирования, а по-английски это звучит как design patterns.
Continued…
Popularity: 16% [?]
Posted in Software engineering.
Tagged with design patterns.
By Bethrezen
– 27.04.2010
В данной статье мы поговорим о том, как установить nginx на Ubuntu Linux с поддержкой PHP через FastCGI. Таким образом - никакого Apache :-)
Continued…
Popularity: 35% [?]
Pages: 1 2
Posted in Сервера.
Tagged with fastcgi, httpd, nginx, php, ubuntu.
By Bethrezen
– 02.04.2010