LINUX.ORG.RU

Сообщения SwitNJ

 

замена в строке

Форум — General

есть:
mount_point=\«`expr »$*" : '.*\(/media/[^\t\n]*\)'`\"
try_mount_point=mount_point
parameters=`echo $*`

в процессе, допустим
try_mount_point=«/media/cdrom»

нужно в parameters заменить mount_point на
try_mount_point

но конструкция вида

parameters=`echo $* | sed -r s/$mount_point/$try_mount_point/`

возвращает пустую строку.. (
что делать? как правильно?

SwitNJ ()

Шлюз между двумя сетями + интернет

Форум — Admin

Есть две сети

1) городская

Шлюз:
10.10.4.1
Маска:
255.255.252.0
DNS:
10.10.4.1

2) организации
Шлюз :
10.7.12.1
Маска
10.255.255.255
DNS:
10.7.12.11

Имеется компьютер с двумя сетевыми картами
который смотрят
eth0 (IP: 10.7.12.34) - в сеть организации
eth2 (IP: 10.10.5.165) - в сеть города

Этот компьютер подключается к интернету посредством PPTP VPN, в итоге появляется еще один интерфейс
dsl0 (IP: 172.16.5.165) Шлюз 10.10.4.0

для того чтобы это все работало как надо на самом шлюзе пришлось добавить пару строк роутинга:

10.0.0.0 10.7.12.1 255.0.0.0 eth0 10.* посылаем все в оргинизацию
10.10.0.0 10.10.4.1 255.255.252.0 eth2 10.10.* посылаем в город
default 10.10.4.0 - - все остальные идут в интернет

короче говоря таблица маршрутизации такая:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.10.4.1 * 255.255.255.255 UH 0 0 0 eth2
172.16.254.1 * 255.255.255.255 UH 0 0 0 dsl0
10.10.4.0 * 255.255.252.0 U 0 0 0 eth2
link-local * 255.255.0.0 U 0 0 0 eth0
10.0.0.0 * 255.0.0.0 U 0 0 0 eth0
loopback * 255.0.0.0 U 0 0 0 lo
default * 0.0.0.0 U 0 0 0 dsl0

на этой же машинке настроил DNS сервер который форвардирует DNS сервера 10.10.4.1 и 10.7.12.11

затем настроил PPTP сервер который раздает машинкам подключаемым к нему адреса из диапазона 192.168.1.10-192.168.1.20
сам VPN сервер имеет адрес 192.168.1.1

Все это крутится, днс работает, vpn сервер работает.

Затык начинается на том этапе, что когда виндовая машинка из сети организации (допустим с адремом 10.7.12.251) подключатся к этому VPN серверу по адресу дозвона 10.7.12.34 в качестве шлюза и DNS сервера, в ней создается новое подключение.
Выглядит это так:

сетевая1
IP-адрес . . . . . . . . . . . . : 10.7.12.251
Маска подсети . . . . . . . . . . : 255.255.255.0
Основной шлюз . . . . . . . . . . : 10.7.12.1
DNS-серверы . . . . . . . . . . . : 10.7.12.11

MY - PPP адаптер:
DNS-суффикс этого подключения . . :
Описание . . . . . . . . . . . . : WAN (PPP/SLIP) Interface
IP-адрес . . . . . . . . . . . . : 192.168.1.10
Маска подсети . . . . . . . . . . : 255.255.255.255
Основной шлюз . . . . . . . . . . : 192.168.1.10
DNS-серверы . . . . . . . . . . . : 10.7.12.34

Активные маршруты:
Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика
0.0.0.0 0.0.0.0 10.7.12.1 10.7.12.251 21
0.0.0.0 0.0.0.0 192.168.1.10 192.168.1.10 1
10.7.12.0 255.255.255.0 10.7.12.251 10.7.12.251 10
10.7.12.34 255.255.255.255 10.7.12.251 10.7.12.251 10
10.7.12.251 255.255.255.255 127.0.0.1 127.0.0.1 10
10.255.255.255 255.255.255.255 10.7.12.251 10.7.12.251 10
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.10 255.255.255.255 127.0.0.1 127.0.0.1 50
192.168.1.255 255.255.255.255 192.168.1.10 192.168.1.10 50
224.0.0.0 240.0.0.0 10.7.12.251 10.7.12.251 10
224.0.0.0 240.0.0.0 192.168.1.10 192.168.1.10 1
255.255.255.255 255.255.255.255 10.7.12.251 10004 1
255.255.255.255 255.255.255.255 10.7.12.251 10.7.12.251 1
255.255.255.255 255.255.255.255 192.168.1.10 192.168.1.10 1
Основной шлюз: 192.168.1.10
===========================================================================
Постоянные маршруты:
Отсутствует


