V nasej obci a okoli opravujem pocitace a instalujem na nich vyhradne Linux. Stava sa mi taka vec, ze po dlhsom case sa vybije 3V bateria na doske a systemovy cas sa nastavi na cas v case navrhu BIOSu, co je peknych par rokov dozadu a Linux nenabehne, kedze tento cas je omnoho mladsi ako cas instalacie Linuxu, zastavi sa nabeh Linuxu s nejakou chybnou hlaskou...
Tak som vymyslel taku vec, ze "zalohujem" "vcerajsi cas" do suboru prikazom date +%m%d%H%M%Y > cas, ktory sa vykonava po prikaze rdate -s ntps1-2.uni-erlangen.de || rdate -s time.ien.it && hwclock --systohc a zvlast sa uklada aj rok prikazom date +%Y > rok Na zaciatku nabehovania systemu sa porovnava BIOSacky rok so "zaloznym rokom" if [ "`date +%Y`" -ge "`cat rok`" ]; then echo "Datum 0K"; else date `cat cas` ; fi
a ked je BIOSacky rok starsi, tak sa prikazom date `cat cas` nastavi vcersajsi cas a rok. Toto by som chcel dat niekam hned na zaciatok, kym este Linux nabieha, skusal som do /boot/grub/grub.cfg no tam to este nefunguje.... Vedel by niekto poradit kam to vlozit, kde este system nabieha ?
Možno to bude hlúposť čo napíšem, ale keď nastavíš v biose čas a dátum, tak systém si zoberie čas z biosu. Aspoň tak to prebehlo v mojom prípade.
Tá baterka čo držala hodijky na doske zvykla byť CR2035. Ikea ich predávala 8 za cca 2E. Nebolo by to lepšie riešenie?
Srry, CR2032. Málokedy tam je niečo iné, ale tie mincové baterky má každý servis v zálohe. Dávajú sa do kadejakých mini diaľkových, do elektronických váh a tak. Ale vždy je to na nej napísané. Takže otvoriť skriňu toho desktopu, pozrieť a vymeniť.
Mam notebook s Fedorou, kt. nema baterku. Notebook je firemny, preto nebudem notebook rozoberat kvoli tomu.
Prakticke skusenosti. Hned po instalacii som si nainstaloval NTP deamona. Ten nastavuje cas podla siete. Z praktickych skusenosti si ale vsimol na notebooku, ze ak nema aktualny cas, tak cas posledne spustenia. Tak si ja pamatem/viem. Neviem, ci si uklada pred vypnutim a v pripade defaulneho casu nastavi ten, alebo to je BIOSom (uklada si cas vypnutia) ci nejak baterkou.
Pri zapnuti kontroluje disky. Ak mas starsi cas ako je teraz, zahlasi hlasku ze pripajas odiel (pripojeni) z buducnosti. A nieco robi nasledne na disku. Chapem, ze ak pripadne moze aj zastavit bootovanie. Daj foto obrazovky.
Baterka je dobry navrh. (Ak.)
V grube cas nenastavis. Musis v systemd. Bezny skript sa nastavuje takto. Ale musis si zistit, ake parametre, aby sa spustala medzi prve, ak nie prve. Problem budes musiet vyriesit, najlepsie riesenie, aby sa to spustalo pred pripajanim odiela. Takze budes musiet zistit, ako nastavit ten konfigurak na tvoj pozadovani ucel. Odiel systemu sa totiz najprv pripaja iba na citanie. Zrejme tu skontroluje existenciu kernel module priecinku, ak nie nasledne nejake nacita, ak treba pri botoovani. Skontroluje ci korektne odpojene. Ak nie, da opravit chyby a potom odiel pre-pripoji na citanie/zapis. Pripadne by si to mohol nastavit v RAM disku pri bootovani.
Ako ten notebook ma baterku, ale nerobi na 100% to co ma, cize ratam s nou akoby tam nebola.
Brať čas z NTP servera je správne riešenie,
mno nesúhlasím s Fedorou a systemd, to vie Linux enviroment kurwa roky a nepotrebuje na to skurwený blob.
V redhate vymysleli stroj času. Úúužas :-)
1. Ale Ti uzivatelia si tu baterku sami nevymenia, ani asi nevedia, ze tam nieco take je. 2. Ak sa nastavi cas v BIOSe a baterka je stale vybita, pocitac aj tak (ak sa vypina od 230V co odporucam) nebezia hodiny na doske, cas sa nepocita, takze sa nastavi ten vychodzi cas. 3. NTP demon sa rozbehne az ked nabehuje system a on nenabehne, zastavi sa s chybovou hlaskou... Preto to chcem dat hned na zaciatok....
To by si ale mal dať ešte pred pripojením disku, teda do initrd. A už vidím ako pri vypínaní robíš rebuild initrd. Preto som navrhoval výmenu gombíkovej baterky. Ajtak máš tie desktopy pri inštalácii pod rukami, tak prečo sa trápiť ...
PS niečo podobné sa riešilo pri rPi ktoré nemalo hodinky vôbec.
Preco rebuild? V initrd mu staci citat ten cas (dohodnuty subor na nejakom FS, trebars /boot) a nastavit. Resp. davat .conf GRUB vzdy zapisovat cas (hm, mozno problem pri update) a v inird by si precital parametre jadra. Pri vypinani riadneho systemu si vzdy ulozi cas.
Zamysli sa nad tým, kedy sa pripájajú FS a pochopíš. Inak hento je klasický problém starých desktopov. Tá mincová lítiovka je krásne viditeľná na doske a vydrží okolo 5 rokov. Vymeniť ju pri prefúknutí od prachu a prepastovaní je záležitosť pár sekúnd, a ceny za materiál okolo 0.20E až 2E.
Notebooky takýto problém zvyknú mať tiež, ale tam je jej dostupnosť obtiažnejšia.
Moznost cisto c. 2. Precitat ako RAW z disku. Tj. mat definovany offset, na kt. sa bude furt zapisovat tento udaj a ides. Offset bude na obsah suboru, kt. sa bude pri zapisovani udajov iba pozicne prepisovat.
To je v čase žurnálovacích FS zaujímavým generátorom náhodných čísel.
Zurnal sa da na FS (ext3/4) vypnut, alebo pouzit no-zurnal FS.
Namiesto baterky za pár centov bude používať FS bez žurnálu. To znie logicky. Priam tak logicky, že z podobného dôvodu začali vyrábať modul hodiniek s baterkou ako príslušenstvo pre RPi.
tak po dlhej dobe tu mame prokopa a opat jeho genialne napady na urovni. takze miesto toho, aby tento problem vyriesil jedinym moznym a jedinym spravnym sposobom (vymenou baterky), tak vymysla ako z pracky vyrobit pristavaciu plochu pre rohliky.
a samozrejme k tomu bonusy:
- V nasej obci a okoli opravujem pocitace - chudaci spoluobcania
- skusal som do /boot/grub/grub.cfg - tu je zjave, ze vobec netusi, co robi
- ak sa vypina od 230V co odporucam - hhh...?
Niektoré z novších notebookov ani malú baterku nemajú. Takže za 5 rokov bude veľká v odpade. Vyvaliť do 50€ za veľkú kôli „správnemu času“ na výmenu do starého stroja, kurva to je obchodná politika pre tie koncerny nenažraté. No a ten linux kam speje, keď bez správneho času nenabootuje ?
Mám NB ktorý má cez 10 rokov, a baterku na hodiny tiež nemá. Má ln kondík čo ju udrží pre potreby výmeny baterky. Keď sa mu vyšťaví hlavná baterka, tak zabudne čas. Nič nové na svete.
A čo je to za linux, tiež mám notebook bez baterky veľkej aj malej a mne linux funguje.
Ten Linux bol PCLinuxOS v ktorom sa to stavalo a menit tu baterku nemozem, lebo nie som doma a oni si to vymenit nevedia.
Teraz niesi doma, ale asi sa tam stavíš keď budú noci naozaj dlhé.
Ak to chceš mať v drub.cfg, tak to prepracuj. Grub má na to date.mod.
A ak to chceš mať ako štartovaciu službu, tak si skontroluj či máš v PCLOS možnosť vykonávať rc.local. Tú možnosť AFAIK nevyhadzovali ani v moderných distrách so systemd.
PS: Podobnú vec som riešil pri mojom prastarom NB ktorý nemá baterku na hodinkách, a plne sa spolieha na bežné napájanie. Ale vykašlal som sa na to.. Používam ho len ako muzeálny exponát. A pri občasnom štarte s vybitou baterkou mi nevadí ho prvý krát nakopnúť s parametrom init=/bin/bash, a nastaviť približný dátum cez príkaz date. Po následnom reštarte je OK. Odhadom by mu stačilo aj keby dostal pri štarte niečo novšie ako 1.1.1970.
Bez približne korektného dátumu mi štartuje do čiernej obrazovky.
rc.local je defaulne vypnute, treba cez systemctl povolit pouzivanie.
Nuž pokiaľ nemá povolené rc-local.service, tak je to treba povoliť. V Debiane a Ubuntu to bolo povolené od výroby, ak bol ten RC.LOCAL správne prístupný. Ale Mandrake som nevidel už kopec rokov, a PCLOS z neho vychádzajúci taktiež.
Nuž pokiaľ nemá povolené rc-local.service, tak je to treba povoliť. V Debiane a Ubuntu to bolo povolené od výroby, ak bol ten RC.LOCAL správne prístupný. Ale Mandrake som nevidel už kopec rokov, a PCLOS z neho vychádzajúci taktiež.
Mas pravdu, defaulne je povolene. Kukam teraz na debian.
U mňa je PClinuxOS na popredných priečkach najhorších distier.
Normálne distro si berie cas z NTP, jediná podmienka je, mať prístup na internet pred zapnutím.