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 14:44 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 14.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | Zajímavý projekt

    Just the Browser je projekt, 'který vám pomůže v internetovém prohlížeči deaktivovat funkce umělé inteligence, telemetrii, sponzorovaný obsah, integraci produktů a další nepříjemnosti' (repozitář na GitHubu). Využívá k tomu skrytá nastavení ve webových prohlížečích, určená původně pro firmy a organizace ('enterprise policies'). Pod linuxem je skriptem pro automatickou úpravu nastavení prozatím podporován pouze prohlížeč Firefox.

    NUKE GAZA! 🎆 | Komentářů: 2
    16.1. 16:44 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.18. Díky 174 přispěvatelům.

    Ladislav Hagara | Komentářů: 2
    16.1. 15:11 | IT novinky

    Miliardy korun na digitalizaci služeb státu nestačily. Stát do ní v letech 2020 až 2024 vložil víc než 50 miliard korun, ale původní cíl se nepodařilo splnit. Od loňského února měly být služby státu plně digitalizované a občané měli mít právo komunikovat se státem digitálně. Do tohoto data se povedlo plně digitalizovat 18 procent agendových služeb státu. Dnes to uvedl Nejvyšší kontrolní úřad (NKÚ) v souhrnné zprávě o stavu digitalizace v Česku. Zpráva vychází z výsledků víc než 50 kontrol, které NKÚ v posledních pěti letech v tomto oboru uskutečnil.

    Ladislav Hagara | Komentářů: 15
    16.1. 13:55 | IT novinky

    Nadace Wikimedia, která je provozovatelem internetové encyklopedie Wikipedia, oznámila u příležitosti 25. výročí vzniku encyklopedie nové licenční dohody s firmami vyvíjejícími umělou inteligenci (AI). Mezi partnery encyklopedie tak nově patří Microsoft, Amazon a Meta Platforms, ale také start-up Perplexity a francouzská společnost Mistral AI. Wikimedia má podobnou dohodu od roku 2022 také se společností Google ze skupiny

    … více »
    Ladislav Hagara | Komentářů: 0
    16.1. 02:22 | Nová verze

    D7VK byl vydán ve verzi 1.2. Jedná se o fork DXVK implementující překlad volání Direct3D 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    16.1. 02:00 | Nová verze

    Byla vydána verze 12.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 12.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    15.1. 19:22 | Humor

    CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.

    NUKE GAZA! 🎆 | Komentářů: 3
    15.1. 12:33 | IT novinky

    Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.

    Ladislav Hagara | Komentářů: 3
    15.1. 12:11 | Komunita

    Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (5%)
     (0%)
     (10%)
     (19%)
     (3%)
     (6%)
     (2%)
     (11%)
     (41%)
    Celkem 484 hlasů
     Komentářů: 12, poslední 14.1. 21:12
    Rozcestník

    automounter a slackware

    13.4.2006 22:40 | Přečteno: 1742× | Slackware

    V minulém blogu jsem slíbil návod na zprovoznění automountra ve Slackware. Tak s chutí do díla.

    Požadovaný výsledek (Motivace :) )

    Automounter funguje tak, že při vstupu do adresáře kam se připojuje nějaké médium se pokusí toto médium připojit. KRYTON: Je to zkomolené, matoucí a ještě nudnější než palubní časopis belgických aerolinií. (RedDwarf - Pekelně ostrý výlet). Uznávám definice je to kulhající na obě nohy, ale pro představu snad stačí.

    Uveďme si příklad: do mechaniky jsme vložili CD a chceme se podívat na fotky z dovolené. V našem oblíbeném prohlížeči obrázků zadáme cestu kam připojujeme mechaniku, v našem případě /media/dvd/. V tomto okamžiku ovšem žádný takový adresář neexistuje(!). Automounter zjistí, že chceme přistoupit do /media/dvd/, zjistí, zda je vloženo médium, pokud ano tak vytvoří adresář a připojí nám CD. Až si fotečky pěkně pozorně prohlédneme a ukončíme všechny programy které mají otevřené něco z připojeného CD, tak automounter po zadané časové prodlevě CD odpojí a my jej můžeme z mechaniky vyjmout.

    Co budeme potřebvat

    Balíček s autofs. Nachází se na prvním CD v adresáři slackware/n/.

    Další co potřebujeme je podpora v kernelu. Tu zajistíme natažením modulu autofs4. Provedením modprobe autofs4. Tento modul budeme chtít natahovat po každé, takže do /etc/rc.d/rc.modules přidáme řádek /sbin/modprobe autofs4.

    Situace

    Uvedu příklad (popíšu jakou situaci jsem řešil u Queega - snad už víte kdo je Queeg :) ).

    DVD mechanika a vypalovačka. Obojí jsem chtěl mountovat automountrem do adresáře /media/dvd/ respektive /media/cdwriter/

    Konfigurační soubory

    Pro konfiguraci se používá jeden hlavní soubor /etc/auto.master a vícero takzvaných souborů s mapou (jak jinak chcete přeložit map file).

    Hlavní soubor (auto.master) slouží k popisu které soubory s mapami se mají načíst a ke kterému adresáři v kořeni patří. Takže podle našeho příkladu bude /etc/auto.master vypadat takto:

    /media /etc/auto.media --timeout=5
    
    První položka je adresář pro který je mapa, ta je udána jako druhá položka a jako třetí se udávají další volby. V našem případě je adresář /media, mapa je v souboru /etc/auto.media a volba --timeout=5 určuje, že se má médium odpojit po 5 vteřinách nečinnosti.

    Soubor s mapou vypadá následovně:

    cdwriter -fstype=iso9660,owner,user,ro :/dev/hdd
    dvd      -fstype=iso9660,owner,user,ro :/dev/hdc
    

    První položka je adresář kam se bude mountovat (adresář se bude vnořen do adresáře pro který je určena mapa, tedy /media/cdwriter, respektive /media/dvd), další položka udává volby pro připojení a poslední je zařízení.

    Startovací skript

    jako základ jsem použil originální který je dodán s atuofs, ovšem řekněme si to na rovinu, nefungoval. Takže jsem ho tak nějak prošel a dal do funkčního stavu. Výsledek vypadá takto:

    #!/bin/bash
    #
    # /etc/rc.d/rc.autofs
    #
    # rc file for automount using a Sun-style "master map".
    # We first look for a local /etc/auto.master, then a YP
    # map with that name
    #
    
    # Location of the automount daemon and the init directory
    #
    DAEMON=/usr/sbin/automount
    initdir=/etc/rc.d
    
    
    test -e $DAEMON || exit 0
    thisscript="$0"
    if [ ! -f "$thisscript" ]; then
        echo "$0: Cannot find myself" 1>&2
        exit 1
    fi
    
    #
    # We can add local options here
    # e.g. localoptions='rsize=8192,wsize=8192'
    #
    localoptions=''
    
    #
    # This function will build a list of automount commands to execute in
    # order to activate all the mount points. It is used to figure out
    # the difference of automount points in case of a reload
    #
    function getmounts()
    {
    #
    # Check for local maps to be loaded
    #
    if [ -f /etc/auto.master ]
    then
        cat /etc/auto.master | sed -e '/^#/d' -e '/^$/d'| (
            while read dir map options
            do
                if [ ! -z "$dir" -a ! -z "$map" \
                            -a x`echo "$map" | cut -c1` != 'x-' ]
                then
                    map=`echo "/etc/$map" | sed -e 's:^/etc//:/:'`
                    options=`echo "$options" | sed -e 's:^/etc//:/:'`
                    if [ -x $map ]; then
                        echo "$DAEMON $options $localoptions $dir program $map"
                    elif [ -f $map ]; then
                        echo "$DAEMON $options $localoptions $dir file $map"
                    else
                        echo "$DAEMON $options $localoptions $dir `basename $map`"
                    fi
                fi
            done
        )
    fi
    
    #
    # Check for YellowPage maps to be loaded
    #
    if [ -e /usr/bin/ypcat ] && [ `ypcat -k auto.master 2>/dev/null | wc -l` -gt 0 ]
    then
        ypcat -k auto.master | (
            while read dir map options
            do
                if [ ! -z "$dir" -a ! -z "$map" \
                            -a x`echo "$map" | cut -c1` != 'x-' ]
                then
                    map=`echo "$map" | sed -e 's/^auto_/auto./'`
                    if echo $options | grep -- '-t' >/dev/null 2>&1 ; then
                        mountoptions="--timeout $(echo $options | \
                          sed 's/^.*-t\(imeout\)*[ \t]*\([0-9][0-9]*\).*$/\2/g')"
                    fi
                    options=`echo "$options" | sed -e '
                      s/--*t\(imeout\)*[ \t]*[0-9][0-9]*//g
                      s/\(^\|[ \t]\)-/\1/g'`
                    echo "$DAEMON $dir yp $map $options $localoptions"
                fi
            done
        )
    fi
    }
    
    #
    # Status lister.
    #
    function status()
    {
            echo "Configured Mount Points:"
            echo "------------------------"
            getmounts
            echo ""
            echo "Active Mount Points:"
            echo "--------------------"
            ps ax|grep "[0-9]:[0-9][0-9] automount " | (
                    while read pid tt stat time command; do echo $command; done
            )
    }
    
    #
    # Status lister.
    #
    function status()
    {
            echo "Configured Mount Points:"
            echo "------------------------"
            getmounts
            echo ""
            echo "Active Mount Points:"
            echo "--------------------"
            ps ax|grep "[0-9]:[0-9][0-9] automount " | (
                    while read pid tt stat time command; do echo $command; done
            )
    }
    
    
    #
    # Start function.
    #
    function start()
    {
            # Check if the automounter is already running?
            if [ ! -f /var/lock/subsys/autofs ]; then
                echo 'Starting automounter...'
                getmounts  | sh
                touch /var/lock/subsys/autofs
            fi
    }
    
    #
    # Stop function.
    #
    function stop()
    {
            kill -TERM $(/sbin/pidof /usr/sbin/automount)
            rm -f /var/lock/subsys/autofs
    }
    
    #
    # Restart function.
    #
    function restart()
    {
     if [ ! -f /var/lock/subsys/autofs ]; then
                    echo "Automounter not running"
                    exit 1
            fi
            echo "Checking for changes to /etc/auto.master ...."
            TMP1=`mktemp /tmp/autofs.XXXXXX` || { echo "could not make temp file" >& 2;
    exit 1; }
            TMP2=`mktemp /tmp/autofs.XXXXXX` || { echo "could not make temp file" >& 2;
    exit 1; }
            getmounts >$TMP1
            ps ax|grep "[0-9]:[0-9][0-9] automount " | (
                while read pid tt stat time command; do
                    echo "$command" >>$TMP2
                    if ! grep -q "^$command" $TMP2; then
                            kill -USR2 $pid
                            echo "Stop $command"
                    fi
                done
            )
            cat $TMP1 | ( while read x; do
                    if ! grep -q "^$x" $TMP2; then
                            $x
                            echo "Start $x"
                    fi
            done )
            rm -f $TMP1 $TMP2
    }
    
    #
    # See how we were called.
    #
    case "$1" in
      start)
            start
            ;;
      stop)
            stop
            ;;
      reload|restart)
            restart
            ;;
      status)
            status
            ;;
      *)
            echo "Usage: $initdir/rc.autofs {start|stop|restart|reload|status}"
            exit 1
    esac
    
    

    Skript uložíme jako /etc/rc.d/rc.autofs a spustíme příkazem /etc/rc.d/rc.autofs start, je vhodné tento příkaz umístit do /etc.rc.d/rc.local, aby se spouštěl po zapnutí PC. Chrousty chroust cvaky cvak, mělo by to vypsat "Starting automounter..." :) a vše by mělo fungovat.

    Celkové zhodnocení a závěr

    Automounter jsem zatím nasadil jen experimentálně :), mě se moc nelíbí, raději si mountuji sám, ale to neznamená, že by to bylo nepoužitelné. Funguje to spolehlivě a za dobu používání (pravda, jen pár hodin) jsem nenarazil na žádný problém.

    Keep Slack'in

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    13.4.2006 23:18 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: automounter a slackware
    Automounter jsem zatím nasadil jen experimentálně :), mě se moc nelíbí, raději si mountuji sám, ale to neznamená, že by to bylo nepoužitelné. Funguje to spolehlivě a za dobu používání (pravda, jen pár hodin) jsem nenarazil na žádný problém.

    Automounter na CD nepoužívám, v notebooku mám vypalovačku a s automounterem mi to kazilo media. Autofs používám na procházení po síti (NFS), strašně rychle si totiž člověk zvykne na cd /net/pocitac/sdileny_adresar/ :-)
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    14.4.2006 09:34 RTOS | skóre: 6
    Rozbalit Rozbalit vše Re: automounter a slackware
    Moc pěknej zápis. Děkuju. :-)
    In God We Trust, Inc.
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.