как видно пакеты все идут теперь на адрес 192.168.1.10 в сети VPN (фактически же на сервер 192.168.1.1, который имеет адрес в сети организации 10.7.12.34).
и там и пропадают.
Не смотря на то что в файрволе opensuse стоит трансляция адресов ничем не ограниченная, тем не менее, пакеты так и пропадают никуда не доходя.

Вопрос: что надо такое настроить в openSUSE (у меня 11.1) чтобы приходящие пакеты сортировались на VPN сервере и направлялись
a) 10.10.* - в сеть eth2
б) 10.* - обратно в сеть eth0 (не хочу делать роутинг пакетов на каждой подключаемой машине в виде постоянного маршрута)
в) все остальные в dsl0

нужна проброска всех протоколов (ftp,http,samba, icmp ну и так далее.. короче полноценная работа между двумя сетями)

SwitNJ ()

Печать из буффера обмена

Форум — Development

Нужна прога которая умеет следующее:

0) работает предельно быстро (так как комп очень загружем тяжелым софтом) 1) определяет момент когда в буфефр обмена попадает строка состоящая из (к примеру) 12 цыфр (с возможными пробелами или символами перевода строки в начале или конце и усекает их до ТОЛЬКО ЦЫФР) 2) при вышеописанном событии спрашивает у юзера разрешение на выполнение печати, а после печати разрешение на повтор печати 3) печатает строку вида 10023432458790 в формате 1 0 0 2 3 4 3 2 4 5 8 7 9 0 (пробелы между цыфрами) в определенном месте на бумаге на на указываемом в конфиге принтере в определенном конфигами месте (к примеру на 10 и 10 мм от правого и верхнего края).

Вроде ничего сложного, но я кроме как на дефли/лазарусе более ни в чем и не программировал а особенно под линуксом, а прога ОЧЕНЬ нужна и чтобы она не жрала ресурсы и пункт 0 - очень быстро срабатывала. Плиззз, помогите!

SwitNJ ()

Кодировка файловых систем флешек, флопика и CD/DVD

Форум — Desktop

В продолжение темы на ветке http://www.linux.org.ru/jump-message.jsp?msgid=3284154&cid=3316090

почему-то не дает писать комментарии.. не пойму в чем дело.

В общем проблема в том что когда вставляю флешку на которой нету метки (пустая) то имя подставляется как NO NAME и при этом монтирование обрывается.
как я понял все дело в том что имя диреткории монтирования содержит пробел (зачем его так кде тулит?).
Вот привожу лог:

Sended to mount:
-t vfat -o nosuid,nodev,flush,uid=1000,noatime,utf8,shortname=lower /dev/sdc1 /media/NO NAME
-t vfat -o nosuid,nodev,flush,uid=1000,noatime,utf8,shortname=lower /dev/sdc1 /media/NO NAME
Removing UTF8:
-t vfat -o nosuid,nodev,flush,uid=1000,noatime,shortname=lower /dev/sdc1 /media/NO NAME
Corrected for CD/DVD/USB(vfat)/FLOPPY:
-t vfat -o nosuid,nodev,flush,uid=1000,noatime,shortname=lower,iocharset=cp1251,codepage=1 251 /dev/sdc1 /media/NO NAME

если же метку прописать - все монтируется на ура с именем метки.
подскажите что поправить в скрипте. на текущий момент он имеет вид:


#!/bin/bash
# Change Additional mount options with IOCHARSET and CODEPAGE you need
# Additional mounting options (cyrillic correction)
default_additional_options=",iocharset=cp1251,codepage=1251"
additional_options_cdrom=",iocharset=cp1251"
log_name="/var/log/mount.log"

