Category Archives: sadmin

sadmin

Magento 1.3 на PHP 5.4- Проблеми и случки

magentoИдеята е по- стара версия на Magento да работи на php 5.4 :). От тук идват и следните проблеми :) :

Грешка: Fatal error: Method Varien_Object::__tostring() cannot take arguments in /lib/Varien/Object.php

1) /lib/Varien/Object.php (Line 484)
заменете __toString
със __invoke

2) /app/code/core/Mage/Core/Controller/Request/Http.php (Line 274)
заменете split
със explode

3) app/code/core/Mage/Admin/Model/User.php (Line 374)
заменете split
със explode

Грешка:Can't retrieve entity config: core/store_group

Решение: Заменяме файловете в папката lib/Varien/SimpleXML с новите файлове от последната версия на Magento

Грешка:
PHP Fatal error: Call-time pass-by-reference has been removed in …

Решение/Пример:

//Грешно
myFunc(&$arg);               # Deprecated pass-by-reference argument
function myFunc($arg) { }

//Правилно
myFunc($var);                # pass-by-value argument
function myFunc(&$arg) { }

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Upgrade на Ubuntu 11.04 Natty

Upgrade на Ubuntu 11.04 Natty

Необходимо е да променим хранилищата:

sudo sed -i 's,http://.*ubuntu.com,http://old-releases.ubuntu.com,g' /etc/apt/sources.list

Промяне е следната:

Файл: /etc/apt/sources.list
deb http://bg.archive.ubuntu.com/ubuntu/ natty universe main multiverse
deb http://bg.archive.ubuntu.com/ubuntu/ natty-updates universe main multiverse

deb http://security.ubuntu.com/ubuntu natty-security universe main multiverse

deb http://extras.ubuntu.com/ubuntu natty main
deb-src http://extras.ubuntu.com/ubuntu natty main

Променя се на :

deb http://old-releases.ubuntu.com/ubuntu/ natty universe main multiverse
deb http://old-releases.ubuntu.com/ubuntu/ natty-updates universe main multiverse

deb http://old-releases.ubuntu.com/ubuntu natty-security universe main multiverse

deb http://old-releases.ubuntu.com/ubuntu natty main
deb-src http://old-releases.ubuntu.com/ubuntu natty main

Обновяваме информацията за пакетите и обновяваме пакетите

apt-get update && apt-get upgrade && apt-get dist-upgrade

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Теглене на файлове с wget

Идеята е от конкретна директория на сайт да се изтеглят нейните файлове. Не директории преди или след това, а само файловете от текущата директория:

wget -e robots=off -r -np -nH -nd –cut-dirs=3 -R index.html http://example.com/dir/

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)
VN:F [1.9.22_1171]
Rating: +2 (from 2 votes)

Търсене на текст във всички php-та (рекурсивно)

Идеята е, че на един приятел му се е заразила vps-а с един куп iframes … и целта беше да се открият файловете където се съдържаше съответния iframe. ето как се показват всичките заразени php-ta:

find $PWD -name \*.php | xargs grep "<iframe name=Twitter scrolling=auto frameborder=no align=center height=87 width=39 src=http://mwola.com/post.php?id=326988></iframe>"

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Малки букви на разширението

Идеята е, че имаме много файлове от рода на FILE.JPG и искаме да направим разширението с малки букви т.е. FILE.jpg

find . -name '*.*' -exec sh -c 'a=$(echo {} | sed -r "s/([^.]*)\$/\L\1/"); [ "$a" != "{}" ] && mv "{}" "$a" ' \;

Сайт за безплатни преводи -- kakvo.org

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Unbrick на TL-WR1043ND + Openwrt

Преди да unbrick рутера TL-WR1043ND ще трябва да подготвим нещата

1. Необходимо е да се отвори рутера(внимавайте да не скъсате кабелите за трите антени, че са много лесни за късане. Аз скъсах единия кабел и после се наложи да го презапоявам наново).

2. След като се отвори трябва да намерите тази част от платката:

wr1043nd_brick_gnd_tx_rx-mpetrov
Тук запоих три кабелчета с които да мога лесно вържа към моя конвертор от usb към uart.
Става ясно, че
RX на рутера се връзва на TX на ковертора
TX на рутера се връзва на RX на ковертора
GND на рутера се връзва на GND на ковертора

При доста от рутерите е необходимо само това свързване, но при някои както стана с моя е необходимо и нещо малко повече , а именно да се направи връзка между резистор R362 и RX на рутера. С тази връзка се отключва възможността рутера да приема моите команди. Общо взето ако не е отключен приема на коменди ще се пишат команди, но рутера няма да ги осъществява :) .

tl-wr1043nd.rxjumper

След като са приготвени необходимите изходи/входове от рутера е необходимо да приготвим и компютъра.

Слагаме ip 192.168.0.5 на компютъра където ще се пуска tftp. Свързваме компютъра с рутера(rj45) през lan портовете.

Инсталираме му tftp сървър. В този случай: Solar Windows TFTP Server.
Може да се изтегли от тук: http://dplus.en.softonic.com/ud-client/64000/64624/SoftonicDownloader_for_solarwinds-tftp-server.exe

Пускаме tftp сървър с ip 192.168.0.5
и му казваме, че ще предлага файлове от c:\tl-wr1043nd
също и да може да изпраща файлове(не само да получава както е по подразбиране).

Сега е необходимо да свържем USB то UART конвертора. Може да се използва специална платна за целта (купих я от елимекс -- КИТ K074 КОНВЕРТОР USB КЪМ UART  -- 16.50лв.)

usb_to_uart_elimex
Друг вариант които е много по евтин  е да се ползва usb  data кабел от нокиа. Нокиа защото там има само 3 кабела, rx,tx,gnd трябва просто да се прочете в интернет кои кабел какъв е и готово . Аз пробвах и двата вариант и двата работят.

Така след като сложихме IP което ще ползваме малко по- късно, сложихме и tftp сървър то е необходимо да изтеглим firmware-те които ще ползваме и да ги качим в c:\tl-wr1043nd.

Изтегляме оригиналния, стоков firmware от сайта на TPLINK: TP-Link Firmware vom 10.02.2012 bzw. 20.02.2012

местим го в c:\tl-wr1043nd и го преименуваме bin файла в архива на firmware.bin (не е необходимо така е по- пригледно за мен,че пробвах доста докато тръгне)

След като сме настроили компютъра и рутера за работа е необходимо да ги свържем с usb към uart конвертора. Обясних по- рано как се свързват. Сега пускаме рутера и приложението putty- http://www.chiark.greenend.org.uk/~sgtatham/putty/

В случая usb към uart  конвертора е направил com 14. Затова при пускане на putty се избира:

Connection type: Serial
Serial line: COM14
Speed: 115200 (Това е  задължително иначе излизат разни символи )

След това виждаме нещо от рода:

U-Boot 1.1.4 (Nov 17 2009 -- 11:56:26)

AP83 (ar9100) U-boot 0.0.11
DRAM:
sri
32 MB
id read 0x100000ff
flash size 8MB, sector count = 128
Flash:  8 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag7100_enet_initialize…
No valid address in Flash. Using fixed address
: cfg1 0xf cfg2 0x7114
eth0: 00:03:7f:09:0b:ad
eth0 up
eth0
Autobooting in 1 seconds## Booting image at bf020000 …
Uncompressing Kernel Image … Error: Bad gzipped data
GUNZIP ERROR -- must RESET board to recover

Resetting…

и т.н. рестартира се до без край.

За да го спрем е необходимо точно когато излезе надписа: “Autobooting in 1 seconds

да напишем „tpl” по този начин ще спре цикъла

След като сме влезли в рутера вече е необходимо да изрием стария firmware дял:

erase 0xbf020000 +7c0000

теглим/ зареждаме новия firmware

tftpboot 0x81000000 firmware.bin

Копираме firmware-а от паметта към флаш паметта.

cp.b 0x81000000 0xbf020000 0x7c0000

Bootваме да видим дали всичко е наред:

bootm 0xbf020000

Честито вече си имаме нормален рутер.

