Archive for the ‘linux’ Category

Странни логове

Tuesday, August 12th, 2008

Внезапно закъсах за място на линукския дял и проведеното разследване показа, че имам 300МВ *неща* в /var/spool/clientmqueue Дълги са по около килобайт и са толкова много че rm не иска да ги трие :)
# rm * /bin/rm: Argument list too long.
# ls |wc -l 92562

Ето какво представлява едно от тези *неща*:
cat dfm2C0t6aE007318

array(6) { [0]=> string(52) “? (192.168.0.3) at 00:C0:95:EC:B7:93 [ether] on eth0″

[1]=> string(55) “? (85.187.229.129) at 00:30:48:8C:21:7A [ether] on eth1″

[2]=> string(55) “? (85.187.229.200) at 00:1B:24:16:B3:2B [ether] on eth1″

[3]=> string(55) “? (85.187.229.242) at 00:19:E0:0C:02:47 [ether] on eth1″

[4]=> string(55) “? (85.187.229.183) at 00:13:8F:EA:CB:F3 [ether] on eth1″

[5]=> string(0) “”

}
Помня че едно време си играх с arpwatch и той имаше някаква опция да праща отчети при смяна на MAC адрес по пощата, ама това не си е отчет ами просто някакъв дъмп от print_r() функцията в PHP. Шаш :) Изтриха се де:

# rm *0
# rm *1
# rm *2
.....
Сега да открия какво е оставило такива спомени там :)

Как да монтираме файловата система на FreeBSD в Linux

Tuesday, August 5th, 2008

Това го има на няколко места в нета, но на всичките по нещо куцаше, така че реших да напиша как стана при мен.
1) В ядрото трябва да имате:
CONFIG_UFS_FS (Filesystems -> Miscellanious -> UFS filesystem support) - можете да го сложите като модул, но ако искате по-късно автоматично монтиране от fstab, ще трябва да го вкарате в ядрото. Ако го сложите като модул, във fstab ще опишете файловата система с noauto (иначе mount протестира че няма такава файлова система ufs - поне при мен не си зарежда автоматично модула) и в rc.local си добавете “modprobe ufs”
CONFIG_BSD_DISKLABEL (Filesystems -> Partition types -> Advanced partition selection -> PC BIOS -> BSD disklabel) - това няма опция за компилиране на модул - само директно в ядрото

2) Ако ядрото ви е наред, време е да откриете точно кое устройство ви носи UFS файловата система.

dmesg | grep bsd

Ще се види нещо като:

sdb1: <bsd: sdb6 sdb7 >

Тук Linux вижда 1 устройство - sdb1, но FreBSD си има по-особена организация на файловите системи. Вероятно сте запознати с това, така че ще ви го спестя. Да видим как са разпознати от boot процеса на Linux - sdb6 и sdb7.
Едното ми е swap дяла, а другото root на файловата система. Ако се съмнявам кое кое е, ще пробвам по отделно:

3) Монтиране с mount:
- изберете типа на UFS - при съвременните BSD-та (или поне на FreeBSD7) е ufs2

# mount -r -t ufs -o ufstype=ufs2 /dev/sdb6 /mnt/bsd/
# ls /mnt/bsd
COPYRIGHT boot compat dist etc lib media proc root sys usr
bin cdrom dev entropy home libexec mnt rescue sbin tmp var

Уцелих от първия път :)

4) Описване в /etc/fstab

/dev/sdb6 /mnt/bsd ufs ro,ufstype=ufs2 0 0

По желание можете да сложите
noauto - ако сте компилирали ufs support на модул вместо директно в ядрото
users - за монтиране от обикновени потребители без root привилегии

Прозрачност в aterm - tinting, shading

Wednesday, May 28th, 2008