echo "Sended to mount:" | tee -a "$log_name"
echo $* | tee -a "$log_name"
echo $* | iconv -f UTF-8 -t cp1251 | tee -a "$log_name"

# Get mount point name
mount_point=`expr "$*" : '.*\(/media/[^ \t\n]*\)'`
# Get try mount point name
try_mount_point=`echo $mount_point | iconv -f UTF-8 -t cp1251`
# Create symlink in /media/ directory
if [ ! "$try_mount_point" == "$mount_point" ] && [ ! -e "$try_mount_point" ];then
ln -s "$mount_point" "$try_mount_point"
fi

# Removing [,]utf8[=true][,]
parameters=`echo $* | sed -r s/"(,utf8(=true)?|utf8(=true)?,)"//`

echo "Removing UTF8:" | tee -a "$log_name"
echo $parameters | tee -a "$log_name"

# Checking if FS type or Mounting Options specified
if ( expr "$parameters" : '.*\(/dev/\(sr\|cdrom\)[[:alnum:]]*\)' > /dev/null ); then
# update mount options for cdrom
parameters=`echo $parameters | sed -r s/"-o [[:alnum:],-_=]*"/\&$additional_options_cdrom/`
elif ( expr "$parameters" : '.*\(/dev/\(fd\|floppy\)[[:alnum:]]*\)' > /dev/null ) || ( expr "$parameters" : '.*\(-t vfat[[:blank:]]\)' > /dev/null ); then
# update mount options for other
parameters=`echo $parameters | sed -r s/"-o [[:alnum:],-_=]*"/\&$default_additional_options/`
fi

echo "Corrected for CD/DVD/USB(vfat)/FLOPPY:" | tee -a "$log_name"
echo $parameters | tee -a "$log_name"

# mount
/bin/mount_true $parameters

SwitNJ ()

KDE3 + XOrg = проблемка с DEL (.) на цыфровой клаве

Форум — Desktop

Всем привет! Столкнулся с такой проблемой. Значит включаю в КДЕ3 переключение раскладок клавиатуры (тот который kxkb или как его там), добавляю три языка - английский, русский (winkeys), украинский (winkeys). Настраиваю там все, в том числе отображение языков и переключение языка по Ctrl-Shift правому.. Воот... все переключает замечательно и даже не теряется при перезагрузке. Собственно проблема: В русской раскладке на цыфровой клавиатуре при включенном NumLock когда нажимаю клавишу DEL (.) то выскакивает заместо точки - запятая, а на других машинках еще и глюкан как буд-то эмулируется нажатие Ctrl-Alt-F8 - то есть во второй терминал графический влетает и экран становится черным с моргающим курсором. Что за хрень? в украинской раскладке такого нету! Кто подскажет как это побороть? Мне нужно при нажатии на DEL (.) получить именно точку а не непредсказуемую галиматью.

Примечание: 1) Дистрибутив OpenSuse 11.0 2) XOrg обновляю постоянно из репозитария ftp://ftp5.gwdg.de/pub/opensuse/repositories/X11:/XOrg/openSUSE_11.0/

SwitNJ ()

удаление недействительный символических ссылок

Форум — General

Помогите, пожалуйста! есть каталог, к примеру /media. В нем содержатся как директории, так и файлы и символические ссылки. Через некоторое время символические ссылки становятся недействительными, так как ссылаются на временные файлы или директории, которые удаляются по прошествии времени или по событию в системе. Естественно, они засоряют директорию. Задача - удалить из этой директории ссылки, которые направлены на несуществующие файлы. Как это сделать? Мне нужно в виде скрипта.

SwitNJ ()

как вырезать подстроку из строки в скрипте?

Форум — General

есть строка вида (echo $*):

-t iso9660 -o nosuid,nodev,uid=1000,noatime,utf8 /dev/sr0 /media/ПЛУЖАРЕ-2! может быть и вида -t iso9660 /dev/sr0 /media/ПЛУЖАРЕ-2! -o nosuid,nodev,uid=1000,noatime,utf8

нужно из нее получить вот этот (/media/ПЛУЖАРЕ-2!) фрагмент в переменную $utf8_path как это сделать? само собой понимается что этот путь может быть как в средине так и в конце строки передаваемых параметров $* , то есть может быть ограничен пробелами, табуляцией или концом строки

