Ноя
29
2011
0

[debian] Show installed packages sizes

dpkg-query -W --showformat='${Installed-Size}\t${Package}\n' | sort -nr | less

Links: http://ubuntuforums.org/showthread.php?t=599424

Опубликовал adik в Технотрония | Метки: , ,
мая
09
2011
0

[XEN] Change tap device mac address to prevent change of bridge’s

In XEN 4.0.1-2 package on Debian GNU/Linux 6.0.1 (squeeze):

1. Patch your /etc/xen/scripts/qemu-ifup file

 echo -c 'config qemu network with xen bridge for '
 echo $*
 
+ip link set $1 addr fe:ff:ff:ff:ff:ff
 ifconfig $1 0.0.0.0 up
 brctl addif $2 $1

2. Add /etc/xen/scripts/hotplugpath.sh

SBINDIR="/usr/sbin"
BINDIR="/usr/bin"
LIBEXEC="/usr/lib/xen/bin"
LIBDIR="/usr/lib64"
SHAREDIR="/usr/share"
PRIVATE_BINDIR="/usr/lib64/xen/bin"
XENFIRMWAREDIR="/usr/lib/xen/boot"
XEN_CONFIG_DIR="/etc/xen"
XEN_SCRIPT_DIR="/etc/xen/scripts"
XEN_LOCK_DIR="/var/lock"

http://lists.xensource.com/archives/html/xen-devel/2010-12/msg01302.html

Опубликовал adik в Технотрония | Метки: ,
Ноя
20
2010
--

DomU in Xen 4.0 on Debian squeeze pvops kernel

Check if your kernel was built with:

CONFIG_XEN_BLKDEV_FRONTEND=m
CONFIG_XEN_NETDEV_FRONTEND=m

Add modules to initrd (in DomU)

echo "xen-blkfront" >> /etc/initramfs-tools/modules
echo "xen-netfront" >> /etc/initramfs-tools/modules

Update initrd (in DomU)

update-initramfs -u -k all
Опубликовал adik в Технотрония | Метки: ,
июля
26
2010
--

