Написах си един конвертор които трябваше да извърши конкретни операции. Конвертора товареше машината зверски на 99% :)(Все пак обработва доста голям обем от информация) и трябваше да намаля процесорното натоварване което правеше. За целта използвах cpulimit. След като го инсталирах apt-get install cpulimit :) мога да си избера как да огранича конвертора по PID,име на приложение или директно да го изпълня през cpulimit . Аз си избрах по PID понеже така и така беше пуснат конвертора.
cpulimit -p 28563 -l 30
По този начин процесорното натоварване за PID 28563 ще бъде 30%.
Благодарение на cpulimit всичко е наред. Конвертора си работи както и другите приложения(е конвертора работи по- бавно, но в този случай бързината не е проблем). И всички приложения заживели щастливо. Няколко часа яли пили и се веселили докато конвертора си свърши работата.
Примери:
Ограничава по името на процеса на 40% CPU
cpulimit --exe bigloop --limit 40
cpulimit --exe /usr/local/bin/bigloop --limit 40
Ограничава по PID на 55% CPU
cpulimit --pid 2960 --limit 55
Ограничава със стартиране на процеса на 40% CPU
cpulimit --limit 40 /etc/rc.d/rc.boinc start
Случвало ли ви се е в папка да имате 50 000 директории или файлове и да решите, че трябва да ги изтриете. Ако решите да ги изтриете всичките (rm -fr *) ще ви излезе съобщение:
-bash: /bin/rm: Argument list too long
Това се получава защото има прекалено много файлове (или максимален размер на аргументите)
Ето го и ограничението от kernel_limits:
egrep ARG_MAX /usr/include/linux/limits.h
#define ARG_MAX 131072 /* # bytes of args + environ for exec() */
Решение 1:
find $PWD -exec rm -fr {} \;
Решение 2:
Изтриване на папката и след това ново създаване rm -fr ufiles;mkdir ufiles;
Хубавото на Решение 1 е, че ако желаете да изтриете конкретни файлове може да използвате -name, а именно: find $PWD -name "martin.*" -exec rm {} \;
Наложи ми се под Windows да архивирам една директория с под директории и файлове само на кирилица и да ги кача на една машинка с Debilian . Пробвах с инсталирания архиватор- WinRar (Версия Х). С Winrar си архивира всичко правилно , но работи под Windows, а под GNU/Linux като разархивираш ти прецаква енкодинга на имената(които са на кирилица). В место да търся какъв енкодинг има и etc. реших да изтегля на тази машинка добрия стар tar . Архивирах с tar "tar -cf mishka.tar.gz mishka" , качих го на машината, разархивирах го и всичко си беше наред с имената.
Днес дойде един Arris Cadant C3 със 6 upstreams, но от тях работещи 4 понеже няма карта за останалите два- струва едва 4500 лв. :). Идеята е да се разтовари едно Cisco UBR 7200, че едва си стоеше на краката :)
Ето някой основни действие:
Понеже бяха пуснати първите два upstream-a трябваше да пусна и останалите два. Ето как:
C3(config-if)#no cable upstream 0 shutdown
C3(config-if)#no cable upstream 1 shutdown
C3(config-if)#no cable upstream 2 shutdown
New upstream channel created
C3(config-if)#no cable upstream 3 shutdown
New upstream channel created
Възникна и проблема с интерфейсите на модемите и клиентите. Понеже има две карти по подразбиране едната е за модемите , а другата за клиентите. Тук обаче е необходимо един интерфейс да бъде за модемите и един за клиентите, в случая FE0
Възникна и друг проблем понеже на този cmts има 4 upstreams (2 не са активни, че няма карта за тях :) )
Първите два диода от тях мигаха, а другите два светеха постоянно(на всеки Upstream има диод)
Разгледах ръководството и видях, че:"
RX0 to RX5:
Green- Upstream is active.
Flashing Green- Upstream is in use.
Когато се коригира power-level на подходящ за съответната мрежа и условия всичко се оправя
Пример: cable upstream 3 power-level 0 fixed
На 6-ти юли 2009 година излезе нова версия на серията 2x на FCKeditor(FCKeditor 2.6.4.1). От разработчиците силно препоръчват да се обнови FCKeditor до последната версия понеже има сериозна пролука ;):
Предупреждение
This is an important security release. Upgrading is strongly recommended.
Днес ми се наложи да запиша един 7 GB архив на Double DVD Layer под GNU/Linux терминал. Разгледах малко и както подозирах става супер лесно, но за да се улесня за напред както и всеки които чете тази статия написах по- подробно обяснение и в допълнение малко скриптче. Пълната статия може да бъде прочетена тук:
Днес, един от клиентите ни е в Лондон и не можеше да изпрати писмо през smtp (Outlook Express). За целта ми се обади и разгледах случая. Оказа се, че при доставчика му пишеше:
To protect you and our network, we restrict access to port 25 on our Mobile Broadband network.
If you use email software such as Outlook or Vista Mail and your email provider uses Port 25 for outgoing mail, you will need to change your port or SMTP server when connected to our broadband network.
Errors you might see when trying to send email over Port 25 on our network include: SMTP 554 Transact Failed -- Transaction failed; Port 25 error; The connection to the server has failed- Error Number: 0x800CCC0E; or the sending of email will time out.
If you have one of these error messages the best option is to change the outgoing email port from 25 to 587. It is possible that your email provider does not support port 587 -- in which case you should try port 465 as an alternative.
Changing the port number on Outlook Express
Наложи се да добавя още един порт в случая 587 за outgoing smtp
Ето как става най- лесно:
Файл /etc/postfix/master.cf
587 inet n -- -- -- -- smtpd
Случвало ли ви се е да търсите нещо с grep но да има толкова много файлове които трябва да бъдат претърсени, че да не можете да го направите. Ето го решението :) :
find $PWD -type f -print0 | xargs -0 grep Tyrsen_String