помогите, плиз, ибо я не разбираюсь в работе со строками и регулярными выражениями

SwitNJ ()

Кодировка файловых систем флешек, флопика и CD/DVD

Форум — Desktop

Проблема с кодировками! Пользую openSUSE 11.0 + KDE 3.5.10. Локаль 1251 (нужна позарез для правильного отображения файлов на SMB/FTP ресурсах).

Так вот - по сети и локально все работает отлично, но когда втыкаешь флешку или дискету или компакт/двд привод с файлами на русском - имена отображаются в крокозябрах - два символа на букву в названии. В общем нечто с кодировкой UTF-8. Когда скопирую файлы и поделаю им convmv с указанием из UTF-8 в cp1251 - имена восстанавливает, но это как крайняя мера и не всегда годится. Что и где поправить чтобы отображались правильные имена файлов ВСЕГДА ? Судя по всему это так криво работает HAL. И , кстати, заметил еще что при монтировании vfat опция -iocodepage недопустима! все врямя на нее ругается что бы не написал.. в мануале написано что опция допустима а на деле нет! то есть примеры из интернета для монтирования не катят - крокозябры остаются (это когда я пробовал фат раздел винчестера примонтировать).

Кто что знает? колитесь!

SwitNJ ()

Open Office 3 - Не открывает более одного файла за раз

Форум — Desktop

Беда! Начиная с версии 3.0.0.3 или около того (в обещем-то говоря с момента оффициального релиза) офис при уже одном открытом документе перестает открывать другие офисовские документы (любые!). Если же открывать файлы из офисовской оболочки - получается, но это же ник черту не годится! В чем может быть проблема? При чем наблюдается это на ВСЕХ имеющихся у меня компьютерах.

Операционка - OpenSUSE 11.0, офис обновлял с оффициального билдсервиса.

Еще заметил что перестали открываться из ThunderBird doc-файлы и тп связанные с офисом - заметил что oowriter перестал быть в списке ассоциированных приложений по умолчанию, хотя в КДЕ в связанных типах файлов все есть.. ничего не понимаю. от версии птички не зависит - пробовал делать откаты.

Как сообщить разработчикам? Я не рублю в составлении писем нга английском...

SwitNJ ()

FTP SERVER + GUI со статистикой и графиками нагрузки

Форум — Admin

Доброе время суток!