[debian #552439] drbd8 and linux-2.6.26 at lenny stable

/usr/src/modules/drbd8/drbd/drbd_nl.c: In function ‘drbd_nl_init’:
/usr/src/modules/drbd8/drbd/drbd_nl.c:2403: error: size of array ‘type name’ is negative
/usr/src/modules/drbd8/drbd/drbd_nl.c:2409: warning: passing argument 3 of ‘cn_add_callback’ from incompatible pointer type
ln -s /usr/src/linux-headers-`uname -r`/  /lib/modules/`uname -r`/source
m-a -t build drbd8

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=552439

Опубликовал adik в Технотрония | Метки: ,
Ноя
17
2009
--

Как добавить patch в собираемый deb пакет [Debian Maintainers]

При сборке пакетов, крайне не рекомендуется изменять исходный код. Если нам все-таки необходимо это сделать – пользуемся менеджерами патчей dpatch или quilt.

Using DPatch

1. Устанавливаем dpatch

apt-get install dpatch

2. В список зависимостей Build-Depends, который находится в debian/control, добавляем dpatch
3. Создаем папку:

mkdir debian/patches

4. С помощью команды dpatch-edit-patch создаем наш патч. Утилита откроет консоль с копией исходников. Все сделаные изменения будут собраны в diff.

dpatch-edit-patch 01_our_new_patch

5. Файл debian/patches/00list указывает порядок исполнения. Добавляем название нашего патча в список :

echo 01_our_new_patch >> debian/patches/00list

6. В файл сборки debian/rules добавляем:

include /usr/share/dpatch/dpatch.make
...
build: build-stamp
build-stamp: patch-stamp
    ...
    build stuff here
    ...
clean: unpatch
    ...
    clean stuff here
    ...
...

original link: HowTo use dpatch

Опубликовал adik в Технотрония | Метки: ,
Фев
08
2009
--

Dell/PERC RAID Manage in Debian

Иногда перед счасливыми обладателями серверов DELL стоит необходимость администрирования/мониторинга RAID контроллера без использования всякого рода GUI.

Для PERC 5 и PERC 6 котроллеров под управлением драйвера megaraid_sas используется утилита MegaCli

Для контроллеров SAS 5 и SAS 6 под управлением драйвера mptsas:

MegaCli and smartctl

To get the device ID within the array, say if you know per Dell OpenMange that the drive is in slot 3, query with:

[root@host]# MegaCli -PDInfo -PhysDrv[32:3] -aAll
 
Enclosure Device ID: 32
Slot Number: 3
Device Id: 3
Sequence Number: 13
Media Error Count: 182
Other Error Count: 23
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
Raw Size: 476940MB [0x3a386030 Sectors]
Non Coerced Size: 476428MB [0x3a286030 Sectors]
Coerced Size: 476416MB [0x3a280000 Sectors]
Firmware state: Online
SAS Address(0): 0x1221000003000000
Connected Port Number: 3(path0)
Inquiry Data: ATA     ST3500320AS     SD15            9QM76H5M

From the above, we learn this failed drive is “Device Id”=3, so we can now query it using smartctl to see the full smart info:

[root@host]# smartctl -a -d megaraid,3 /dev/sdb
Опубликовал adik в Технотрония | Метки: , , ,
Окт
09
2008
--

Восстановление программного RAID

Обнаружение ошибки

В случае ошибки промлемный физический том перестаёт использоваться raid-ом, и демон mdadm уведомляет администраторов о происшедшем по почте:

This is an automatically generated mail message from mdadm
running on buki

A Fail event had been detected on md device /dev/md2.

It could be related to component device /dev/sdj2.

Faithfully yours, etc.

P.S. The /proc/mdstat file currently contains the following:

Personalities : [raid1] [raid6] [raid5] [raid4]
md2 : active raid5 sdi2[0] sdl2[3] sdk2[2] sdj2[4](F)
  1463681856 blocks level 5, 64k chunk, algorithm 2 [4/3] [U_UU]

md1 : active raid1 sdk1[0] sdl1[1]
  489856 blocks [2/2] [UU]

md0 : active raid1 sdi1[0] sdj1[1]
  489856 blocks [2/2] [UU]

unused devices:

В данном случае ошибка была обнаружена на устройстве /dev/sdj2, входящем в raid /dev/md2.

(далее…)

Опубликовал adik в Технотрония | Метки: , ,
мая
28
2008
--

Easily build a Debian xen kernel package without PAE

When it comes to building custom parts for my current flavor of Linux distribution I am a bit of a purist and prefer to work within the distributions package management framework. The main reason being is that removal and upgrading of that package is easier and cleaner. With a good package management system like Debian’s it is actually easier than CMMI.

Recently I needed to build a custom Debian kernel for xen without pae extentions but I didn’t want to use a vanilla kernel. I wanted to use the official Debian kernel with its included distribution specific patches. Searching around the net I found many ways of doing it but they ultimately failed for one reason or another. Others worked but were just messy or incomplete. So I developed what I consider the cleanest and simplest way of building the kernel. It is actually not far off the official Debian kernel package building method. Here’s what I did in easy cut’n'paste steps for a fresh Debian Etch system.

  • Login as root or alternatively (and safer) you can use fakeroot.
  • aptitude update
  • aptitude upgrade
  • aptitude install xen-hypervisor-3.0.3-1-i386
  • mkdir debsource
  • cd debsource
  • apt-get source linux-2.6
  • apt-get build-dep linux-2.6
  • cd linux-2.6*
  • sed -i -e “s/-pae//g” debian/arch/i386/xen/defines
  • sed -i -e “s/-pae//g” debian/rules.gen
  • sed -i -e “s/-pae//g” debian/control
  • sed -i -e “s/# CONFIG_NOHIGHMEM is not set/CONFIG_NOHIGHMEM=y/”
    -e “s/^CONFIG_HIGHMEM/#CONFIG_HIGHMEM/”
    -e “s/PAE=y/PAE=n/” debian/arch/config.686-bigmem
  • debian/rules debian/build debian/stamps
  • make -f debian/rules.gen setup-i386-xen-686
  • make -f debian/rules.gen binary-arch-i386-xen-686
  • cd ..
  • dpkg -i linux-modules-2.6.18-6-xen-686_2.6.18.dfsg.1-17etch1_i386.deb
    linux-image-2.6.18-6-xen-686_2.6.18.dfsg.1-17etch1_i386.deb

http://blogs.ittoolbox.com/linux/locutus/archives/easily-build-a-debian-xen-kernel-package-without-pae-22254

Опубликовал adik в Технотрония | Метки: ,
Апр
20
2008
--

How to move a virtual machine from one computer to another

#create a snapshot of the LV drive
/usr/sbin/lvcreate -L5G -s -n vm_test_snap /dev/VolGroup00/vm_test

#turn the snapshop into a file image
dd if=/dev/VolGroup00/vm_test_snap | gzip -9 >/backup/vm_test.dd.gz

#remove the snapshot
/usr/sbin/lvremove /dev/VolGroup00/vm_test_snap

#move the file image

#copy and modify the Xen config file
cp /etc/xen/test /etc/zen/test2
vi /etc/zen/test2 

#change the name of the LV drive to vm_test2

#uncompress the file image into a LV drive
/usr/sbin/lvcreate -n vm_test2 --size 5G VolGroup00
gzip -dc /backup/vm_test.dd.gz | dd of=/dev/VolGroup00/vm_test2

#start the new VM
/usr/sbin/xm create -c test2

Источник: http://quadruple.ca/how-move-virtual-machine-one-computer-another

Опубликовал adik в Технотрония | Метки: ,
Фев
20
2008
--

Установка Debian etch на Linux

Приводится пример установки Дебиана/Ubuntu из под других операционных систем.

Ссылки на первоисточники:

(далее…)

Опубликовал adik в Технотрония | Метки:
Фев
14
2008
--

Сборка Ngnix для Debian/Ubuntu

Оригинал http://deb.wapper.ru/nginx/

Если нужен пакет для testing/unstable или Ubuntu, то его надо будет пересобрать:

   1. Взять .dsc, .diff.gz, .orig.tar.gz
   2. dpkg-source -x этот.dsc
   3. cd в получившийся каталог
   4. dpkg-buildpackage -rfakeroot

после этого полученный пакет поставить обычным образом: dpkg -i nginx_0.4*.deb

Пакет по умолчанию собирается с большинством прибамбасов: fastcgi, imap/pop3, ssl. Для удобства траблшутинга есть также непострипанный бинарник с дебаг-символами: /usr/sbin/nginx.debug. Вся необходимая обвязка тоже есть: инит-скрипт, логротатор, вполне-рабочий конфиг.

Также пакет собирается и работает на Ubuntu Linux и на GNUSolaris.

Такую строку в /etc/apt/sources.list можно использовать для добавления репозитария:

deb http://deb.wapper.ru/nginx/ ./
Опубликовал adik в Технотрония | Метки: ,
Фев
02
2008
--

Обновляем пакеты в стабильном дистрибутиве (debian way)

Оригинал статьи: http://habrahabr.ru/blog/linux/33514.html

a также: http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.ru.html#s-apt-show-versions
PbuilderHowto


Как вы уже наверно заметили в ubuntu, а тем более в debian, после выхода стабильного релиза, обновление пакетов происходит только в случае обнаружения критических ошибок. Это особенно заметно, когда обновление програмы которое вы так долго ждали, выходит спустя несколько дней после выхода вашего любимого дистрибутива. Но как вы уже догадываетесь – это нас не остановит.

Существует множество способов решения этой проблемы, поэтому сейчас мы все и рассмотрим

(далее…)

Опубликовал adik в Технотрония | Метки: ,
Янв
30
2008
--

Как установить Xen 3.2.0 из репозитория на Debian

cd /usr/src
wget http://bits.xensource.com/oss-xen/release/3.2.0/xen-3.2.0.tar.gz
wget http://msinhore.xen-br.org/files/xen/linux-2.6.18-xen.tar.gz

Что нужно для сборки

apt-get install iproute bridge-utils python-twisted gcc binutils make zlib1g-dev python-dev transfig bzip2 screen ssh debootstrap libcurl3-dev
libncurses5-dev x-dev libsdl1.2-dev  bin86 bcc python-pam patch latex-make  qemu qemu-launcher qemuctl graphviz graphviz-dev lvm2 libvncserver-dev
libjpeg62-dev libjpeg62 gettext python-xml gawk tetex-extra tetex-base

apt-get install unifdef

Если архитектура i386

apt-get install libc6-xen

Компиляция гипервизора и ядра

cd /usr/src
tar zxvf xen-3.2.0.tar.gz
tar zxvf linux-2.6.18-xen.tar.gz -C xen-3.2.0
cd xen-3.2.0
hg clone http://xenbits.xensource.com/linux-2.6.18-xen.hg
make dist && make install
depmod 2.6.18.8-xen
update-grub
update-rc.d xend defaults 20 21
update-rc.d xendomains defaults 21 20
mkinitramfs -o /boot/initrd.img-2.6.18.8-xen 2.6.18.8-xen

Оригинал статьи находится: http://wiki.xen-br.org/index.php?title=Compila_xen_etch

Ещё

#!/bin/bash

SOURCE_DIR=/lib/modules/`uname -r`/source
BUILD_DIR=/lib/modules/`uname -r`/build

KERNEL_HEADER_DIRS='i386'
KERNEL_ARCH='i386'
DIR=/usr/src/linux-headers-`uname -r`

##------------------------------------------------------------------------------

cd ${SOURCE_DIR};
(
  find .
    -path './Documentation/*' -prune -o
    -path './arch/*' -prune -o
    -path './include/asm*' -prune -o
    -path './scripts/*' -prune -o
    -path './include/*' -print -o
    ( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Rules.make' ) -print;
  find include/asm-generic -print;
  for i in ${KERNEL_HEADER_DIRS}; do
    find arch/$i
      ( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Rules.make' ) -print;
    find include/asm-$i -print;
  done;
)
|
cpio -pd --preserve-modification-time ${DIR}

##------------------------------------------------------------------------------

mkdir -p "${DIR}/arch/${KERNEL_ARCH}/kernel"
mkdir -p "${DIR}/include"
cp -a ${BUILD_DIR}/{.config,.kernel*,Module.symvers}  "${DIR}"

[ -d "${BUILD_DIR}/arch/${KERNEL_ARCH}/include" ] &&
        cp -a "${BUILD_DIR}/arch/${KERNEL_ARCH}/include" "${DIR}/arch/${KERNEL_ARCH}/include" || :
[ -f "${BUILD_DIR}/arch/${KERNEL_ARCH}/kernel/asm-offsets.s" ] &&
        cp "${BUILD_DIR}/arch/${KERNEL_ARCH}/kernel/asm-offsets.s" "${DIR}/arch/${KERNEL_ARCH}/kernel" || :
[ -f "${BUILD_DIR}/arch/${KERNEL_ARCH}/module.lds" ] &&
        cp "${BUILD_DIR}/arch/${KERNEL_ARCH}/module.lds" "${DIR}/arch/${KERNEL_ARCH}"

cp -a ${BUILD_DIR}/include/config "${DIR}/include"

ln -sf "${DIR}/include/asm-${KERNEL_ARCH}" "${DIR}/include/asm"

cd ${BUILD_DIR};
for dir in linux asm-generic asm-${KERNEL_HEADER_DIRS}; do
        mkdir "${DIR}/include/$dir";
        echo "${BUILD_DIR}/include/${dir}/* ${DIR}/include/$dir"
        cp -a ${BUILD_DIR}/include/${dir}/* ${DIR}/include/$dir
done

cp -a ${SOURCE_DIR}/scripts* ${DIR}
cp -a ${BUILD_DIR}/scripts/* ${DIR}/scripts/

rm ${BUILD_DIR}
ln -sf ${DIR} ${BUILD_DIR}

exit 0
Опубликовал adik в Технотрония | Метки: , ,

Работает на WordPress | Локализация: goodwin.wpbot.ru