Сега обаче аз ще му сложа openwrt ,че ми писна от тоя ddwrt
Ще му сложа тази версия, че има вероятност някои от най- новите да го brick-нат отново , не че е трудно да се Unbrick, но все пак .

Първо от уеб интерфейса на рутера качаме тази:
http://downloads.openwrt.org/backfire/10.03/ar71xx/openwrt-ar71xx-tl-wr1043nd-v1-squashfs-factory.bin

После и тази:

http://downloads.openwrt.org/backfire/10.03/ar71xx/openwrt-ar71xx-tl-wr1043nd-v1-squashfs-sysupgrade.bin

Честито имаме си openwrt

Ето малко и мои снимки:

PS: Ето един сайт за безплатно споделяне на документи -- dokumentite.com

VN:F [1.9.22_1171]
Rating: 5.0/5 (3 votes cast)
VN:F [1.9.22_1171]
Rating: +2 (from 2 votes)

Проблем при Ubuntu 9.10 Karmic Koala apt-get не работи ;)

ubuntuОбщо взето това се случи на един приятел кото имал под ръка Ubuntu 9.10 и си го инсталирал за да го разцъка, обаче се появил тоя проблеммм. Просто хранилищата не са активни. Ето го и решението:

Да се премахнат старите хранилища в /etc/apt/sources.list и да се добавят нови:

deb http://old-releases.ubuntu.com/ubuntu/ karmic main  restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ karmic main  restricted
deb http://old-releases.ubuntu.com/ubuntu/ karmic-updates main restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ karmic-updates main  restricted
deb http://old-releases.ubuntu.com/ubuntu/ karmic universe
deb-src http://old-releases.ubuntu.com/ubuntu/ karmic universe
deb http://old-releases.ubuntu.com/ubuntu/ karmic-updates universe
deb-src http://old-releases.ubuntu.com/ubuntu/ karmic-updates universe
deb http://old-releases.ubuntu.com/ubuntu/ karmic multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ karmic multiverse
deb http://old-releases.ubuntu.com/ubuntu/ karmic-updates multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ karmic-updates multiverse
deb http://security.ubuntu.com/ubuntu karmic-security main restricted
deb-src http://security.ubuntu.com/ubuntu karmic-security main restricted
deb http://security.ubuntu.com/ubuntu karmic-security universe
deb-src http://security.ubuntu.com/ubuntu karmic-security universe
deb http://security.ubuntu.com/ubuntu karmic-security multiverse
deb-src http://security.ubuntu.com/ubuntu karmic-security multiverse

apt-get update && apt-get install ghex -y

PS: Веско, пожелавам ти успешно разцъкване и Добре Дошъл в GNU/Linux обществото

Инсталирахме ghex защото това му трябваше. Хубава вечер :)

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Bash трик за преименуване на разширения

Идеята е,че имаме много голям файлове с разширения с големи букви т.е. "file.TXT" , но целта е всички разширения да бъдат с малки букви затова ето го и решението :

find . -name '*.*' -exec sh -c 'a=$(echo {} | sed -r "s/([^.]*)\$/\L\1/"); [ "$a" != "{}" ] && mv "{}" "$a" ' \;
VN:F [1.9.22_1171]
Rating: 5.0/5 (3 votes cast)
VN:F [1.9.22_1171]
Rating: +3 (from 3 votes)

Разцепване на текстове файл на по 200 реда със split

Идеята е, че имаме файл с 1000 реда и искаме този файл да бъде разцепен на 5 файла с по 200 реда

split -l 200 file1000lines.txt splitfile_

така се получават файловете:

splitfile_aa, splitfile_ab, splitfile_ac, splitfile_ad, splitfile_ae

Сега обаче искаме суфикса: от a,ab,ac,ad,ae на 1,2,3,4,5

Ето го и решението:

split -a 3 -d -l 200 file1000lines.txt  a_

По този начин файловете стават:
a_001,a_002,a_003,a_004,a_005

Това е :)

VN:F [1.9.22_1171]
Rating: 5.0/5 (3 votes cast)
VN:F [1.9.22_1171]
Rating: +2 (from 2 votes)