Posts Tagged ‘admin’

XML fájlok szerkesztése parancssorból

Tuesday, August 18th, 2015

Egyre több program tárolja az adatokat XML formátumban, ami kezelése nem egyszerű a hagyományos parancssori eszközökkel (grep, sed, és társai). Az XML formátum kezelésére viszont léteznek már újabb eszközök, mint például az XmlStarlet. Ez gyakorlatilag egy parancssori XML szerkesztő tool, melynek segítségével könnyedén nyerhetünk ki, vagy adhatunk, módosíthatunk adatokat az XML formátumú fájlokban.

A használata során nem árt képben lenni az XPATH fogalmával, és formátumával. Ehhez jó kiindulási alap lehet az W3Schools leírása. A munka során jó szolgálatot tehetnek még az online XPATH teszterek, generátorok.

Egy sok xml-t módosító (alap) script valahogy így néz ki a gyakorlatban:

#!/bin/sh
WORKSPACE=/cygdrive/t/work/

for x in `ls -d ${WORKSPACE}/*/`;
do
  PROJ_FILE=${x}build.xml
  if [ -f ${PROJ_FILE} ]
    then
    echo Processing build file: ${PROJ_FILE}
    xmlstarlet ed -O -P -a "/project" -t attr -n default -v "rebuild_release" ${PROJ_FILE}
  fi
done

A futtatás során a megadott könyvtár alkönyvtáraiban található build.xml fájlok tartalma az alábbi képpen módosul:

Eredeti tartalom:

<?xml version="1.0" encoding="UTF-8"?>
<project name="ac">
	<import file="../build/common.xml"/>

Tartalom a módosítás után:

<?xml version="1.0" encoding="UTF-8"?>
<project name="ac" default="rebuild_release">
	<import file="../build/common.xml"/>

A példa nem vizsgálja, hogy az XML tartalmaz e már default attribútumot, de ezt igény esetén egy újabb xmlstarlet query-vel és egy if-el könnyedén ellenőrizhetnénk. Jelen működés alapján, ha kétszer futtatnák le a fenti kódot, akkor az xml-ekben 2x kerülne beszúrásra a default tag.

 

Windows 10 recovery drive

Monday, August 3rd, 2015

A nagy windows 10 upgrade után többen meglepődve tapasztalhatják, hogy nem tudnak Recovery drive-ot létrehozni a megszokott módon. A fórumokban elég nagy a tanácstalanság, de a probléma, nem új keletű, már windows 8.1-ben is jelen volt. Az okokat és a lehetséges megoldást szépen összefoglalja a neosmart csapat wiki oldala: https://neosmart.net/wiki/we-cant-create-a-recovery-drive-on-this-pc/

A lényeg: recovery partíció hiányában (ami upgrade esetén nem jön létre) kénytelenek vagyunk mi megadni egy helyet (a reagentc segítségével), ahol a windows telepítő elérhető.

Aki viszont nem rendelkezik windows 10 telepítővel, vagy egyszerűen csak egy gyorsabb megoldást szeretne, igénybe veheti az EasyRe alkalmazást, ami windows 10 alá ingyenesen letölthető: https://neosmart.net/EasyRE/

ReviewBoard ShipItColumn++

Thursday, July 23rd, 2015

A reviewboard egy egyszerű, de használható eszköz (ha az ember készít hozzá egy jó review allocator programot, de erről majd máskor). A használat során arra törekedtünk, hogy egy commitot több ember is megnézzen, ezt viszont a reviewboard valamiért nem annyira támogatja.

Mint a mellékelt képen is látszik, a reviewboard a ship-it-et egy zöld pipával jelöli. Ha valaki azt mondja a review-re, hogy Ship it, akkor a pipa megjelenik. Ellenben ha több reviewer van egy ticketen, ez nem a legszerencsésebb dolog.

Nekünk az elvárt működés valami ilyesmi lett volna:

snap134

Ehhez az alábbi módosításra van szükség:

Első lépésben meg kell keresni menni a reviewboard egg csomagját, ahol a forrás fájlok is (.py) találhatóak. Ez operációs rendszer, python verzió függő, de az alábbi helyen érdemes keresni:

/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.0.18-py2.7.egg

Az oszlopok definíciója a reviewboard\datagrids\columns.py fájlban van. A ShipIt column-ot előállító kódot meglepő módon ShipItColumn-nak hívják. A kapcsolódó forráskód így néz ki:

 

class ShipItColumn(Column):
    """Shows the "Ship It" count for a review request."""
    def __init__(self, *args, **kwargs):
        super(ShipItColumn, self).__init__(
            image_class='rb-icon rb-icon-shipit',
            image_alt=_('Ship It!'),
            detailed_label = _('Ship It!'),
            db_field='shipit_count',
            sortable=True,
            shrink=True,
            *args, **kwargs)

    def render_data(self, state, review_request):
        if review_request.issue_open_count > 0:
            return ('<span class="issue-count">'
                    ' <span class="issue-icon">!</span> %s'
                    '</span>'
                    % review_request.issue_open_count)
        elif review_request.shipit_count > 0:
            return '<span class="shipit-count">' \
                   '


<div class="rb-icon rb-icon-shipit-checkmark"' \                    '      title="%s"></div>



 %s' \
                   '</span>' % \
                (self.image_alt, review_request.shipit_count)
        else:
            return ''

 

A minket érdeklő rész, leginkább az if második fele: review_request.shipit_count > 0:

Itt kezelik azt a részt, ha a ticketen 0-nál több ship it van… Ezt jobb lenne korrektül kezelni, az alábbi módon:

        elif review_request.shipit_count > 0:
            peoplecount=review_request.target_people.count()
            shipicount=review_request.shipit_count
            additionalclasstext=''
            if shipicount>=peoplecount:
                additionalclasstext=' rb-icon-shipit-checkmark'
            return '<span class="shipit-count">' \
                   '

<div class="rb-icon %s"' \                    '      title="%s"></div>


 %s/%d' \
                   '</span>' % \
                (additionalclasstext, self.image_alt, shipicount, peoplecount)

A fájl szerkesztésénél figyelni kell a szóközökre, ugyanis a python fájlok nagyon nem szeretik a tab-okat, és a szóközök nem csak a formázásra szolgálnak…

A módosítások után, amennyiben van lefordított columns.py fájl (columns.pyc), akkor azt töröljük. Ha valaki szeretné, lefordíthatja újra az alábbi script-el:

#!/usr/bin/env python
import py_compile 
py_compile.compile("columns.py")

Windows 8 saved wifi passwords

Thursday, July 2nd, 2015

Aki gyakran használ wifi hálózatokat, azzal rendszerint megesik, hogy gyorsan felcsatlakozik valahova, és aztán a jelszó örökre a windows bugyraiban hánykolódik az idők végezetéig. És amikor laptopot/windowst/esetleg másik eszközt szeretnénk használni, jön  a kínos kérdés, hogy Te mi is volt a WIFI jelszó? Én rászoktam arra, hogy minden ilyen jellegű megadott jelszót először keepass-ba írok, majd aztán a wifi csatlakozáshoz, de ez is idő, és mint tudjuk abból nem mindig van sok.

Hamarosan remélem az egész jelszavazásnak semmi értelme nem lesz, mert egyszerűen mindenhol lesz net… De addig maradnak a jelszavak, és a hozzá kapcsolódó macera.

Ha már elmentettünk egy wifi hálózatot, sokat nem tudunk a windows-ba kezdeni vele (legalábbis a jelszavát biztos nem tudjuk megnézni), csak ha csatlakoztunk már hozzá. Ha viszont csak egy listát szeretnénk látni, jelszavakkal, érdemes megnézni a Wifi8 nevű ingyenes programot.

http://www.thewindowsclub.com/wifi-profile-manager-windows-8

Annyira új UI-t kapott a program, hogy csak na, látszik, hogy windows megszállottak írták. Bár azt az egyszerű esetet nem kezeli le, hogy ha meg van nyitva egy kapcsolat tulajdonsága, akkor egy új kapcsolat tulajdonság megnyitása során a jelszó is frissüljön (az előző kapcsolatét mutatja tovább), de ezt a részét nem nagyon érdemes használni, ki lehet exportálni a kapcsolatok listáját jelszavakkal xml-be, és ez a legnagyobb királyság, ami elfelejtett wifi jelszavakkal történhet.

