LINUX.ORG.RU

Избранные сообщения nerve

Удаление слов из списка в списке файлов

Форум — Development

Приветствую всех монстров программирования! Сразу прошу отнестись с пониманием. По работе пишу иногда bash-скрипты, сильных знаний не имею.

Задача моя состоит в том, чтобы удалить в списке файлов строки, содержащие слова, которые тоже берутся из списка.

Было так:

#! /bin/bash

name=$1

#Получаем список файлов, где упоминается учетка пользователя
grep -liEs "$name" /etc/squid3/acls/* /var/lib/squidguard/db/* > "/tmp/path"
#Передаем список в переменную
path=`cat "/tmp/path"`

for i in $path
    do
        sed -i /$name/d $i
    done

#Показываем, в каких файлах пользователь был найден
echo -e "\033[1;32mUser was found in:\033[0m "$path""

#Переконфигурируем Сквид, чтобы больше не пускал этого юзера
squid3 -k reconfigure

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

 ,

firebolt
()

Не получается подружить nginx и php

Форум — Admin

Собственно сабж
Нашёл множество инструкций по поднятию стека LEMP, например эту http://rus-linux.net/MyLDP/server/Howto-install-LEMP.html делаю всё как написано. Дистрибутив - CentOS 7.
Пытаюсь открыть страницу, браузер мне вместо этого предлагает сохранить php-файл.
И ещё смежный вопрос: что нужно сделать в пакетном менеджере, чтобы установка php не тащила httpd?

 ,

sunny1983
()

Управление светодиодом состояния Wi-Fi.

Форум — Linux-hardware

Господа, задача не имеет скорее всего практической необходимости, а больше теоретическая. И так имеем ноут HP G7000(это compaq presario c700 но уже с лейблом HP) с Wi-fi intel 4965AGN. Mint18(Cinnamon) Необходимо управлять светодиодом который моргает при активности адаптера сине-рыжим, при его отключении, скажем кнопой, светит только рыжим. Так вот хотелось бы по своему усмотрению задавать его(светоиндикатора) работу(цвет, мигать - не мигать), в ручную, или скажем для работы в 5гГц сетке один цвет, в 2.4 - другой. Из того что я понял, надо что смотреть сюда: /sys/class/leds/phy0-led/device/ieee80211/ Но совершенно не ясно какие значения и на что в этом каталоге посылать. За ранее спасибо.

 , ,

Alexonline
()

Прошу помощи с perl

Форум — Development

Доброго времени суток. Написал говноскриптскрипт на bash, в perl, увы не силён. Нужно переписать его на perl. Bash очень медленный из-за количества awk, к тому же в JSON выводит не верно.На perl есть модуль JSON, SNMP и вроде бы IPCALC. Вот само поделие:

#!/bin/bash

snmp=/usr/bin/snmpwalk
ipcalc=/usr/bin/ipcalc
community="sbrf"
ver="v2c"
ip=$1
community=$2
fl=/tmp/json

neigbor=`$snmp -$ver -c $community $ip 1.3.6.1.2.1.14.10.1.1 | awk -F "IpAddress: " '{print $2}'`
ospfint=`$snmp -$ver -c $community $ip 1.3.6.1.2.1.14.7.1.1 | awk -F "IpAddress: " '{print $2}'`

echo "{">$fl
echo "   \"data\" : [">>$fl
for arg in $neigbor
do

##################
for argg in $ospfint
do
mask=`$snmp -$ver -c $community $ip 1.3.6.1.2.1.4.20.1.3.$argg | awk -F "IpAddress: " '{print $2}'`
net=`$ipcalc $argg $mask | grep Network: | awk '{print $2}'`
vhod=`$ipcalc $net /32 | grep Hostroute: | awk '{print $2}' | grep $arg`
if [ "$vhod" ]
then
gw=$argg
fi
done
###############



echo "      {">>$fl
echo "      \"{#IP}\" : \"$arg\",">>$fl
        echo "      \"{#GW}\" : \"$gw\",">>$fl
                index=`$snmp -$ver -c $community $ip 1.3.6.1.2.1.4.20.1.2.$gw | awk -F "INTEGER: " '{print $2}'`
                echo "      \"{#INDEX}\" : \"$index\",">>$fl
                        alias=`$snmp -$ver -c $community $ip 1.3.6.1.2.1.31.1.1.1.18.$index | awk -F "STRING: " '{print $2}'`
                        echo "      \"{#IFALIAS}\" : $alias,">>$fl
                        status=`$snmp -$ver -c $community $ip 1.3.6.1.2.1.14.10.1.6.$arg.0 | awk -F "INTEGER: " '{print $2}'`
                        echo "      \"{#STATUS}\" : \"$status\"">>$fl
echo "      },">>$fl
done
echo "   ]">>$fl
echo "}">>$fl

cat $fl
rm $fl

Вот, что он выводит, в конце лишняя запятая:

{
   "data" : [
      {
      "{#IP}" : "10.200.70.69",
      "{#GW}" : "10.200.70.70",
      "{#INDEX}" : "14",
      "{#IFALIAS}" : "ROSTELEKOM (DSV), IP: 172.19.208.170, to OVC_9070 [2]",
      "{#STATUS}" : "8"
      },
      {
      "{#IP}" : "10.200.70.73",
      "{#GW}" : "10.200.70.74",
      "{#INDEX}" : "16",
      "{#IFALIAS}" : "ROSTELEKOM (DSV), IP: 172.19.208.170, to RVC_9070 [4]",
      "{#STATUS}" : "8"
      },
      {
      "{#IP}" : "10.200.70.77",
      "{#GW}" : "10.200.70.78",
      "{#INDEX}" : "13",
      "{#IFALIAS}" : "ROSTELEKOM, IP: 172.30.56.218, to OVC_9070 [1]",
      "{#STATUS}" : "8"
      },
      {
      "{#IP}" : "10.200.70.81",
      "{#GW}" : "10.200.70.82",
      "{#INDEX}" : "15",
      "{#IFALIAS}" : "ROSTELEKOM, IP: 172.30.56.218, to RVC_9070 [3]",
      "{#STATUS}" : "8"
      },
   ]
}

Кто возьмётся - буду очень благодарен. Спасибо.

 , ,

nixit
()

Скачки напряжения, питание оборудования через стабилизатор 220В

Форум — Linux-hardware

У нас с недавнего времени начала сильно дурить сеть 220В
расколбас от 235В до 250В, иногда броски до неизвестного значения.

Неизвестного, потому что у меня просто срабатывает УЗМка 51М, настроенная на 255В отсечки.

подробнее:
http://forum.zaural.ru/index.php/topic,123978.msg1078107.htm

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

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

Пока поставил слабенький RUCELF СТАБИК СтАР-3000 http://www.220-volt.ru/catalog-54122/

на вход квартиры примерно так:

вход со счетчика -> УЗМ N1 (отсечка 255В) -> Стабик -> УЗМ N2 (отсечка 230В) -> внутренняя проводка в бронированной изоляции (металлорукав)

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

Но если нагрузить по максимуму несколькими мультиварками, микроволновкой, электроводонагревателем, и т.п. то, впечатление, что релюхи у него подгорают и переключается он потом не сразу, трещать релюшкой начинает на несколько секунд.

Поэтому у меня появилась идея подлечить релюхи. Вариантов насколько я понимаю 2: 1) Поменять релюхи на более мощные 2) Добавить искрогасительную схему на каждую релюху

Собственно по последнему параграфу и вопрос, как лучше действовать? Мне кажется лучше поставить более мощные реле, потому как проблема возникала на НЕиндуктивной нагрузке мультиварки у нас обычные с тенами, водогрей тоже

Вообще то надеюсь скоро приобрести более мощный стаб Квт эдак на 8, но и 3КВт стабик хотелось бы подшаманить, так то он - прикольная игрушка, внутренности уже сфоткал, родные релюхи у него с такими параметрами:

коммутация:30А

coil:12В/1-2Вт

копеечные релюхи по 100 руб

может поставить посерьезнее типа JQX62 ампер на 100? понятно, что мощности трансу это не прибавит, но хотя бы переключаться будет более четко даже после большой нагрузки

 

sanyock
()

bash конкантенация двух строк из массивов или двух выводов команды

Форум — General

Как? Нужно сложить в строку два вывода команд, причем каждый вывод представляет собой одномерный массив, а кол-во строк в каждом массиве одинаково.

array_1:
a 
c 
array_2:
b
d
output:
"a relies on b"
"c relies on d"
...
Необходимо только чтобы складываемые строки имели одинаковый порядковый номер в выдаче команд.
Я какую-то херню пишу все с циклами, но если вкладывать один цикл в другой, то вложенный при каждой итерации идёт заново.

 ,

drunken_train
()

[Solved] Ищу захламлённый каталог

Форум — Admin

Что бы сюда:

find /path/ -type d -iname "*" -exec sh -c "ls -l {} | wc -l " \;
добавить чтобы выводило название каталогов только при условии, что в них содержится файлов больше определённого числа?

Криво:

find /del_usr/ -type d -iname "*" -exec sh -c 'printf "%10d %s\n" "$(ls -lf {}  | wc -l)" "{}"' \;  > /tmp/tmp.test ; sort -n /tmp/tmp.test

или

find /del_usr/ -type d -iname "*" -exec sh -c 'printf "%10d %s\n" "$(ls -lf {}  | wc -l)" "{}"' \;  > /tmp/tmp.test ; sort -nr /tmp/tmp.test | head -n 33 

но работает, завернуть -exec в трубку с помощью «+ |»(???) что-то не получилось :-(

Вопрос с обработкой чисел на выходе из трубки остаётся открытым :-(

 , ,

jia
()

распарсить whois по списку ip

Форум — Admin

Здравствуйте, уважаемые форумчане. есть список ip вида:

031.013.093.033
199.027.134.032
188.043.072.233
010.129.000.000
188.043.073.016
000.000.000.000
162.159.254.249
095.100.002.110
050.023.235.011
096.030.037.202
095.100.002.110
необходимо пройтись по списку с помощь whois и сделать grep по name и descr
пример необходимой информации:
# whois 31.13.93.33 | grep name
netname:        FRA3
# whois 31.13.93.33 | grep descr
descr:          Facebook
# whois 188.43.72.233 | grep name
netname:        AKAMAI-SERVERS
# whois 188.43.72.233 | grep descr
descr:          (999999) TTK-AKAMAI-SERVERS,
descr:          Moscow, Russia
descr:          RU-TRANS-TELECOM

На выходе нужно получить список ip и информацию по ним.
Опыта у меня практически нет и я сразу же споткнулся на том, что whois не делает запрос на адресса вида «095.100.002.110»
Буду рад любой помощи.
Заранее благодарю.

 , ,

fon
()

Парсить лог подключений

Форум — Admin

Здравствуйте, уважаемые форумчане. Есть лог файл такого вида:

pos 0000438648
-1 1413864452 1413864452 173.194.115.255   443     0  17                 6702    43     2     3                    0
-1 1413864452 1413864452 173.194.115.255   443     0   6                 4685    43     2     3                    0
 1 1413864452 1413864452 173.194.115.255     0   443  17                 5477    43     2     3                    0
 1 1413864452 1413864452 173.194.115.255     0   443   6                 1064    43     2     3                    0
 1 1413864438 1413864469 173.194.071.095     0   443  17                 5344    43     2     3                    0
-1 1413864438 1413864438 173.194.071.095   443     0  17                33173    43     2     3                    0
 1 1413864438 1413864469 074.125.232.108     0   443  17                16524    43     2     3                    0
-1 1413864438 1413864438 074.125.232.108   443     0  17                46774    43     2     3                    0
-1 1413864362 1413864362 217.073.200.219   443     0   6                 7496    43     2     3                    0
 1 1413864362 1413864362 217.073.200.219     0   443   6                 2381    43     2     3                    0
 1 1413864377 1413864361 091.216.195.003     0   443   6                19340    43     2     3                    0
-1 1413864377 1413864361 091.216.195.003   443     0   6                79512    43     2     3                    0
-1 1413864362 1413864452 093.184.221.133   443     0   6              1364742    43     2     3                    0
 1 1413864362 1413864452 093.184.221.133     0   443   6                36444    43     2     3                    0
-1 1413864378 1413864389 173.194.029.147    80     0   6               104137    43     2     3                    0
 1 1413864377 1413864388 173.194.029.147     0    80   6                 2825    43     2     3                    0
 1 1413864360 1413864447 074.125.110.050     0    80  17               456778    43     2     3                    0
 1 1413864360 1413864360 074.125.110.050     0    80   6                  344    43     2     3                    0
-1 1413864360 1413864447 074.125.110.050    80     0  17             19441354    43     2     3                    0

описание столбцов:
1 направление движения сессии(-1 вход/ 1 исход)
2 начало сессии
3 конец сессии
4 ip
5 source port
6 dest port
7 номер протокола (6 tcp/ 17 udp)
Необходимо выяснить, на какие сайты осуществлялись соединения в указанный промежуток времени.
Буду рад любой помощи.
Заранее благодарю.

 , ,

fon
()

Multi_Zone_Error_Rate

Форум — Admin

Есть новый сервер с двумя новыми винтами в mdraid 1. После непродолжительной, но интенсивной работы этих дисков (установка и клонирование нескольких виртуальных машин kvm) один из них показывает:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   142   141   021    Pre-fail  Always       -       3891
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       17
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       142
 10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       15
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       14
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       2
194 Temperature_Celsius     0x0022   109   106   000    Old_age   Always       -       5922 (0 0 0 36)
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   100   253   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       3

Что хотел спросить: насколько плохо Multi_Zone_Error_Rate !=0 для нового винта? Есть ли смысл срочно менять его или оставить как есть?

В интернетах пишут, что при больших показателях этого датчика работа с диском сильно замедляется.

 ,

fjoe
()

badblocks - ремапит битые блоки?

Форум — Admin

Правильно ли я понимаю, что

sudo badblocks -sn /dev/sda3
Checking for bad blocks (non-destructive read-write test)

Ремапит найденные бэды, так чтобы система впоследствии их не использовала?

fs ext3/4

 ,

sergey-novikov
()

Вычислить кто кушает трафик в текущий момент..

Форум — Admin

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

Пока что смотрю через jnettop и iptraf (хорошо, но показывает или в байтах или в пакетах).

 ,

gard
()

Как освободить место на диске (CentOS 7.0 x64)?

Форум — General

Апдейт: проблема решена, проблемы не было. Всем спасибо и простите за беспокойство ))

Вобщем проблема такая: Купил хостинг с диском 20 гигов с установленной операционкой. Сколько места занимала голая операционка что-то не посмотрел.

Сам установил только mc, vsftpd, curl-devel, openssl-devel, zlib-devel, gcc-c, ffmpeg, libmp3lame

Посмотрел сколько места на диске - 18 гигов занято, 2 свободно 8-(

Вопросец: как бы мне поудалять всякую ненужную хрень (то что я установил - нужная), чтобы не убить систему и не поиметь проблем если захочу еще что-нибудь потом доустановить или собрать из исходников?

Понятно, что чтобы удалить что-нибудь ненужное, надо сначала найти что-нибудь ненужное. Как искать - не знаю. Может есть дельные советы?

 ,

kzv
()

Почему все дистрибути отказываются от поддержки ReiserFS?

Форум — Admin

Ubuntu 14.04, последний SUSE, шляпа, цента и федора отказались от возможности выбора ReiserFS из установщика, а в некоторых дистрибутивах его исключили из ядра.
С чем связан такой внезапный отказ от рейзера? Он же, вроде, крайне стабильно работает. И до сих пор быстрее ext4 на кучи мелких файлов.

 

ktulhu666
()

установить переменную

Форум — General

Пилю кусок скрипта:

history | awk '{print $2}' | sort -u |
while read line; do
    addBashcomp "$line"
    [ $? -eq 0 ] && N=1 
done

cat "$HOME"/.{,bash_}history | awk '{print $1}' | sort -u |
while read line; do
    addBashcomp "$line"
    [ $? -eq 0 ] && N=1 
done

if [ -z "$N" ]; then
    echo -e "\033[01;33m *\033[00m Nothing to add."
fi

N никак не хочет устанавливаться оттуда! Уже и export пробовал, и set, и объявлять переменную до этого куска — всё безрезультатно. Может, перепишу скрипт на чём-нибудь ещё, но хотелось бы доделать версию на bash.

 ,

batekman
()

MySQL запрос к Asterisk

Форум — General

Приветствую, подскажите. Задача: выяснить в максимальное количество одновременных звонков в астериске на сентябрь. Для этого нужно разделить месяц на периоды в 10 секунд и посчитать количество выводимых строк со статусом ANSWERED. К примеру:

SELECT COUNT(*) FROM `cdr` WHERE `calldate` BETWEEN '2014-09-01 00:00:00' AND '2014-09-01 00:00:10' AND `disposition` = "ANSWERED"
Но, не могу же я считать каждые 10 секунд, это получится 259200 запросов.

Подскажите как упросить?

mkondratev
()

CentOS/KVM/Резервное копирование

Форум — Admin

Здравствуйте, может кто посоветовать, каким способом лучше всего проводить резервное копирование в таком случае:

Есть сервак с кентом 6.5, на нем стоит KVM с несколькими виртуальными машинами, которые работают нон стоп (на них различные сетевые ресурсы, доступ к которым лучше не обрывать вообще, но если необходимо, то можно ночью)

Вот надо раз в день делать полный backup этих виртуальных машин.

ExoGenesis
()

Цикл for с несколькими параметрами в каждом из элементов списка

Форум — General

Здравствуйте прошу помощи разобраться.

Есть файл (/run/balance-ipt-restart) вида:

-A PREROUTING -s 10.192.234.108/32 -j balance_isp3
-A PREROUTING -s 10.192.234.108/32 -j balance_isp3
-A PREROUTING -s 10.192.236.102/32 -j balance_isp1
-A PREROUTING -s 10.192.186.115/32 -j balance_isp3

Есть цикл:

for iptrestore in $(cat /run/balance-ipt-restart)
   do
        iptables -t mangle $iptrestore
   done
При подстановке переменной с cat элементы списка разбиваются по словам в виде:
+ cat /run/balance-ipt-restart
+ iptables -t mangle -A
iptables v1.4.14: option "-A" requires an argument
Try `iptables -h' or 'iptables --help' for more information.
+ iptables -t mangle PREROUTING
Bad argument `PREROUTING'
Try `iptables -h' or 'iptables --help' for more information.
+ iptables -t mangle -s
iptables v1.4.14: option "-s" requires an argument
Try `iptables -h' or 'iptables --help' for more information.
+ iptables -t mangle 10.192.234.108/32
Bad argument `10.192.234.108/32'
Try `iptables -h' or 'iptables --help' for more information.
+ iptables -t mangle -j
iptables v1.4.14: option "-j" requires an argument
Try `iptables -h' or 'iptables --help' for more information.
+ iptables -t mangle balance_isp3
Bad argument `balance_isp3'
Хотелось бы получить конструкцию вида
for iptrestore in '-A PREROUTING -s 10.192.234.108/32 -j balance_isp3' '-A PREROUTING -s 10.192.234.108/32 -j balance_isp3'
   do
        iptables -t mangle $iptrestore
   done
То есть что бы каждая строка была элементом списка. Заранее спасибо.

 

fet4
()

sed удалить закомментированные строки в начале файла

Форум — General

Собственно сабж.

Есть такой файл:

#String1
# String2
#String3

Here is starting file...
#useful comment

Задача - удалить комментарии в начале файла, не трогая те, что идут после первой незакомментированной строки.

 

teamfighter
()

Из списка файлов удалить записи, соответствующие симлинкам

Форум — General

Есть список файлов, некоторые из них - симлинки. Нужно симлинки из списка удалить. Пока накостылял следующее:

#!/bin/bash
for i in `cat cruft`
  do if [[ -n `file -b $i | grep symbolic` ]]
  then 
    echo "$i"
  fi
done
Вывод направляется в новый файл. Собственно, я уже нашёл, как потом из первого файла вычесть второй, но, думается мне, скрипт выше - адский костыль. Может, посоветуете что-нибудь более изящное?

 

Valdor
()