Você não está autenticado.

Anúncio

Arch Linux Brasil está precisando de sua colaboração para realizar o pagamento do domínio e do host, para colaborar, realizar doações via paypal.

Para mais informações: contato at archlinux-br.org.

#1 30/07/2009 19:05:47

maltz
Membro
De: manaus
Registrado: 21/01/2009
Mensagens: 15

[DICA] boot em 8 segundos com finit-arc

Estava procurando uma distro com o boot mais veloz que pudesse ser. Já havia visto algumas coisas, lido outras, testado o slitaz que me entrega o X em 11 segundos aproximadamente. Mas... Nenhuma das coisas que eu testei havia sido realmente uma boa alternativa.
Enfim encontrei alguns topicos em alguns foruns e alguns artigos na internet falando dofinit-arc. Esse pacote que ainda é beta ou alfa(não lembro agora) promete ser capaz de bootar o arch em 8 segundo, talvez até 5 segundos.
Fiquei bem impressionado e fui testar o bendito pacote. Eu medi o tempo antes com o bootchart e meu arch bateu 22segundos pra inicializar. Ele cru, acabado de ser instalado.
Dai só instalei o bendito do finit-arc e configurei somente o que era necessário para ele funcionar. Sem saber ao certo o que eu tava fazendo. Mas para minha surpresa o tempo caiu de 22 para 11 segundos.
Agora vou começar a brincar com ele. Quando eu tiver maiores detalhes eu aviso.
Para quem quiser testa-lo também o link que ensina a instalar e configurar é esse daqui:

http://foro.archlinux.cl/viewtopic.php?id=47

tá em espanhol mas não é dificil de entender!

Última edição por maltz (18/08/2009 23:45:03)

Offline

#2 31/07/2009 06:26:50

920608
Membro
Registrado: 26/11/2008
Mensagens: 658

Re: [DICA] boot em 8 segundos com finit-arc

Poxa, legal mesmo. Se enfrentar algum problema, relate já que está testando.

Offline

#3 17/08/2009 20:45:13

maltz
Membro
De: manaus
Registrado: 21/01/2009
Mensagens: 15

Re: [DICA] boot em 8 segundos com finit-arc

Para quem ficou curioso mas acabou não acessando o link...

Para instalar o finit-arc você precisa baixar o pacote no aur e instala-lo... Você pode fazer isso atraves do yaourt:

#yaourt -Sy finit-arc

Depois de instalá-lo você precisa fazer algumas modificações no sistema:
Primeiro faça um backup do /etc/rc.sysinit

#mv /etc/rc.sysinit /etc/rc.sysinit.bkp

Agora crie um novo /etc/rc.sysinit com o seguinte conteudo:

#!/bin/bash
#
# /etc/rc.sysinit
#

. /etc/rc.conf
. /etc/rc.d/functions

echo " "
printhl "Arch Linux - Speedup boot"
printsep

#**************************** WARNING ******************************
# If you're using initramfs for your kernel, uncomment steps 5 and 17
# To improve boot speed it's recommendend to make a static kernel
# without modules and without initramfs.
#
# MAKE STEP 2
# Type in a term from root: ls -l /dev | grep sda
# you'll receive the list of /dev/sda devices
# make your /dev/sda devices in step 2 like the example
#*******************************************************************

# STEP 1 - mount /proc, /sys and our RAM /dev
/bin/mount -n -t ramfs none /dev
/bin/mount -n -t proc none /proc
/bin/mount -n -t sysfs none /sys

# STEP 2 - make static sda nodes for start udevadm --settle in background
/bin/mknod /dev/sda b 8 0
/bin/mknod /dev/sda1 b 8 1
/bin/mknod /dev/sda2 b 8 2
/bin/mknod /dev/sda3 b 8 3
/bin/mknod /dev/sda4 b 8 4
#...5...6..etc..(from your fdisk -l)