Dokumentumok konvertálása pdf-be

Tuesday, June 23rd, 2015

Réges rég (egy messzi messzi galaxisban…) futottam pár kört, word dokumentumok pdf-be történő konvertálásával. A napokban megint felmerült a probléma, így gondoltam megosztom a listát, ilyen esetben mire kell figyelni.

1. Ha minőségi pdf-et szeretnénk készíteni, akkor Adobe Acrobat.

2. A beállítások fontosak:

http://wordtopdfimage.blogspot.hu/2012/02/preserve-image-quality-when-saving-from.html

Windows 8 File rendszer cache

Tuesday, June 2nd, 2015

A windows 8 is tud nagy file cache-el dolgozni, csak alapból nem szokott. Viszont ha sok memória van a gépünkbe, és sok fájlal dolgozunk (pl. a szoftvert fejlesztünk), akkor érdemes lehet megnövelt file cache-t használni windows alatt.

A file cache policy paraméterezhető, csak a paraméterezés picit el van rejtve. Kezdetnek egy commant prompt-ot kell szereznünk administratorként, ott adjuk ki az alábbi parancsot, amivel megtuthatjuk a jelenlegi beállítását a file cache-nek:

fsutil behavior query MemoryUsage

Az itt visszakapott szám az alábbit jelenti:

  • 1 normál file cache szint
  • 2 megnövelt file cache szint

Nekünk a megnövelt cache policy kellene, ezt az alábbi utasítással tudjuk beállítani:

fsutil behavior set memoryusage 2

A módosítás után szükséges egy restart.

Forrás: http://www.ghacks.net/2010/07/08/increase-the-filesystem-memory-cache-size-in-windows-7/

Excel fájlok megnyitása

Wednesday, May 27th, 2015

Az utóbbi időben a hálózati helyekről jelentősen lassult az Excel fájlok megnyitása. Ennek az oka, egy új, a windows update által letöltött, és telepített kiegészítő, melynek a neve:

Microsoft Office File Validation Add-In

Ha továbbra is szeretnénk excel fájlainkat gyorsan, és fájdalommentesen megnyitni a hálózati helyekről, akkor távolítsuk el ezt a kiegészítőt a gépünkről (Control Panel, Add/Remove Programs).

Lifehacker és chrome kiegészítők

Sunday, May 24th, 2015

Néha néha felbukkan egy egy gyöngyszem a lifehacker-en, amiért megéri olvasgatni. Ilyen a Lineman Splice, vagy a Lace Lock. IT területen sok újdonságot nem szoktam találni, de azért az érdekesebb cikkeket mindig átfutom. Nem rég jelent meg egy cikk, ami a google chrome memóriahasználatát, és ennek okait taglalta. Már ezért a kijelentésért önmagában is érdemes volt elolvasni a cikket: “free RAM is useless RAM”

Viszont ebben a cikkben került említésre a The Great Suspender kiegészítő, ami nekem új volt. Ez egy nagyon jó cucc, és az én örökérvényű böngésző kiegészítők listámról még hiányzott. Azt tudja, hogy a rég nem használt tab-okat egyszerűen kidobja a memóriából, de a helyét meghagyja, így ha kell akkor bármikor visszatölthetjük a tartalmát. Kötelező darab, semmi többet nem tudok elmondani 🙂

És ha már kiegészítők, akkor itt az ideje, hogy a 2007-es Firefox-os listát frissítsem egy 2015-ös chrome-os listára:

Google Chrome Extensions:

Google Chrome Apps:

A lista a Chrome Extensions Share kiegészítővel készült.

UEFI windows 8

Sunday, December 14th, 2014

