abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 4
    včera 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 7
    včera 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    21.5. 21:33 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    21.5. 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    21.5. 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 0
    21.5. 11:33 | Nová verze

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

    Ladislav Hagara | Komentářů: 0
    21.5. 05:11 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (7%)
     (3%)
     (16%)
     (26%)
    Celkem 1692 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    26.12.2009 18:17 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: formátování u blogů

    Jinak pozor v odpovídání na příspěvky ten text v příloze projde, neprojde u mě pouze v blogu.

    Sem ho vložím OK akorát ho to trochu zmrší

    Jak jsem stavěl HTPC

    Protože mi nevyhovoval můj rekordér tak jsem se rozhodl postavit si vlastní, neboť i kupované mi nevyhovovaly z důvodu buď velké ceny a nebo z důvodu programování (málo pozic, nemožné některé kombinace atd....)

    Takže na čem to postavit aby to bylo levné a použitelné?

    Po prohlédnutí různých MB jsem se rozhodl pro ASUS AT3N7A-I kterou jsem zavřel s TV kartou AverTV Hybrid+FM PCI A16D kterou už jsem měl koupenou. Vše jsem to vestavěl do skříně s 200W zdrojem a zde nastal první problém, dle manuálu od MB tato deska potřebuje 400W zdroj ! A nebo aspoň na větvi +12V zdoj co dodá 15A což můj nesplňuje dodá pouze 10A ovšem to mě neodradilo a seskládal jsem to dohromady s tím že pokud s toho nebudu ždímat maximum a připojovat hromadu věcí tak by to zdroj měl utáhnout.

    No zatím to šlape ovšem co za OS?

    No než jsem tam nainstaloval linux tak jsem vyskoušel windows, měl jsem windows visty basic 32b které nechodily nic moc, instalace windows XP tak to chodilo o hodně rychleji, ovšem SW se mi nepozdával tak jsem přikročil k instalaci linuxu.

    Takže co tam nainstalovat no rozhodl jsem se že vyskouším mythbuntu ovšem to se mi nepovedlo rozchodit a nějak jsem nepátral proč a odložil jsem ho. No a rozhodl jsem se nainstalovat svoji oblíbenou distribuci Fedora 11 64b.

    No po instalaci jsem sprovoznil TV kartu a pomocí mencoderu nahrávám OK ovšem co s toho když budu chtít nahrát něco když nejsem doma?

    No protože pro HTCP nic moc není tak jsem se rozhodl že vyskouším mythtv.

    Ovšem pod fedorou jsem to taky nerozchodil, lépe řečeno rozchodil i naladil analogové programy ovšem jak jsem je chtěl přepnout v mythtv tak to hodilo vždy chybu zobrazení.

    Takže jsem se na to vykašlal a budu nahrávat přímo pomocí mencoderu a cronu.

    Toto má několik úskalí, zatím do cronu zadávám vše ručně pomocí crontab -e a napsal jsem si skrypt který provede záznam, nazval jsem ho záznam a umístil do svého domovského adresáře do složky bin.

    Soubor zaznam v /home/petr/bin

    #!/usr/bin/perl
    
    die "$0 má špatný počet parametrů.\n\nSprávně má být:\n$0 Kanál norma délka_záznamu\n$0 E5 PAL-DK 01:00:00\n\n" if @ARGV != 3;
    
    
    $soubor_avi=`LC_TIME="cs_CZ.UTF-8" date +%A-%d.%m.%Y-%H:%M.avi`;
    
    if ( not (`ps -A | grep "mencoder"` or `ps -A | grep "mplayer"`)) { system "mencoder tv://$ARGV[0] -tv driver=v4l2:norm=$ARGV[1]:input=0:alsa:adevice=hw.1,0:audiorate=32000:forceaudio:immediatemode=0 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=3000 -oac mp3lame -lameopts cbr:br=128 -endpos $ARGV[2] -o /home/petr/Videa/$soubor_avi >/dev/null 2>>/home/petr/error.txt";
    
    }
    
    # Uzivatelsky cron podle ktereho budeme spoustet PC
    $SOUBOR_CRON="/tmp/petr_crontab.txt";
    
    # Pri debug 1 vypisujeme co delame (0 = jsme potichu)
    $DEBUG=0;
    
    
    system "crontab -l > /tmp/petr_crontab.txt";
    
    open(DATA, "<", $SOUBOR_CRON) or die "Nelze otevřít soubor: $!";
    
    $cas=0;
    $starycas=0;
    
    while ($radek=<DATA>) {
    
    chomp $radek;
    
    # je neco na radku - spracujeme
    if (length($radek)>0) {
    if ($DEBUG==1) { print $radek . "\n"; }
    
    use Schedule::Cron::Events;
    
    my $cron = new Schedule::Cron::Events( $radek, Seconds => time());
    my ($sec, $min, $hour, $day, $month, $year) = $cron->nextEvent;
    if ($DEBUG==1) { printf("Další start: %2d:%02d:%02d on %d.%02d.%d\n", $hour, $min, $sec, $day, ($month+1), ($year+1900)); }
    
    # turn a local date into a Unix time
    use Time::Local;
    my $epochSecs = timelocal($sec, $min, $hour, $day, $month, $year);
    if ($DEBUG==1) { print "počet " . $epochSecs . " sekund co je " . localtime($epochSecs) . "\n"; }
    
    # Vybirame nejdrivejsi cas
    if ($starycas==0) { $starycas=$epochSecs; $cas=$epochSecs; }
    if ($epochSecs<$starycas) { $cas=$epochSecs; $starycas=$epochSecs; }
    
    
    # konec spracovani radku
    }
    # konec spracovani souboru
    }
    close DATA;
    
    if ($DEBUG==1) { print "Ted je cas: " . time() . "\n"; }
    
    # Odecteme 10 minut
    $cas-=600;
    if ($cas>time() and `w | grep " 1 user"` ) { exec "sudo /sbin/shutdown -h now 2>>/home/petr/error.txt"; }
    

    Tímto skriptem budeme nahrávat, pokud bude pouze automaticky přihlášený jeden uživatel tak vypneme PC a proto musíme nastavit sudo aby uživatelé mohly spustit /sbin/shutdown bez hesla.

    Teď potřebujeme něco co zajistí aby se cron spustil i kdž se pouze spustí PC a nikdo se nepřihlásí, uživatelský cron se spustí pouze jak se uživatel přihlásí a protože nepotřebujeme bezpečnost upravíme druhou textovou konzoli aby se tam automaticky přihlašoval uživatel petr.

    Takže upravíme soubor /etc/event.d/tty2

    # tty2 - getty
    #
    # This service maintains a getty on tty2 from the point the system is
    # started until it is shut down again.
    
    start on stopped rc2
    start on stopped rc3
    start on stopped rc4
    start on started prefdm
    
    stop on runlevel 0
    stop on runlevel 1
    stop on runlevel 6
    
    respawn
    exec /sbin/mingetty --autologin petr tty2
    

    Tak po spuštění PC se přihlásí automaticky uživatel petr na konzoli tty2

    Teď musíme zajistit aby při vypnutí PC se nastavilo probuzení PC.

    Jak postupovat při probuzení jsem nastudoval z ACPI wakeup a MythTv ACPI Wakeup.

    Teď potřebujeme přečíst uživatelský cron a podle něho nastavit probuzení. Na to jsem čerpal nápad od Dotaz: Převod "0 20 * * 2,4" na aktuální čas a vylezl ztoho nakonec skript cron.pl.

    #!/usr/bin/perl
    
    # Uzivatelsky cron podle ktereho budeme spoustet PC
    $SOUBOR_CRON="/var/spool/cron/petr";
    
    # Zapisem do souboru nastavime alarm
    $ACPI_WAKE_UP="/sys/class/rtc/rtc0/wakealarm";
    
    # Pri debug 1 vypisujeme co delame (0 = jsme potichu)
    $DEBUG=1;
    
    
    open(DATA, "<", $SOUBOR_CRON) or die "Nelze otevřít soubor: $!";
    
    $cas=0;
    $starycas=0;
    
    while ($radek=<DATA>) {
    
    chomp $radek;
    
    # je neco na radku - spracujeme
    if (length($radek)>0) {
    if ($DEBUG==1) { print $radek . "\n"; }
    
    use Schedule::Cron::Events;
    
    my $cron = new Schedule::Cron::Events( $radek, Seconds => time());
    my ($sec, $min, $hour, $day, $month, $year) = $cron->nextEvent;
    if ($DEBUG==1) { printf("Další start: %2d:%02d:%02d on %d.%02d.%d\n", $hour, $min, $sec, $day, ($month+1), ($year+1900)); }
    
    # turn a local date into a Unix time
    use Time::Local;
    my $epochSecs = timelocal($sec, $min, $hour, $day, $month, $year);
    if ($DEBUG==1) { print "počet " . $epochSecs . " sekund co je " . localtime($epochSecs) . "\n"; }
    
    # Vybirame nejdrivejsi cas
    if ($starycas==0) { $starycas=$epochSecs; $cas=$epochSecs; }
    if ($epochSecs<$starycas) { $cas=$epochSecs; $starycas=$epochSecs;}
    
    
    # konec spracovani radku
    }
    # konec spracovani souboru
    }
    close DATA;
    
    # pokud neni cas vetsi jak aktualni nic nedelame
    if ($cas>time()) {
    
    if ($DEBUG==1) { print "Ted je cas: " . time() . "\n"; }
    
    if ($DEBUG==1) { print "Nejblizsi cas spusteni nahravani " . $cas . " sekund co je " . localtime($cas) ."\n"; }
    # Odecteme 5 minut
    $cas-=300;
    if ($DEBUG==1) { print "Nejblizsi cas spusteni HTPC (cas nahravani - 5 minut) " . $cas . " sekund co je " . localtime($cas) ."\n"; }
    
    # reset Alarm
    open(ALARM, ">", $ACPI_WAKE_UP) or die "Nelze otevřít soubor: $!";
    print ALARM "0";
    close ALARM;
    
    # Zapis alarmu
    open(ALARM, ">", $ACPI_WAKE_UP) or die "Nelze otevřít soubor: $!";
    print ALARM $cas;
    close ALARM;
    
    }
    

    No a teď ten skript musíme při vypnutí PC nějak zavolat. No pod fedorou jsem to vyřešil že jsem upravil /etc/rc.d/init.d/halt v kterém jsem našel: [ -x /sbin/hwclock ] && action $"Syncing hardware clock to system time" /sbin/hwclock --systohc a za to dodal spuštění skriptu cron.pl což jsem provedl vložením:

    #Nastaveni alarmu
    
    [ -x /home/petr/bin/cron.pl ] && /home/petr/bin/cron.pl
    

    A teď to chce naplnit cron záznamy pro nahrávání a otestovat zda to funguje.

    Doufám že se to bude někomu hodit, samozřejmě řádky s mencoderem a mplayerem třeba upravit podle potřeb, tak stejně různé parametry.

    Pro normální dívání používám script tv:

    #!/usr/bin/perl
    
    die "$0 má špatný počet parametrů.\n\nSprávně má být:\n$0 Kanál\n$0 nova\n\n" if @ARGV != 1;
    
    if ( $ARGV[0] eq "ex" or  $ARGV[0] eq "stv1" or  $ARGV[0] eq "ct24"  ) { $norma="PAL-BG";}
    else{ $norma="PAL-DK"; }
    
    #printf "argument: " . $ARGV[0] ;
    
    if ( not (`ps -A | grep "mencoder"` or `ps -A | grep "mplayer"`)) { system "mplayer tv://$ARGV[0] -tv driver=v4l2:norm=$norma:volume=100:alsa=on:adevice=hw.1,0:amode=1:audiorate=32000:forceaudio:immediatemode=0:channels=r12-ct1,r8-ct2,r10-nova,r6-prima,se7-stv1,se13-ex,r7-ct24";
    } 
    

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.