Возможно уже неоднократно здесь поднимался вопрос об удобном ФТП сервере, простом в настройке и в обслуживании. Но поиск по нету дает в основном или битые ссылки на экзотику, или три стандартных самых распространенных фтп сервера входящие в каждый дистрибутив. Причем удобоваримой инструкции как быстро и без спотыканий об типичные ошибки поднять этот самый сервер - нигде нету. Нету даже в справке в моем опенСУСЯке, который в самом ясте якобы содержит ГУЁвину для настройки аж целых двух типов фтп серверов. Может я плохо искал, но подсказки по бокам окон мало помогают понять почему то пользователь недопустим, то директория для корня этого юзера недопустима, то еще сто с лишним ошибок.. :(

Фишка в том что мне нужно перевести ФТП сервер с оффтоповой тачки на линуксовую (openSUSE 11), и при этом получить хотябы урезанный, но аналог Gene6 (G6) FTP Server. Там четко разделены домены, сервера, юзеры - причем виртуальные, без необходимости создавать базы данных юзеров в самой настройке безопасности линукса и тд и тп. все настройки хранятся в одном месте и легко бекапятся. При этом очень удобно мониторить и регулировать активность пользователей и нагрузку сервера на графиках и в живенько отображающихся логах. Все красиво до безобразия.. но, как уже догадались - нелегально. Хочу аналог! Ваши ТОЛКОВЫЕ идеи приближенные по функционалу и эргономике с G6FTP!

Tnx!

>>>

SwitNJ ()

ХОХО: Ноутбук 2.0 за $100 оказался неправдоподобно продвинутым

Новости — Hardware and Drivers
Группа Hardware and Drivers

Глава организации "По ноутбуку каждому ребёнку" (One Laptop Per Child – OLPC) Николас Негропонте (Nicholas Negroponte) представил дизайн будущего аппарата на конференции по проблемам, связанным с доводкой до ума (а скорее с реанимацией) первого сверхдешёвого ноутбука – ХО-1.

>>> Подробности

 , ,

SwitNJ ()

OpenOffice 2.4.1.5/2.4.1.4 сам закрывается после попытки восстановления документа

Форум — Desktop

OpenSuSE 10.3 Регулярно обновляю пакет опеноффиса c установкой версии 2.4.1.4 начались траблы: запускаешь оффис.. работает. Потом вдруг сам закрылся.. типа глюкнул. Запускаешь - просит восстановить документ. Говоришь ОК - пишет восстановилось! Продоолжить - видно главное окошко появилось и тут же сдохло. Когда отменяеь восстановление документа то оффис не пускается. Приходится только пускать прогу оффиса где выбор типа создаваемого документа, и то снова спросит восстанавливать или нет. скажет что все прошло успешно и только тогда уже запустит редактирование документа. Проработает пол минуты и сдохнет. Что за напасть? и где у него хранится хотябы запись о том, какой документ он хочет восстанавливать?

>>>

SwitNJ ()

Ext2/3 под Linux и Windows одновременно

Форум — Desktop

предыстория: стал подыхать веник, на нем много информации, впридачу имена файлов на русском почти везде - файловая свалка юзеров. Под виндами раздел NTFS оказался недоступен - попытки чтения ведут к зависанию компа. Под линуксом читается на ура. Причем под Мандривой 2008 spring сначала попоробовал - полное Г - кодировку не могло уловить ни при каких комбинациях. Плюнул, постави веник на OpenSUSE 10.3 - все зараболтало с полпинка. Немцы работают как надо. Далее. Системная локаль cp1251 - так надо потому что в сетке половина компов на линуксе - половина на винде и идет постоянный файлообмен ка кпо шарам так и по фтп - нормально получается работать только на этой кодировке, да еще учитывая спецыфику программного обеспечения под винд.. в общем - только cp1251. варианты не предлагать.

Задача стала передо мной такая: перенести данные на другой веник. Но не просто перенести, а с заделом на будущее - переставив на этом компе винду на линукс (жду опенсусеку 11) хочу увидеть все свои данные в полной сохранности и с читабильными именами файлов. как я уже сказал - локаль 1251.

Что сделал: 0) поставил дрова Ext2IFS самые свежие. кодировку UFT отключил тем самым дав системе писать имена фавйлов в той кодировкой которая используется системой - то есть по идее 1251 в винде у меня.