Отдавна използвам aterm и до сега само едно ме е дразнело - настройката на прозрачността. Днес попаднах на едно решение, което ми обърна идеите и прозрачността се получи по най-подходящия начин. Да караме едно по едно :)
До скоро това ми бяха настройките на aterm:
aterm*colorMode: true
aterm*tinting: #79b6d5
aterm*transparent:true
aterm*foreground: #9eff6f
aterm*geometry:83x35
aterm*truetintingType: True
aterm*title: AteRm
aterm*saveLines: 1000
aterm*font: -rfx-courier-medium-*-*-*-14-*-*-*-*-*-*-cp1251

Прозрачността се осъществяваше чрез ‘tinting’ (предаване на нюанс). Естествено тинтването може да изчезне, като остава само най-важния ред - aterm*transparent:true. По този начин се вади абсолютно прозрачна конзола, като текста се пише с нормални букви. Проблема е че ако отзад имате шарен тапет, буквите на места се сливат с него и въобще не е удобно.
Какво прави тинтинга? Накратко казано на всеки пиксел се придава нюанс (цвета се определя с aterm*tinting: #79b6d5). След това може да се направи някаква допълнителна трансформация на ефекта с aterm*truetintingType. Получават се доста шарени резултати. Ако тапета е относително едноцветен или не е много контрастен, ефекта е уникален. Ако обаче тапета е шарен… целия ефект се превръща от плюс в един голям минус :)
Понякога се налага и цялостна промяна на конфигурацията - tint-ващ цвят и режим - когато тапета се смени с нов, чиято цветова гама е неподходяща.
Решението на проблема е tinting-а да се изключи изцяло. Всичко свързано с tinting се маха и се добавя един-единствен ред:
aterm*shading:40
Това задава потъмняване на областта на конзолата без добавяне на специални ефекти. Получава се универсална прозрачност, която може да бъде използвана с всякакви тапети. Предполагам, че това може да се получи и с tinting, ако се използва черен цвят и подходящия режим, но със shading ми се струва по-елегантно и подходящо.
Ето един шот с новата прозрачност. Оцветяването е от vim:

shot-2008-05-28-191912.jpg

Съветник за избиране на Линукс дистро

Tuesday, May 6th, 2008

Попаднах на този тест, който ви помага да си изберете най-подходящата за вас дистрибуция. Сигурно никой няма нужда от това, ама си е весело :)
Явно съм отговорил правилно на въпросите, защото такъв избор ми предложи на мен:

  1. Slackware Linux - с това съм от години
  2. Debian GNU/Linux - това съм пробвал за кратко преди Slackware и тогава не ми харса. Ако сега трябва да сменя Slackware сигурно ще се спра на Debian
  3. Gentoo Linux - никога не съм го пробвал, но ми е мерак :)
  4. FreeBSD - това пък крета на VirtualBox - едвам, едвам… и май скоро ще умира.
  5. OpenBSD

Ами явно не става въпрос само за Линукс дистрибуции ;) Отдолу си пише, че теста е правен за забавление и не трябва да се взима насериозно (макар че не видях каквито и да е несериозни въпроси).

vmsplice() - и аз съм под ножа

Thursday, April 17th, 2008

Научих за поредния страховит локален експлойт за Linux kernel 2.6.17 - 2.6.24.1
Текущо съм с 2.6.23.9, но вече мисля за ъпгрейд :) Причината е очевадна:

(21:46:26)[ivanatora@~]$ ./local
———————————–
Linux vmsplice Local Root Exploit
By qaaz
———————————–
[+] mmap: 0×0 .. 0×1000
[+] page: 0×0
[+] page: 0×20
[+] mmap: 0×4000 .. 0×5000
[+] page: 0×4000
[+] page: 0×4020
[+] mmap: 0×1000 .. 0×2000
[+] page: 0×1000
[+] mmap: 0xb7fa2000 .. 0xb7fd4000
[+] root
(22:03:41)[root@~]#

При някои от хората долкадвали бъга това работи, при други - не. Който хоства акаунти сигурно вече в крак и е пачнал, така че надали казвам нещо ново на някого ;)