# STEP 3 - copy static device nodes to /dev
/bin/cp -a /lib/udev/devices/* /dev/

# STEP 4 - enable rtc access
/sbin/modprobe rtc-cmos >/dev/null 2>&1
if [ -n "$RTC_MAJOR" ]; then
/bin/mkdir /dev/misc/
/bin/mknod /dev/misc/rtc0 c $RTC_MAJOR 0
/bin/ln -s /dev/misc/rtc0 /dev/rtc
fi

# STEP 5 - Load modules from the MODULES array defined in rc.conf
#if ! [ "$load_modules" = "off" ]; then
# if [ -f /proc/modules ]; then
# stat_busy "Loading Modules"
# for mod in "${MODULES[@]}"; do
# if [ "$mod" = "${mod#!}" ]; then
# /sbin/modprobe $mod
# fi
# done
# stat_done
# fi
# if [ -d /proc/acpi ]; then
# stat_busy "Loading standard ACPI modules"
# ACPI_MODULES="ac battery button fan processor thermal"
# k="$(echo $BLACKLIST ${MOD_BLACKLIST[@]} | /bin/sed 's|-|_|g')"
# j="$(echo ${MODULES[@]} | /bin/sed 's|-|_|g')"
# #add disabled MODULES (!) to blacklist - much requested feature
# for m in ${j}; do
# [ "$m" != "${m#!}" ] && k="${k} ${m#!}"
# done
# # add disablemodules= from commandline to blacklist
# k="${k} $(echo ${disablemodules} | /bin/sed 's|-|_|g' | /bin/sed 's|,| |g')"
# for n in ${ACPI_MODULES}; do
# if ! echo ${k} | /bin/grep "\" 2>&1 >/dev/null; then
# /sbin/modprobe $n > /dev/null 2>&1
# fi
# done
# stat_done
# fi
#fi

# STEP 6 - set hardware clock for fs check
{
HWCLOCK_PARAMS="--hctosys"
if [ "$HARDWARECLOCK" = "UTC" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc"
else
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime"
fi
if [ "$USEDIRECTISA" = "yes" -o "$USEDIRECTISA" = "YES" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --directisa"
fi
if [ -f /etc/localtime ]; then
/sbin/hwclock $HWCLOCK_PARAMS --noadjfile
fi
} &

echo > /proc/sys/kernel/hotplug

# STEP 7 - start udevadm trigger and udevd in background
{
if [ -x /sbin/udevadm -a -d /sys/block ]; then
stat_busy "Starting UDev Daemon"
/sbin/udevd --daemon &
/sbin/udevadm trigger &
stat_done
else
status "Using static /dev filesystem" true
fi
} &

# STEP 8 - start udevadm settle in background
/sbin/udevadm settle &

# STEP 9 - make lo interface
{
if [ -d /sys/class/net/lo ]; then
stat_busy "Bringing up loopback interface"
/sbin/ifconfig lo 127.0.0.1 up
if [ $? -ne 0 ]; then
stat_fail
else
stat_done
fi
fi
} &

# STEP 10 - mounting root read-only
status "Mounting Root Read-only" /bin/mount -n -o remount,ro / &

# STEP 11 - filesystem check
FORCEFSCK=
[ -f /forcefsck ] && FORCEFSCK="-- -f"
NETFS="nonfs,nonfs4,nosmbfs,nocifs,nocodafs,noncpfs,nosysfs,noshfs,nofuse,nofuseblk"
fsck_reboot() {
echo "Automatic reboot in progress..."
/bin/umount -a
/bin/mount -n -o remount,ro /
/sbin/reboot -f
exit 0
}
if [ -x /sbin/fsck ]; then
stat_busy "Checking Filesystems"
FSCK_OUT=/dev/stdout
FSCK_ERR=/dev/null
/sbin/fsck -A -T -C -a -t $NETFS $FORCEFSCK >$FSCK_OUT 2>$FSCK_ERR
fsckret=$?
if [ ${fsckret} -gt 1 ]; then
stat_fail
fi
if [ $((${fsckret}&2)) -eq 2 ]; then
echo
echo "********************** REBOOT REQUIRED *********************"
echo "* *"
echo "* The system will be rebooted automatically in 15 seconds. *"
echo "* *"
echo "************************************************************"
echo
/bin/sleep 15
fsck_reboot
fi
if [ ${fsckret} -gt 1 -a ${fsckret} -ne 32 ]; then
echo
echo "***************** FILESYSTEM CHECK FAILED ****************"
echo "* *"
echo "* Please repair manually and reboot. Note that the root *"
echo "* file system is currently mounted read-only. To remount *"
echo "* it read-write type: mount -n -o remount,rw / *"
echo "* When you exit the maintenance shell the system will *"
echo "* reboot automatically. *"
echo "* *"
echo "************************************************************"
echo
/sbin/sulogin -p
fsck_reboot
fi
stat_done
fi

# STEP 12 - remount root and mount local file system
stat_busy "Mounting Local Filesystems"
/bin/mount -n -o remount,rw /
/bin/rm -f /etc/mtab*
/bin/mount -o remount,rw /
if [ -e /proc/mounts ]; then
/bin/grep -e "/proc " -e "/sys " -e "/dev " /proc/mounts >> /etc/mtab
fi
/bin/mount -a -t $NETFS
stat_done

# STEP 13 - activating swap partition
status "Activating Swap" /sbin/swapon -a &

# STEP 14 - set urandom
{
RANDOM_SEED=/var/lib/misc/random-seed
if [ -f $RANDOM_SEED ]; then
stat_busy "Initializing Random Seed"
/bin/cat $RANDOM_SEED > /dev/urandom
stat_done
fi
} &

# STEP 15 - removing temp files
stat_busy "Removing Leftover Files"
/bin/rm -f /etc/nologin &>/dev/null
/bin/rm -f /etc/shutdownpid &>/dev/null
/bin/rm -f /var/lock/* &>/dev/null
/bin/rm -rf /tmp/* /tmp/.* &>/dev/null
/bin/rm -f /forcefsck &>/dev/null
(cd /var/run && /usr/bin/find . ! -type d -exec /bin/rm -f -- {} \; )
: > /var/run/utmp
/bin/chmod 0664 /var/run/utmp
/bin/mkdir /tmp/.ICE-unix && /bin/chmod 1777 /tmp/.ICE-unix
/bin/mkdir /tmp/.X11-unix && /bin/chmod 1777 /tmp/.X11-unix
stat_done

# STEP 16 - set rc.conf hostname
if [ "$HOSTNAME" != "" ]; then
status "Setting Hostname: $HOSTNAME" /bin/hostname $HOSTNAME &
fi

# STEP 17 - load modules depends
#status "Updating Module Dependencies" /sbin/depmod -A &

# STEP 18 - set lang
{
: >/etc/profile.d/locale.sh
/bin/chmod 755 /etc/profile.d/locale.sh
[ -z "$LOCALE" ] && LOCALE="[email protected]"
stat_busy "Setting Locale: $LOCALE"
echo "export LANG=$LOCALE" >>/etc/profile.d/locale.sh
stat_done
} &

# STEP 19 - Save our dmesg output from this boot
if [ -f /var/log/dmesg.log ]; then
/bin/rm /var/log/dmesg.log &
fi
/bin/dmesg > /var/log/dmesg.log &

Depois disso feito altere o /boot/grub/menu.lst

#(0) Arch Linux
title Arch Linux SpeedBoot
kernel /boot/vmlinuz26 root=/dev/sda2 ro vga=791 splash resume=/dev/sda1 init=/sbin/finit-arc
initrd /boot/kernel26.img

OBS: o Finit-arc não suporta aqueles UUID para as partições. VOCÊ deve usar o nome padrão usado no linux como /dev/sda1. Também altere o arquivo /etc/fstab

Altere o arquivo /etc/fstab

UUID=24f28fc6-717e-4bcd-a5f7-32b959024e26              /             ext4      defaults,noatime        0      1
UUID=03ec5dd3-45c0-4f95-a363-61ff321a09ff              /home         ext4      defaults,noatime        0      2
UUID=4209c845-f495-4c43-8a03-5363dd433153              swap          swap      defaults                0      0

Para:

/dev/sda1              /             ext4      defaults,noatime        0      1
/dev/sda2              /home         ext4      defaults,noatime        0      2
/dev/sda3              swap          swap      defaults                0      0

Finalmente edite/crie o arquivo /etc/finit.conf (Confeço que não criei um usei o que tinha no site mas funcionou bem)

##Set user on "login_manager" if you want access
##in a console login manager or GDM,KDM
#user login_manager

##mountdevices before udev (DONT REMOVE IT!)
mountdev

##modules that you want load
#module intel_agp
#module agpgart

##filesystem device that you want check
check /dev/sda2
check /dev/sda3 

##hostname
host arch_msdark

##startx command
startx /bin/bash --login -c /usr/bin/startx

E por ultimo o arquivo /usr/sbin/services.sh

#!/bin/sh

#Starts udev events
/sbin/udevd --daemon &>/dev/null &
/sbin/udevadm trigger &>/dev/null &
/sbin/udevadm settle &>/dev/null &

#Make swap (not for ssd)
/sbin/swapon -a &

#Starting background daemons
/etc/rc.d/syslog-ng start &>/dev/null &
/etc/rc.d/hal start &>/dev/null &
/etc/rc.d/laptop-mode start &>/dev/null &
/etc/rc.d/alsa start &>/dev/null &
/etc/rc.d/wicd start &>/dev/null &
/etc/rc.d/fam start &>/dev/null &
/etc/rc.d/klogd start &>/dev/null &
/etc/rc.d/crond start &>/dev/null &

E pronto. Reinicie seu PC e aproveite... O meu bateu 8.36 segundo o bootchart.
Vou postar o grafico para você verem assim que eu encontra-lo.
http://wp.me/pCypa-1N

Última edição por maltz (14/10/2009 00:41:14)

Offline

#4 18/08/2009 18:45:16

corvolino
Admin
De: Bahia
Registrado: 19/08/2007
Mensagens: 1.659
Website

Re: [DICA] boot em 8 segundos com finit-arc

coloque [DICA] no nome do topic x)


corvolino ~  archlinux i686

* http://corvolinopunk.wordpress.com  / @corvolinopunk

Offline

#5 20/08/2009 04:44:45

Bluray
Membro
Registrado: 16/08/2009
Mensagens: 18

Re: [DICA] boot em 8 segundos com finit-arc

No meu caso  alguém podia-me dizer como fica   o /boot/grub/menu.lst ?


 # Config file for GRUB - The GNU GRand Unified Bootloader
# /boot/grub/menu.lst

# DEVICE NAME CONVERSIONS 
#
#  Linux           Grub
# -------------------------
#  /dev/fd0        (fd0)
#  /dev/sda        (hd0)
#  /dev/sdb2       (hd1,1)
#  /dev/sda3       (hd0,2)
#

#  FRAMEBUFFER RESOLUTION SETTINGS
#     +-------------------------------------------------+
#          | 640x480    800x600    1024x768   1280x1024
#      ----+--------------------------------------------
#      256 | 0x301=769  0x303=771  0x305=773   0x307=775
#      32K | 0x310=784  0x313=787  0x316=790   0x319=793
#      64K | 0x311=785  0x314=788  0x317=791   0x31A=794
#      16M | 0x312=786  0x315=789  0x318=792   0x31B=795
#     +-------------------------------------------------+
#  for more details and different resolutions see
#  http://wiki.archlinux.org/index.php/GRUB#Framebuffer_Resolution 

# general configuration:
timeout   5
default   0
color light-blue/black light-cyan/blue

# boot sections follow
# each is implicitly numbered from 0 in the order of appearance below
#
# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line.
#
#-*

# (0) Arch Linux
title  Arch Linux
root   (hd0,0)
kernel /vmlinuz26 root=/dev/disk/by-uuid/48f5d3c1-aa7f-42b8-9a85-513655b400cd ro
initrd /kernel26.img

# (1) Arch Linux
title  Arch Linux Fallback
root   (hd0,0)
kernel /vmlinuz26 root=/dev/disk/by-uuid/48f5d3c1-aa7f-42b8-9a85-513655b400cd ro
initrd /kernel26-fallback.img

# (2) Windows
#title Windows
#rootnoverify (hd0,0)
#makeactive
#chainloader +1
 

este é o meu fstab

 # 
# /etc/fstab: static file system information
#
# <file system>        <dir>         <type>    <options>          <dump> <pass>
none                   /dev/pts      devpts    defaults            0      0
none                   /dev/shm      tmpfs     defaults            0      0

#/dev/cdrom             /media/cd   auto    ro,user,noauto,unhide   0      0
#/dev/dvd               /media/dvd  auto    ro,user,noauto,unhide   0      0
#/dev/fd0               /media/fl   auto    user,noauto             0      0

/dev/sda1 /boot ext2 defaults 0 1
/dev/sda2 swap swap defaults 0 0
/dev/sda3 / ext4 defaults 0 1
/dev/sda4 /home ext4 defaults 0 1 

Última edição por Bluray (20/08/2009 04:49:11)

Offline

#6 24/08/2009 17:56:20

caarlos0
Membro
De: Medianeira / Mal. Cdo. Rondon
Registrado: 22/05/2009
Mensagens: 61
Website

Re: [DICA] boot em 8 segundos com finit-arc

nuss, muito rápido..
não medi o antes/depois, mas acho que deu uns 10 segundo de diferença, no mínimo yikes


UP


Carine eu te amo <3

publicons

Offline

#7 24/08/2009 19:21:51

willianholtz
Membro
De: Três Barras - SC
Registrado: 23/08/2009
Mensagens: 383

Re: [DICA] boot em 8 segundos com finit-arc

hum interessante, vou me aventurar mais tarde, se realmente melhorar, vai ser um foguete! mas antes tenho de estudar um pouquinho sobre ele!


Vostro 1520 = CPU:Core 2 Duo P8600 2.4GHz 3MB | GPU:NVidia GeForce 9300M GS de 512MB | HD: 360GB | RAM:4GB | Arch-Linux

Offline

#8 13/10/2009 23:34:10

maltz
Membro
De: manaus
Registrado: 21/01/2009
Mensagens: 15

Re: [DICA] boot em 8 segundos com finit-arc

Acho que o teu fica assim cara!

# (0) Arch Linux
title  Arch Linux
root   (hd0,0)
kernel /vmlinuz26 root=/dev/sda3 ro
initrd /kernel26.img

Última edição por maltz (13/10/2009 23:35:06)

Offline

Rodapé do site