Portál AbcLinuxu, 25. dubna 2024 12:49


Dotaz: automaticka oprava vsech disku pri startu

Gilhad avatar 12.7.2011 00:26 Gilhad | skóre: 20 | blog: gilhadoviny
automaticka oprava vsech disku pri startu
Přečteno: 370×
Odpovědět | Admin
Mam box nekde v haji, bez monitoru a klavesnice. Obcas kdyz spadne napeti, tak neprojde test disku pri startu a ceka na Ctrl+D a pomoc uzivatele (ktery tam proste neni). Je nejaky zpusob, jak mu rict, ze opravy disku ma pri startu udelat natvrdo vsechny, ktere ho jen napadnou, bez ohledu na nasledky?

Pokud oprava selze, tak jsem ve stejnem stavu - proste dojedu, vymenim box a doma automaticky preinstaluju . Pokud oprava projde, vyborne, nemusim nikam jezdit. Pokud projde jen castecne, tak to bud pujde opravit na dalku prez ssh, nebo box vymenim a preinstaluju. (Cili nejaka zachrana dat me nezajima, zajima me, abych nemusel jezdit prez pul republiky)
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Max avatar 12.7.2011 01:07 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Toto hodně záleží na filesystému. A pokud se jedná jen o nějaký box, tak tam nelze mountit readonly a aktivní data dočasně uchovávat v ramce?
Zdar Max
Měl jsem sen ... :(
Gilhad avatar 12.7.2011 01:12 Gilhad | skóre: 20 | blog: gilhadoviny
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
v gentoo /etc/init.d/checkroot a checkfs - maji tam flagy natvrdo, takze to tam prepisu a bude.

Aktivnich dat je nekolik desitek giga a z centraly se postupne pridavaji dalsi, takze takhle to nejde. Navic tam bezi databaze a par dalsich legraci, ktere taky zapisuji na disk. Ale zamenit -a za -y by pomoct mohlo. Bud to pujde, nebo ne...
12.7.2011 01:41 jadd | skóre: 34 | blog: Greenhorn
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Ty nemáš /etc/conf.d/fsck ?
Gilhad avatar 12.7.2011 12:00 Gilhad | skóre: 20 | blog: gilhadoviny
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
dival jsem se a nemam. v tech init.d skriptech je natvrdo fsck s parametry
12.7.2011 13:46 jadd | skóre: 34 | blog: Greenhorn
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Tohle je kostra,
# Pass any arguments to fsck.
# By default we preen.
# Linux systems also force -C0 and -T.
# If fsck_args is not specified then Linux systems also use -A
# (and -R if / is rw)
#fsck_args="-p"

# We can also specify the passno in /etc/fstab to check
# If you multiplex fsck (ie ln -s fsck /etc/init.d/fsck.late) then you can
# do an fsck outside of the normal scope, say for /home.
# Here are some exampes:-
#fsck_passno="=1 =2"
#fsck_passno=">1"
#fsck_passno="<2"

# Most modern fs's don't require a full fsck on boot, but for those that do
# it may be advisable to skip this when running on battery.
# WARNING: Do not turn this off if you have any JFS partitions.
fsck_on_battery="YES"

# fsck_shutdown causes fsck to trigger during shutdown as well as startup.
# The end result of this is that if any periodic non-root filesystem checks are
# scheduled, under normal circumstances the actual check will happen during
# shutdown rather than at next boot.
# This is useful when periodic filesystem checks are causing undesirable
# delays at startup, but such delays at shutdown are acceptable.
fsck_shutdown="NO"
12.7.2011 14:23 jadd | skóre: 34 | blog: Greenhorn
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Ne natvrdo ale výchozí v /etc/conf.d/ ".d = daemon" to mužeš změnit.
Gilhad avatar 13.7.2011 23:01 Gilhad | skóre: 20 | blog: gilhadoviny
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
u me vypada /etc/init.d/checkfs takto (ty parametry tam jsou uvedene natvrdo). Je to starsi gentoo, ale chodi spolehlive a updatovat cely system na nekolika stovkach pocitacu bez durazneho duvodu se mi nechce. Jeste tak dukladne otestovat nejakou novejsi verzi a davat ji na nove/repasovane stroje (a pak to udrzovat pro dve verze OS dokud stara nevymre). Ale dokud ta stara dela co ma, tak plnou vymenu nikdo nezaplati.

#!/sbin/runscript
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

depend() {
	need checkroot modules
}

start() {
	local retval=0

	# Setup dm-crypt mappings if any
	start_addon dm-crypt

	if [[ -f /fastboot ]] || [[ -n ${CDBOOT} ]] ; then
		rm -f /fastboot 2>/dev/null || : # ignore ro errors #267094
	else
		ebegin "Checking all filesystems"
		if [[ -f /forcefsck ]] ; then
			ewarn "A full fsck has been forced"
			fsck -C -T -R -A -a -f
			retval=$?
			rm -f /forcefsck
		else
			fsck -C -T -R -A -a
			retval=$?
		fi
		if [[ ${retval} -eq 0 ]] ; then
			eend 0
		elif [[ ${retval} -eq 8 ]] ; then
			ewend 1 "Operational error, continuing"
			# Everything should be ok, so return a pass
			return 0
		elif [[ ${retval} -ge 1 && ${retval} -le 3 ]] ; then
			ewend 1 "Filesystem errors corrected."
			# Everything should be ok, so return a pass
			return 0
		else
			if [[ ${RC_FORCE_AUTO} == "yes" ]] ; then
				eend 2 "Fsck could not correct all errors, rerunning"
				fsck -C -T -R -A -y
				retval=$?
			fi

			if [[ ${retval} -gt 3 ]] ; then
				eend 2 "Fsck could not correct all errors, manual repair needed"
				sulogin ${CONSOLE}
			fi
		fi
	fi
}


# vim:ts=4

13.7.2011 23:32 jadd | skóre: 34 | blog: Greenhorn
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Pomůže tohle ?
12.7.2011 07:05 Petr Svoboda | skóre: 13 | blog: * | Příbram
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Kdysi, alespon v distribucich, ktere jsem pouzival, fungovalo vytvoreni souboru /forcefsck pred restartem. Ale uz jsem to dlouho nikde nezkousel. ;-)
Gilhad avatar 12.7.2011 12:03 Gilhad | skóre: 20 | blog: gilhadoviny
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Problem je spis opacny - byl bych rad, kdyby probihalo fsck v nejmensi mozne mire, ale pokud ma problemy, aby se s tim nejak zkusilo vyporadat samo a neptalo se uzivatele. ty boxy jsou proste otloukanci, restart zazijou malokdy, vetsinou proste vypadne napeti, nekdo vytahne snuru ze zasuvky, nebo tak, jinak proste jedou furt
12.7.2011 14:04 d'areback
Rozbalit Rozbalit vše Re: automaticka oprava vsech disku pri startu
Pod Redhatem/Centosem existuje moznost vytvorit soubor /etc/sysconfig/autofsck, ktery rika, co se ma v podobnych pripadech dit.

Tohle zajisti, ze v pripade necisteho ukonceni systemu probehne fsck a na vsechny pripadne dotazy, zda ma nalezene nekonzistence opravit bude odpovezeno "yes"

AUTOFSCK_DEF_CHECK=yes
PROMPT=yes
AUTOFSCK_TIMEOUT=5
AUTOFSCK_OPT="-y"
Rekl bych, ze je to presne to, co poptavate. Sam to tak pouzivam na vzdalenych boxech, kde nikdo nesedi (i s rizikem, ze tim vynucenim oprav u nejake vetsi nekonzistence to muze uplne zmrvit disk - je proste treba zalohovat)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.