Category Archives: sadmin

sadmin

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

Идеята е, че имаме много файлове от рода на 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)

Инсталиране на Windows 7 на USB под Linux Mint

sudo add-apt-repository ppa:colingille/freshlight
sudo apt-get update
sudo apt-get install winusb

Форматира първо и после инсталира iso файла

sudo winusb --format <iso path> <device>

Инсталира iso файла
sudo winusb --install <iso path> <partition>

 

Пример:

fdisk -l

Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xabababab

Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   204802047   102297600    7  HPFS/NTFS/exFAT
/dev/sda3       204802048   208996351     2097152    6  FAT16
/dev/sda4       208996352  1465145343   628074496   83  Linux

Disk /dev/sdd: 8127 MB, 8127512576 bytes
255 heads, 63 sectors/track, 988 cylinders, total 15874048 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xfdc01076

Device Boot      Start         End      Blocks   Id  System
/dev/sdd1   *          63    15872219     7936078+   b  W95 FAT32

winusb --format Windows.7.SP1.Ultimate.x86-x64.BG-EN.IE9.November.2011.Integrated.iso /dev/sdd

Formating device…
Mounting…
mount: warning: /media/winusb_iso_1380295897_9824 seems to be mounted read-only.
Copying…
Installing grub…
Installation finished. No error reported.
Installing grub.cfg…
Exiting…
Syncing…
Cleaning…

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

iphone 3g Jailbrake и Възстановяване на Iphone 3g след умиране :)

iphoneНаложи се да човъркам Iphone 3G и той да умре :)) За да се възстанови и да заработи нормално със стандартния Apple Firmware се прави следното:

1. Стартира се Itunes
2. Задържа се "Home" Бутона (Големия бутон най- долу)
3. Включва се USB кабела от компютъра към телефона.
4. Натиска се бутона "Restore" от Itunes и телефона се възстановява

За да се Jailbrake с последния за Iphone 3G Firmware е необходимо:

1. Да се изтегли Iphone 3G Firmware-Jailbrake: iPhone1,2_4.2.1_8C148_Restore.ipsw (http://appldnld.apple.com/iPhone4/061-9853.20101122.Vfgt5/iPhone1,2_4.2.1_8C148_Restore.ipsw)

2. Изтегля се RedSn0w: http://www.redsn0w.us/2010/03/download-direct-links-jailbreak-guides.html

3. Телефона трябва да е свързан към компютъра като телефона трябва да бъде и изключен

4. Стартира се RedSn0w:

Extras->Select IPSW -> Зарежда се изтегления преди това Firmware

Back->JailBreak->Next
Приложението казва какво да се прави т.е.:1. Задържа се бутона за изключване/включване(горе в дясно),2. Без да се пуска бутона за вкл/изкл се задържа и "Home" бутона, 3. Спираме да задържаме бутона за вкл./изкл. и продължаваме да задържаме само "Home" бутона.
4. Това е всичко :)

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

Mysqldump с разделени insert

Идеята, че по стандарт с mysqldump като се дъмпне базата се прави един "insert" със всички стойности и ако поради някаква причина някои стойност нещо не е окей (и ако дъмпа е 80ГБ) тогава целия дъмп не се кача.

В случая идеята ми е следната: Да се направи дъмп които когато се импортва и има повредени стойности да ги игнорира и да продължи да си ги кача.

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

mysqldump -uroot DB TABLE  --extended-insert=FALSE --complete-insert=TRUE > DUMP.sql

По този начин ще може да се игнорира грешката като се добави "IGNORE" в query-то.
Хубавото е, че по този начин много лесно се вижда къде е проблема, а именно на кои ред:

ERROR 1136 (21S01) at line 29754: Column count doesn't match value count at row 1

:)

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

Invite или поканете всичките си приятели във facebook фен страница

1. Когато се отвори съответната страница се натиска на бутона за поканване т.е. Build Audience-> Invite Friends
2. След това в зависимост от браузъра т.е.:
Chrome: Ctrl + Shift + J
Firefox: Ctrl + Shift + K

След това конзолата(прозорчето) излиза най- долу където трябва да въведете следния javascript код които ще маркира всичките приятели

3. Ето го и js скрипта до 2013

javascript:elms=document.getElementsByName("checkableitems[]");for (i=0;i<elms.length;i++){if (elms[i].type="checkbox" )elms[i].click()};

сега :) :

javascript:var inputs = document.getElementsByClassName('uiButton _1sm'); for(var i=0; i<inputs.length;i++) { inputs[i].click(); }

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

Инсталиране на драйвер за Atheros AR8161/Ethernet на Mint Nadia- Лаптоп Тошиба

# ~ # lspci
00:00.0 Host bridge: Intel Corporation 3rd Gen Core processor DRAM Controller (rev 09)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:16.0 Communication controller: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.1 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 2 (rev c4)
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation HM76 Express Chipset LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 7 Series/C210 Series Chipset Family SMBus Controller (rev 04)
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Thames XT/GL [Radeon HD 7600M Series]
01:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI Turks/Whistler HDMI Audio [Radeon HD 6000 Series]
07:00.0 Ethernet controller: Atheros Communications Inc. AR8161 Gigabit Ethernet (rev 10)
08:00.0 Network controller: Atheros Communications Inc. AR9485 Wireless Network Adapter (rev 01)

wget http://www.orbit-lab.org/kernel/compat-wireless/compat-wireless-2012-12-18.tar.bz2

# compat-wireless-2012-12-18 # ./scripts/driver-select alx
Processing new driver-select request…
Backing up makefile: Makefile.bk
Backup exists: Makefile.bk
Backing up makefile: drivers/net/ethernet/broadcom/Makefile.bk
Backing up makefile: drivers/net/ethernet/atheros/Makefile.bk
Backup exists: Makefile.bk
Backup exists: Makefile.bk
Backup exists: drivers/net/ethernet/broadcom/Makefile.bk

# compat-wireless-3.5.4-1 # make clean
make[1]: Entering directory `/usr/src/linux-headers-3.5.0-17-generic'
scripts/Makefile.clean:17: /tmp/compat-wireless-3.5.4-1/drivers/net/ethernet/atheros/alx/Makefile: No such file or directory
make[4]: *** No rule to make target `/tmp/compat-wireless-3.5.4-1/drivers/net/ethernet/atheros/alx/Makefile'.  Stop.
make[3]: *** [/tmp/compat-wireless-3.5.4-1/drivers/net/ethernet/atheros/alx] Error 2
make[2]: *** [/tmp/compat-wireless-3.5.4-1/drivers/net/ethernet/atheros] Error 2
make[1]: *** [_clean_/tmp/compat-wireless-3.5.4-1] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.5.0-17-generic'
make: *** [clean] Error 2

Този проблем се решава като се изтегли друга версия:

От тука сваляме драйвера(Този драйвер е съвместим затова и го инсталираме) :) : http://linuxwireless.org/download/compat-wireless-2.6/

wget http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-2012-02-28.tar.bz2

tar -xvf compat-wireless-2012-02-28-p.tar
cd compat-wireless-2012-02-28-p
scripts/driver-select alx
make
make install
modprobe alx

Voila имаме си eth1 :)

#ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:26:6c:28:a4:65
inet6 addr: fe80::226:6cff:fe28:a465/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:45 errors:0 dropped:0 overruns:0 frame:0
TX packets:80 errors:0 dropped:0 overruns:0 carrier:1
collisions:0 txqueuelen:1000
RX bytes:2700 (2.7 KB)  TX bytes:21160 (21.1 KB)
Interrupt:16

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