
В целях популяризации своего небольшого блога - обменяюсь ссылками с блогами и сайтами с похожим контентом(linux, unix, ip-телефония и т.п.). Обращайтесь по адресу tvs-admin@mail.ru. С радостью отвечу всем.
Данный блог представляет из себя "записки системного администратора". Все очень интересно и познавательно.
* В утилите dpkg улучшена обработки символических ссылок;
* В Perl устранены проблемы с выводом точного времени при использовании модуля Time::HiRes с Linux ядром 2.6.22 и выше;
* Версия PostgreSQL в пакетах обновлен до 8.1.15 и 7.4.23;
* Из состава дистрибутива удалены пакеты: fpc (нарушение авторских прав), gearhead (зависит от несвободного fpc), imapcopy: (зависит от несвободного fpc), astrolog (содержит код потенциально не подлежащий распространению), youtube-dl (стабильность пакета не отвечает требованию дистрибутива)
* По прежнему остается более 100 блокирующих релиз ошибок.
* Выпуск второго кандидата в релизы инсталлятора Debian Lenny задерживается, добровольцы могут помочь в тестировании оценив работу ежедневных сборок.
* До 21 декабря среди разработчиков проекта проводится голосование, касающиеся изменения политики по включению в состав Lenny проприетарных бинарных прошивок (firmware).
* На сайте backports.org появилось два новых сервиса - трекер проблем безопасности и форма для сравнения версий пакетов и релизов Debian;
* Подготовлен список пакетов и возможных альтернатив, зависящих от удаляемой из дистрибутива версии Gtk++ 1.2. Оппоненты подчеркивают, что GTK+ 1.2 используется еще во многих полезных научных приложениях;
* Маноджа Сривастава объявил о своем уходе с поста секретаря проекта Debian, после обвинения в манипулировании голосами во время проведения выборов. По заявлению Маноджа неверный учет голосов быль лишь досадной ошибкой, но многие видят в этом злой умысел, и былого доверия уже не вернуть.
jQuery — JavaScript-фреймворк, фокусирующийся на взаимодействии JavaScript и HTML. Был опубликован на компьютерной конференции «BarCamp» в Нью-Йорке Джоном Ресигом в 2006 году.$(document).ready()- первая функция, которую нужно знать при изучении jQuery. Выполнится она после того как все DOM объекты на странице будут загружены.
$(document).ready(function() {В данном примере произойдет событие alert() в момент когда страница загрузится.
alert('Hello, world');
});
apt-get install bluetoothПин:
echo "0000" >> /etc/bluetooth/pinСтартуем сервис:
/etc/init.d/bluetooth startПроверить параметры можно такой командой:
localhost# hciconfig -aСканируем:
localhost$ hcitool scanУстанавливаем оболочку:
wget http://download.tuxfamily.org/osrdebian/61B8DB62.gpg -O- | apt-key add -
echo "deb http://download.tuxfamily.org/osrdebian stable gnome-bluetooth" >> /etc/apt/sources.list
apt-get update; apt-get install gnome-bluetooth nautilus-sendto
Набрел сегодня на один мультипротокольный интернет-мессенжер, называется «MDC» (Multiple Direct Communicator).
Поддерживает:
Главная отличительная черта от остальных мессенджеров — хранение истории сообщений у них на сервере (удобно, если пользуешься и дома, и на работе). Правда безопасно ли хранить историю у них на сервере, ведь иногда некоторые пользователи передают пароли открытым текстом.
Конечно еще только Beta, но большинство необходимых функций уже реализовано. "+" ко всему поддержка :
Разработчики Google представили открытый проект Native Client, позволяющий выполнять в окне web-браузера обычные бинарные приложения. Программа состоит из универсального плагина к браузеру и модифицированного компилятора на основе GCC. Плагин поддерживает браузеры Firefox, Safari, Opera и Google Chrome на платформах Linux, Mac OS X и Windows. В скором времени будет доступна версия для архитектур ARM и PPC. Исходные тексты разработки распространяются в рамках лицензии BSD.
Скомпилированная для выполнения в плагине программа работает в специальном изолированном окружении. Безопасность системы достигается через изоляцию системных вызовов и прерываний - разрешено выполнение 46 системных вызовов, остальное либо запрещено, либо эмулируется специальным runtime кодом. Сетевые и дисковые функции, а также операции для работы с памятью, обрабатываются специальной подсистемой. Обращение за пределы доздоленных областей памяти блокируются через задействования системы обработки исключений CPU.
=============================Скорее всего это делано для того, чтобы использование сторонних клиентов было невозможным. Все в списке контактов стали offline.
Системное сообщение
=============================
ICQ версии 5.1 больше не поддерживается. Скачайте бесплатную авторизованную версию ICQ с официального web-сайта ICQ.
=============================
System Message
=============================
ICQ version 5.1 is no longer supported. Download a free authorized ICQ version from ICQ's official website.
R - возвращает управление мышке и клавиатуре.
E - посылает сигнал SIGTERM всем запущенным процессам, кроме init. Другими словами производится попытка безопасного (с сохранением данных) завершения всех процессов, кроме процесса init.
I - посылает сигнал SIGKILL всем запущенным процессам, кроме init. Это значит, что все процессы кроме init будут уничтожены и данные будут утеряны.
S - переписывает все данные из кэш-памяти на жесткий диск, происходит синхронизация, уменьшает шанс повреждения данных.
U - перемонтирует все примонтированные файловые системы в режиме только чтение. После использования этого ключа вы можете перезагружать систему нажатием Alt + SysRq + B без ущерба для системы.
B - перезагрузка системы. Использование этого ключа без использования других ключей равноценно «холодной» перезагрузке.
sudo cp OdfConverter /usr/lib/openoffice/program/После, откройте OpenOffice и попробуйте сохранить документ и при сохранении увидите возможность сохранения файла в формате .docx.
sudo cp MOOXFilter_cpp.xcu /usr/lib/openoffice/share/registry/modules/org/openoffice/TypeDetection/Filter/
sudo cp MOOXTypeDetection.xcu /usr/lib/openoffice/share/registry/modules/org/openoffice/TypeDetection/Types/
service sane-port(здесь предполагается, что в системе присутствует пользователь "scanner" с правами на доступ к сканеру.
{
disable = no
socket_type = stream
protocol = tcp
user = scanner
wait = no
server = /usr/sbin/saned
only_from = 192.168.1.1 192.168.1.2 # список машин, которым можно обращаться к сканеру
}
$ sudo /etc/init.d/xinetd reloadНа клиенте:
$ sox infile.gsm -r 44100 -a outfile.wavwav to gsm:
$ sox foo-in.wav -r 8000 -c 1 -s -w foo-out.wav resample -ql
vi /boot/grub/menu.lstили через GUI System -> Administration -> StartUp-Manager
timeout=0
Bluetooth Manager (Менеджер устройств Bluetooth)Меню System -> Administration -> Services (Службы)
Check for new hardware drivers
Evolution Alarm Notifier
Print Queue Applet (Апплет очереди печати)
Tracker (служба поиска и индексирования)
sudo apt-get install preloadв установке prelink нет необходимости, так как в Ubuntu задейстован
taskset -c 2-3 chrt -f 1
-b SCHED_BATCHИзменение параметров для уже запущенного процесса производится при помощи опции "-p".
-f SCHED_FIFO
-o SCHED_OTHER
-r SCHED_RR
taskset -c 2-3 -p 123
chrt -f 1 -p 123
[SOUND]Для самбы версии 3 и выше регистр значения не имеет.
path = /mnt/sde/music
comment = звуковой-сервер
username = roma,vnelubin,gtcvet,eolax,mlapin,kkorobejnikov
only user = yes
public = yes
writable = yes
create mode = 0775
force create mode = 0775
directory mode = 0775
force directory mode = 0775
veto oplock files = /*.mp3/*.wav/
veto files = /*.a*/*.A*/*.b*/*.B*/*.c*/*.C*/*.D*/*.d*/*.E*/*.e*/*.F*/*.f*/*.G*/*.g*/*.H*/*.h*
/*.I*/*.i*/*.J*/*.j*/*.K*/*.k*/*.L*/*.l*/*.N*/*.n*/*.O*/*.o*/*.P*/*.p*/*.Q*/*.q*
/*.R*/*.r*/*.S*/*.s*/*.T*/*.t*/*.U*/*.u*/*.Y*/*.y*/*.V*/*.v*/*.X*/*.x*/*.Z*/*.z*
/*.1*/*.2*/*.3*/*.4*/*.5*/*.6*/*.7*/*.8*/*.9*/*.0*/*.vob/*.VOB/*.iso/*.ISO/*.nrg
/*.NRG/*.IFO/*.ifo/*.BUP/*.bup/*.zip/*.ZIP/*.rar/*.RAR/*.TXT/*.txt/*.TAR/*.tar
/*.EXE/*.exe/*.DLL/*.dll/*.CFG/*.cfg/*.HT*/*.ht*/*.aa*/*.ab*/*.ac*/*.ad*/*.ae*
/*.af*/*.ag*/*.ah*/*.ai*/*.aj*/*.ak*/*.al*/*.am*/*.an*/*.ao*/*.ap*/*.aq*/*.ar*
/*.as*/*.at*/*.au*/*.ay*/*.ax*/*.az*/*.wb*/*.wc*/*.wd*/*.we*/*.wf*/*.wg*/*.wh*
/*.wi*/*.wj*/*.wk*/*.wl*/*.wm*/*.wn*/*.wo*/*.wp*/*.wq*/*.wr*/*.ws*/*.wt*/*.wu*
/*.wy*/*.wx*/*.wz*/*.wv*/
delete veto files = yes
hide veto files = yesещё пример:
veto oplock files = /*.xls/*.XLS/*.mdb/*.MDB/*.ldb/*.LDB/
veto files = /*.avi/*.mp*
#!/bin/shКроме command, в таких случаях не лишним было бы добавить также опции no-port-forwarding, no-pty и все прочие no-*
read file
case "$file" in
"foo") cat foo.tgz ;;
"bar") cat bar.tgz ;;
esac
Match user backupПример копирования:
ForceCommand internal-sftp
ChrootDirectory /chroot
...
#Subsystem sftp /usr/libexec/sftp-server
Subsystem sftp internal-sftp
echo "PUT backup.tgz" | sftp backup@backupserver.ru:/backup/В настоящий момент в sshd не произведена интеграция scp, т.е. при использовании scp,
#!/bin/shФормат таблицы:
#
echo "INSERT INTO pppdstats VALUES ( `date +%Y%m%d`, `date +\'%T\'
-d\"-${CONNECT_TIME} sec\" ` , '$PEERNAME', '$IPREMOTE',
'$CONNECT_TIME', '$BYTES_SENT', '$BYTES_RCVD', '$DEVICE', `date
+\'%T\'`);" | mysql -uuser -ppassword database
CREATE TABLE pppdstats (PS: Естественно, что изменив перенаправление можно записывать статистику в обычный текстовый файл.
c_date date,
c_start_time time,
user varchar(128),
ip_addr varchar(15),
online_time int(11),
send_bytes int(11),
recv_bytes int(11),
device varchar(15),
c_end_time time
);
iptables -A INPUT-p tcp --dport 80 -m iplimit --iplimit-above 10 -j REJECT# Блокируем на стадии SYN
iptables -I INPUT -p tcp --syn --dport 80 -j DROP -m iplimit --iplimit-above 10# 20 соединений на сеть класса С
iptables -p tcp --dport 80 -m iplimit --iplimit-above 20 --iplimit-mask 24 -j REJECT
iptables -A FORWARD -p tcp -m tcp -s 192.168.0.0/16 --dport 25 \- Проверить запущены ли в системе klogd и syslogd.
-j LOG --log-level debug --log-prefix "outgoing mail"
iptables -A FORWARD -p tcp -m tcp -s 192.168.0.0/16 --dport 25 -j DROP
kern.=debug -/var/log/kernel/infoFreeBSD:
ipfw add 1000 deny log tcp from any to 192.168.10.10 22 via fxp0Для ведения логов ядро должно быть собрано с IPFIREWALL_VERBOSE или нужно выставить
ipfw add 1000 deny log logamount 0 tcp from any to 192.168.10.10 80 via fxp0
"sysctl -w net.inet.ip.fw.verbose=1"Далее проверить чтобы в /etc/syslog.conf было упоминание LOG_SECURITY:
security.* /var/log/securityЧерез параметр logamount передается число записей которые будет записано в лог,
wget http://tservice.net.ru/~s0mbre/archive/osf/osf-2008_06_14.tar.gzВ Makefile через переменную IPTABLES указываем путь к заголовочным файлам iptables (iptables.h и libiptc/).
makeСобираем библиотеку libipt_osf.so, после чего копируем ее в /lib/iptables или /lib64/iptables:
make libСобираем утилиты для загрузки сигнатур ОС и ведения лога (load, osfd, ucon_osf):
make binЗагружаем список сигнатур:
wget http://www.openbsd.org/cgi-bin/cvsweb/src/etc/pf.osЗагружаем модуль ядра:
insmod ./ipt_osf.koЗагружаем сигнатуры:
./load ./pf.os /proc/sys/net/ipv4/osfПример правила для принятия пакетов с Linux машин, с занесением всех остальных в лог:
iptables -I INPUT -j ACCEPT -p tcp -m osf --genre Linux --log 0 --ttl 2При отправке с Windows в логе появится:
ipt_osf: Windows [2000:SP3:Windows XP Pro SP1, 2000 SP3]: 11.22.33.55:4024 -> 11.22.33.44:139Описание опций можно найти здесь:
fdisk /dev/sdaФорматирование нужных разделов
mkfs.ext3 /dev/sda5Монтирование новых разделов
и т.д. для других разделов
sudo mkdir sda5
sudo mount -t ext3 /dev/sda5 sda5
и т.д. для других разделов
sudo cp -ax / sda5Пока что, позевывая, можно отойти попить чаю. Все зависит от объема информации, но думаю минут 15-20 у вас точно будет. Ту же процедуру нужно повторить и для остальных разделов.
sudo grubВот и все. Можно загрузится с нового жесткого диска, а если вам не повезло и загрузчик не установлен, то можно снова вернутся в LiveCD, если загрузчик сработал, но ошибка с путями то можно либо вернутся в LiveCD и скорректировать их, либо вписать напрямую в коммандной строке GRUB и скорректировать уже в загрузившейся полноценной системе.
ждемс....
root (hd0,4)
setup (hd0)
# mount /dev/hda5 /mnt/linuxЕсли каталога linux нет то создать(команда mkdir /mnt/linux)
# mcпереходим в левой панели в каталог /dev в правой /mnt/linux/dev и копируем все устройства из /dev/hda* в /mnt/linux/dev
# chroot /mnt/linuxДля lilo:
# liloДля grub:
# grub-install5.Перегружаемся... Вот и все...
# apt-cache search boot up managerbum - graphical runlevel editor
aptitude install bumПрограмма при запуске ожидаемо требует рутовых привилегий:
sudo bumПоявится красивая и удобная графическая оболочка, по умолчанию в "простом" варианте:
/etc/rc0.dсодержатся ссылки на соответствующие скрипты в /etc/init.d/
......
/etc/rc6.d
0 System HaltИ наконец несколько слов об асинхронной загрузке Linux. Это технически можно сделать, поправив конфиг /etc/init.d/rc до такого состояния:
1 Single user
2 Full multi-user mode (по умолчанию)
3-5 То же что и 2
6 System Reboot
# Specify method used to enable concurrent init.d scripts.Конкретно в моём случае ускорение составило около 2-3 секунд, что в общем меньше ожидаемого. А вариант "startpar" вообще привёл к тому, что система отказалась загружаться. Имея под рукой Knoppix Linux я, конечно, всё быстро поправил, но тем не менее.
# Valid options are 'none', 'shell' and 'startpar'
CONCURRENCY=shell
redirect_program /usr/local/bin/redirector.plЗная, что по умолчанию АVG 8 версии обращается на адрес http://guru.grisoft.com/softw/80free/update/ можно изготовить и сам скрипт redirector.pl:
#!/usr/bin/perlКак результат: запрос на получение обновлений с http://guru.grisoft.com/softw/80free/update будет автоматически перенаправлен по соответствующему URL на локальный веб-сервер организации с IP 192.168.1.16.
$|=1;
while (<>)
{
s@http://guru.grisoft.com/softw/80free/update@http://192.168.1.16/avg_bases@;
print;
}
#!/bin/shДля работы скрипта необходим wget, также, если требуется, нужно испавить путь до wget-a. Ставим скрипт в крон, периодичность - по усмотрению.
WORKDIR=/home/corning/public_html/avg_bases
AVGUPD_URL=http://guru.grisoft.com/softw/80free/update
/bin/mkdir -p $WORKDIR
/usr/bin/wget -q -O $WORKDIR/avginfoavi.ctf $AVGUPD_URL/avginfoavi.ctf
if [ ! -e $WORKDIR/avginfoavi.ctf ]; then
echo "Error downloading AVG update filelist"
exit
fi
for file in `grep -o "[[:alnum:]]*.bin" $WORKDIR/avginfoavi.ctf`
do
if [ ! -e $WORKDIR/$file ]; then
/usr/bin/wget -q -O $WORKDIR/$file $AVGUPD_URL/$file
fi
done
$ sudo apt-get install quota
#init 12. Отредактируйте файл /etc/fstab/:
$sudo vi /etc/fstab/3. Перемонтируйте раздел /home:
$ sudo mount -o remount /home4. Создайте файлы aquota.user и/или aquota.group. Файлы должны быть созданы в самой верхней директории раздела. В нашем случае это /home. Поскольку я хочу ограничить квотами лишь пользователей, файл aquota.group я создавать не буду.
$ sudo touch /home/aquota.user5. Разрешаем linux читать файл aquota.user. Это делается с помощью команды quotackeck. Будьте готовы к тому, что будет выведена ошибка, как показано ниже. Это связано с тем, что файл был создан вручную, а не командами qouta. Также будет сказано об отсутствии файла для групп. Ничего страшного в этом нет
$ sudo chmod 600 /home/aquota.user
$ sudo quotacheck -vagum6. Задайте квоты для пользователей, используя команду edquota
quotacheck: WARNING - Quotafile /home/aquota.user was probably truncated. Can't save quota settings...
quotacheck: Scanning /dev/sda8 [/home] quotacheck: Old group file not found. Usage will not be substracted.
done
quotacheck: Checked 5265 directories and 74403 files
$sudo edquota -u nadiiaЭта команда запустит редактор, установленный по умолчанию (переменная EDITOR) (в моем случае это редактор mc -mcedit):
Disk quotas for user nadiia (uid 1001):(Если используемый по умолчанию редактор вам не нравится, всегда можно его изменить, запустив в консоли export EDITOR=vi. Вместо vi запишите удобный для вас редактор)
Filesystem blocks soft hard inodes soft hard
/dev/sda8 16 0 0 5 0 0
Disk quotas for user nadiia (uid 1001):7. Теперь можно выйти из однопользовательского режима (если вы работали в нем), набрав
Filesystem blocks soft hard inodes soft hard
/dev/sda8 16 50000 0 5 0 0
#init 5Все. Теперь пользователь nadiia не может превысить 50Mb.
#dpkg -P wine2. Выкачиваем все что есть отсюда
ftp://ftp.etersoft.ru/pub/Etersoft/WINE@Etersoft-1.0.8/WINE/Debian/4.0/3. Удалить каталог .wine из домашнего каталога пользователя
$ rm -rf ~/.wine4. Переходим в каталог куда скачали файлы с ftp сервера.
# dpkg -i ./*wine*.deb6. Если все прошло удачно, вводим от имени обычного пользователя команду:
$ wineЭто нужно чтобы в личном каталоге пользователя создать рабочее обружение среды wine.
$ wine --version8. Далее в каталог c:\windows\system32 копируем все файлы *.dll из ОС Windows того же каталога.
WINE@Etersoft 1.0 Network (1.0.8)
$wine DCOM98.EXE /Q16. Запускаем wine 1C_77_25setup.exe (у вас установочный дистрибутив 1С может называться по-другому), установка должна пройти без проблемм. Ставим базы.
"rpcrt4" = "родная,встроенная"18. Если всё увидели, то идём в меню выбора баз данных, добавляем базы, выбираем нужную и входим в неё через конфигуратор.
"ole32" = "родная,встроенная"
"olepro32" = "родная,встроенная"
"oleaut32" = "родная,встроенная"
"msvcrt40" = "родная,встроенная"
если winecfg английский, то родная=native, встроенная=builtin
$wine 1Cv7.exeВот собственно и все. Если есть вопросы отвечу.