Hogy mi is az az UEFI, és mire jó nekünk? Röviden valahogy úgy tudnám összefoglalni, hogy valami olyasmi a BIOS kapcsán, mint régen az AHCI és az IDE volt a lemezkezelés kapcsán. Általában mindenki tudta, hogy az AHCI jobb, és bizonyos esetekben gyorsabb lesz tőle a lemezelérés, de a legtöbb gép aminek a bios beállításait láttam, mégis IDE módban volt. Miért? Mert az AHCI vezérlőnek külön driver kellett, és ahhoz vagy egyénileg épített windowt telepítő kellett, ami már tartalmazta az új drivert, vagy 1.44″ lemez (wtf?), vagy cd drive, ami az esetek többségében nem állt rendelkezésre. Szóval maradt az IDE, és ezen a telepítés után már nem is nagyon lehetett változtatni.

De, hogy tényleg mi ez az egész, és miért jó, azt a microsoft vonatkozó cikkében nagyon szépen leírják, el lehet olvasni.

Azt, hogy a windows milyen módban került telepítésre elég egyszerűen ki lehet deríteni, futtatni kell az msinfo32 nevű alkalmazást  (win+r – msinfo32) és a System summary – Bios mode rész tartalmazza is. Ha itt legacy-t látunk, akkor megszívtuk, ha UEFI-t akkor nem.

Úgy hozta a sors, hogy egy új laptopra telepítettem operációs rendszert, gondoltam oda már UEFI módban telepítek, ami azért nem is olyan egyszerű mint amilyennek elsőre tűnik.

Történt ugyanis, hogy a microsoft telepítő mérnökei úgy gondolták, menő minden telepítéshez szükséges dolgot 1 fájlba tenni (install.wim). Ez a fájl már ismerős, foglalkoztam vele régebben, amikor a windows 8.1-et kis ssd-re telepítettem.

Az USB-s win8.1 UEFI-s telepítés problematikája 2 pontban:

  • USB-s UEFI boothoz fat32 fájlrendszer kell
  • a remekbe szabott install.wim 4.6 gb

Mint tudjuk fat32-n a maximális megengedett fájlméret 4 gb (egész pontosan 4 gb -1 byte, még pontosabban 4,294,967,295 byte). Tehát egy gyári windows 8 telepítőt nem lehet felrakni egy fat32 fájlrendszerű pendrive-ra olyan egyszerűen, mint azt mi gondoljuk…

Ahhoz, hogy ez működjön, szét kell darabolni az install.wim fájlt kisebb fájlokra.

Első körben mountoljuk be a windows 8.1 telepítő iso fájlt (en_windows_8.1_with_update_x64_dvd_4065090.iso). Erre bármilyen virtuális cd meghajtó használható, én a WinCDEmu-t preferálom e téren.

Másoljuk le a telepítő teljes tartalmát egy könyvtárba, majd keressük meg a nekünk oly kedves install.wim fájlt (sokat nem kell keresni, itt található: /sources/install.wim)

Ezt kellene szétkapni kisebb részekre, mondjuk 4090 mb-os darabokra, amire a Win Toolkit nevű eszközzel tudunk a legegyszerűbben megtenni. Az alkalmazáson belül a wim splitter funkcióra lesz szükségünk, amit a Tools – Imaging menü alatt találunk.

A split után az új install.wim szétesik *.swm fájlokra (install.swm, install2.swm), amiket be kell másolni az install.wim helyére.

A toolkit nyitó oldalán található egy USB Boot Prep gomb, azzal tudunk elő álltani egy megfelelően formázott fat32 pendrive-ot.

Most már nincs is más dolgunk, mint felmásolni az új windows telepítőt a pendrive-ra és bootolni.

Arra azért még figyeljünk, hogy boot alatt a bios ne legacy, hanem UEFI módban legyen, különben sokat nem ért amit csináltunk.

Zárszó: a fenti dolgokból az is következik, hogy aki ssd-t használ, és wimboot-os windowst szeretne telepíteni, akkor annak jó eséllyel szüksége lesz egy usb-s optikai meghajtóra, és fizikailag dvd-re kell írnia a winre telepítőt az install.wim-el ha sikereket szeretne elérni…

 

A jó öreg redirect…

Wednesday, November 12th, 2014

Ha egy teljes domaint szeretnénk redirectelni .htaccess fájlból:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^olddomain\.hu$ [NC]
RewriteRule ^(.*)$ http://newdomain.hu/ [R=301,L]