1) Физически подсоединил оба веника к линуховой тачке с опенсусекой. На свежем - создал раздел ext3 чистый. Подсоединил NTFS раздел со старого винта через mount -t ntfs-3g -o force,codepage=cp1251 (\from) (\to) и скопировал инфу как есть с винта на винт. Глазами вижу что при виндовой локали в системе имена файлов и на ntfs разделе читабильны, и на новоскопированном. Отрубаю винт, ставлю на винду. Монтирую, даю буковку диску. Захожу - трындец! вид у русских букв крокозябильный. Выглядит так, как выглядит 866 текс когда его смотришь в кодировке 1251 или наоборот. В общем кодировки не совпали.. облом-с! ладно... 2) оставлю винт на виндовом компе. Чищу файлы. На линуксовом монтирую через /sbin/mount.cifs -o codepage=cp1251,username=(..),passwd=(..) \\comp\resurs /mnt/networkdrive копирую файлы по сети. На виндовой такчке файлы выглядят читабильно, имена нормальные русские. Отсоединяю веник от виндовой тачки и цепляю на линукс где локаль 1251. Подмонтирую раздел - все в порядке, ошибок не пишет.. но! мляць.. буковки крокозябельные! однозначно не UTF8 - он двухбайтовый, спутать нельзя, все как и в предыдущем опыте - точно как перепутанные 866 и 1251 :(

ВОПРОС: что же все-таки делать чтобы один и тот же веник виделся и там и там так как нужно? Пробовал указывать mount кодовую страницу, нлс и прочее - говорит что такое делать для Ext2/3 нельзя - я в печали. Как побороть? можно ли в Линуксе разные разделы хранить под разными кодировками? Может получится именно этот раздел вести в кодировке UTF8? - новый драйвер под эти разделы в линуксе позволяет правильно работать с UTF8. Только напомню - системную локаль в линуксе менять нельзя - проги перестают работать с сетевой базой данных!

Жду ответа очень-очень! Спасибо!

>>>

SwitNJ ()

notebook Toshiba + Linux = ? :-(

Форум — Linux-install

есть старенький ноутбук тошиба 2800-S201 нужно поставить на него линукс поскольку в нем всего-навсего 128 метров ОЗУ и веник на 4 гига, сами понимаете что это должен быть миниатюрный линукс. вся загвоздка в том что ни один лив-сд на нем до конца не грузится, виснет в процессе. удалось загрузитья только на одном дистре - Damn small linux последний, верси не помню.. RC2 - тому и 50 метров достаточно. в принципе шустро работает, но я так и не увидел в нем винчестера, может кто подскажет как его видеть нужно. причем ядро там 2.6.24.2 кажись. воот.. на кнопиксе основан дистрик.

а линукс мне нужен вот зачем: 1) коннектиться в локальныую сетку через VPN в инет и работать как прокси серверок (желательно прозрачный) 2) иметь на борту интернетбраузер 3) иметь VLC для предпросмотра фильмов на месте 4) иметь Midnight Commander как привычный мне файлменеджер 5) ftp клиент с возможностью инхронизации и пакет для закачки файлов желательно с возможностью планирование 6) хорошо бы еще плеер который интернет-радио воспроизводит из потоков огг и мп3. комп старючий. но рабочий под виндой 98se. взялся из-за того что малоэнергоемкий и не шумит.

вот и все.. больше и не нужно ничего.. ну окромя возможности может еще картридеры видеть через юсб 1.1

у кого есть какие практические соображения, конкретные рабочие дистрибутивы, лив-сд дистры с возможностью установки на винт итп???

кстати как-то даже удалось стартонуть установщик мандрива 2007, но он завис на этапе разбиения винчестера - видать не хотят линуксы с ним дружить..

>>>

SwitNJ ()

openSUSE+CUPS+YAST = client-error-bad-request

Форум — Linux-hardware

Ситуация удручающая... 1) любая версия опенСУСЕ а может и не только его, не важно. 2) CUPS 1.3.6 и выше 3) любая попытка установить принтр через систему omni

Задача - есть принтер на параллельном порту Epson LX-300+. Запускаем YaST2 оборудование принтер добавить выбираем порт находим производителя принтера Epson выбираем Epson LX-300 (CUPS+omni (omni/EPSON/Epson-Epson_LX_300-omni-cups.pdd.zg) ОК ГОТОВО логовое окно: + настроить службы спулера + удалить старые очереди - сохранение очереди: выдает ошибку "Ошибка при соединении с CUPS сервером при сохранении очереди printer. cups(File)DoRequest error: client-error-bad-request"

все! тут наступает эра великого мехового животного "песец"

после этого более ни один принтер через яст и иже с ними в систему добавить невозможно и в списках ничего кроме обнаруженных в сети принтеров нету.

на неправильную настройку сети просьба не сетовать - до этого все работало нормально и с сеткой я не баловался. localhost:631 посзволяет настроить любой принтер но YaST2 его не увидит, точно так же как не увидят его программы из-под WinE как то FAR Manager к примеру (модуль настройки принтеров по умолчанию показывает а на печать сразу ошибка) - печатают только чисто линуксовые проги - а ммне нужно все в том числе и вайновые.

в общем.. реастарт купса не помогает, стирание очередей тоже. откат на раннюю версию тоже не помогает. только полный снос системы. я уже так трижды обжигался когда случайно добавлял принтер из системы "омни".. Помогите кто знает в чем дело! в интернете в том числе и на оффициальном сайте опенсусе ответа не нашел.

ПС: не важно что в системе принтера самого нету, это мелочи. главное попытка добавить, а вот именно она и рушит все к чертовой мамке. попробуйте у себя и сообщите результат пожалуйста! Очень срочно нужно решение проблемы!

>>>

SwitNJ ()

RSS подписка на новые темы