По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В этой статье мы объясним, как узнать, кто использует тот или иной файл в Linux. Это поможет вам узнать системного пользователя или процесс, который использует открытый файл. Как узнать, кто использует файл в Linux? Мы можем использовать команду lsof (которая является аббревиатурой от List Of Opened Files), чтобы узнать, использует ли кто-то файл, и если да, то кто. Он читает память ядра в поиске открытых файлов и перечисляет все открытые файлы. В этом случае открытый файл может быть обычным файлом, каталогом, специальным файлом блока, специальным файлом символов, потоком, сетевым файлом и многими другими, поскольку в Linux все является файлом. Lsof используется в файловой системе, чтобы определить, кто использует какие-либо файлы в этой файловой системе. Вы можете запустить команду lsof в файловой системе Linux, и выходные данные идентифицируют владельца и информацию о процессах для процессов, использующих файл, как показано в следующих выходных данных. $ lsof /dev/null Список всех открытых файлов в Linux COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME systemd 1480 merionet 0r CHR 1,3 0t0 6 /dev/null sh 1501 merionet 0r CHR 1,3 0t0 6 /dev/null sh 1501 merionet 1w CHR 1,3 0t0 6 /dev/null dbus-daem 1530 merionet 0u CHR 1,3 0t0 6 /dev/null xfce4-ses 1603 merionet 0r CHR 1,3 0t0 6 /dev/null xfce4-ses 1603 merionet 1w CHR 1,3 0t0 6 /dev/null at-spi-bu 1604 merionet 0r CHR 1,3 0t0 6 /dev/null dbus-daem 1609 merionet 0u CHR 1,3 0t0 6 /dev/null at-spi2-r 1611 merionet 0u CHR 1,3 0t0 6 /dev/null xfconfd 1615 merionet 0u CHR 1,3 0t0 6 /dev/null xfwm4 1624 merionet 0r CHR 1,3 0t0 6 /dev/null xfwm4 1624 merionet 1w CHR 1,3 0t0 6 /dev/null xfce4-pan 1628 merionet 0r CHR 1,3 0t0 6 /dev/null xfce4-pan 1628 merionet 1w CHR 1,3 0t0 6 /dev/null Thunar 1630 merionet 0r CHR 1,3 0t0 6 /dev/null Thunar 1630 merionet 1w CHR 1,3 0t0 6 /dev/null xfdesktop 1632 merionet 0r CHR 1,3 0t0 6 /dev/null xfdesktop 1632 merionet 1w CHR 1,3 0t0 6 /dev/null .... Чтобы вывести список файлов, открытых для конкретного пользователя, выполните следующую команду: замените merionet вашим именем пользователя. $ lsof -u merionet Список файлов, открытых пользователем: COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME systemd 1480 merionet cwd DIR 8,3 4096 2 / systemd 1480 merionet rtd DIR 8,3 4096 2 / systemd 1480 merionet txt REG 8,3 1595792 3147496 /lib/systemd/systemd systemd 1480 merionet mem REG 8,3 1700792 3150525 /lib/x86_64-linux-gnu/libm-2.27.so systemd 1480 merionet mem REG 8,3 121016 3146329 /lib/x86_64-linux-gnu/libudev.so.1.6.9 systemd 1480 merionet mem REG 8,3 84032 3150503 /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0 systemd 1480 merionet mem REG 8,3 43304 3150514 /lib/x86_64-linux-gnu/libjson-c.so.3.0.1 systemd 1480 merionet mem REG 8,3 34872 2497970 /usr/lib/x86_64-linux-gnu/libargon2.so.0 systemd 1480 merionet mem REG 8,3 432640 3150484 /lib/x86_64-linux-gnu/libdevmapper.so.1.02.1 systemd 1480 merionet mem REG 8,3 18680 3150450 /lib/x86_64-linux-gnu/libattr.so.1.1.0 systemd 1480 merionet mem REG 8,3 18712 3150465 /lib/x86_64-linux-gnu/libcap-ng.so.0.0.0 systemd 1480 merionet mem REG 8,3 27112 3150489 /lib/x86_64-linux-gnu/libuuid.so.1.3.0 systemd 1480 merionet mem REG 8,3 14560 3150485 /lib/x86_64-linux-gnu/libdl-2.27.so ... Еще одно важное использование lsof - выяснение процесса прослушивания определенного порта. Например, определите процесс, прослушивающий порт 80, с помощью следующей команды. $ sudo lsof -i TCP:80 Процессы, прослушивающие порт: COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME httpd 903 root 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 1320 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 1481 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 1482 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 1493 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 1763 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 2027 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 2029 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 2044 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 3199 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) httpd 3201 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN) Примечание: поскольку lsof читает память ядра при поиске открытых файлов, быстрые изменения в памяти ядра могут привести к непредсказуемым результатам. Это один из основных недостатков использования команды lsof. Для получения дополнительной информации, смотрите справку lsof: $ man lsof На этом все! В этой статье мы объяснили, как узнать, кто использует тот или иной файл в Linux.
img
Ищете возможность анализировать сетевой трафик/отправлять его на систему записи телефонных разговоров? Изи. Коммутаторы Cisco (да и многие другие) дают возможность копировать пакеты с определенного порта или VLAN и отправлять эти данные на другой порт для последующего анализа (Wireshark, например). Кстати, этот функционал полезен при использовании IDS (Intrusion Detection System) систем в целях безопасности. Мы уже рассказывали теоретические основы SPAN/RSPAN, поэтому, сегодняшняя статья будет посвящена практике настройке. Про настройку SPAN В рамках обычной SPAN сессии захват (копирование) сетевого трафика происходит с порта источника (source port) и отправляется на порт назначения (destination port). Обратите внимание на пример ниже: мы сделаем SPAN – сессию с порта fa 0/1 и отправим данные на порт fa 0/5: Важно! SPAN – сессия может работать только в рамках одного коммутатора (одного устройства). Конфигурация: switch# configure terminal switch(config)# monitor session 1 source interface fa0/1 switch(config)# monitor session 1 destination interface fa0/5 Просто, не правда ли? В рамках данной конфигурации весь трафик с порта fa 0/1 будет скопирован на порт fa 0/5. Интереснее: пример RSPAN Идем вперед. Более продвинутая реализация зеркалирования трафика это RSPAN (Remote SPAN). Эта фича позволяет вам зеркалировать трафик между различными устройствами (коммутаторами) по L2 через транковые порты. Копия трафика будет отправляться в удаленный VLAN между коммутаторами, пока не будет принята на коммутаторе назначения. На самом деле, это легко. Давайте разберемся на примере: как показано на рисунке, мы хотим копировать трафик с коммутатора №1 (порт fa 0/1) и отправлять трафик на коммутатор №2 (порт fa 0/5). В примере показано прямое транковое подключение между коммутаторами по L2. Если в вашей сети имеется множество коммутаторов между устройствами источника и назначения – не проблема. Конфигурация: //Настройки на коммутаторе источнике switch_source# config term switch_source(config)# vlan 100 //Создаем Remote VLAN на первом коммутаторе (в который будем передавать данные с source порта) switch_source(config-vlan)# remote span switch_source(config-vlan)# exit switch_source(config)# monitor session 10 source interface fa0/1 switch_source(config)# monitor session 10 destination remote vlan 100 //Настройки на коммутаторе получателе switch_remote# config term switch_remote(config)# vlan 100 //Создаем Remote VLAN на втором (удаленном) коммутаторе (в который будем передавать данные с source влана уже на порт назначения) switch_remote(config-vlan)# remote span switch_remote(config-vlan)# exit switch_remote(config)# monitor session 11 source remote vlan 100 switch_remote(config)# monitor session 11 destination interface fa0/5 Таким образом, весь трафик с интерфейса fa 0/1 на локальном коммутаторе (источнике) будет отправлен в vlan 100, и, когда коммутатор получатель (remote) получит данные на 100 VLAN он отправит их на порт назначения fa 0/5. Такие дела. Party Hard: разбираемся с ERSPAN ERSPAN (Encapsulated Remote Switched Port Analyzer) - фича, которая используется для копирование трафика в L3 сетях. В основе работы механизма лежит GRE инкапсуляция. Как показано ниже, между коммутатором источником и коммутатором получателем устанавливается GRE – туннель (между IP – адресами машин). Опять же, мы хотим отправить трафик с порт fa 0/1 на порт fa 0/5. Конфигурация: //Настройки на коммутаторе источнике switch_source(config)# monitor session 1 type erspan-source switch_source(config-mon-erspan-src)# source interface fa0/1 switch_source(config-mon-erspan-src)# destination switch_source(config-mon-erspan-src-dst)# erspan-id 111 //Это значение должно быть одинаковым на всех устройствах switch_source(config-mon-erspan-src-dst)# ip address 192.168.1.5 //IP - адрес коммутатора получателя switch_source(config-mon-erspan-src-dst)# origin ip address 192.168.2.5 //IP - адрес коммутатора отправителя (источника) //Настройки на коммутаторе получателе switch_remote(config)# monitor session 1 type erspan-destination switch_remote(config-mon-erspan-dst)# destination interface fa0/5 switch_remote(config-mon-erspan-dst)# source switch_remote(config-mon-erspan-dst-src)# erspan-id 111 switch_remote(config-mon-erspan-dst-src)# ip address 192.168.1.5 //IP - адрес коммутатора получателя (назначения) Траблшутинг Мониторинг трафика в указанном VLAN: monitor session 1 source vlan 13 Мониторинг входящего или только исходящего трафика: monitor session 1 source vlan 13 rx/tx Посмотреть конфигурацию сессии зеркалирования: show monitor session 1
img
Многие пользуются возможностями, которые предоставляет виртуализация, но на 64-битной системе Windows – если Hyper-V включен, то в VirtualBox будет отсутствовать возможность создавать 64-битные виртуальные машины – учитывая, что потребность в создании таких виртуалок все-таки может возникнуть, то мы решили перечислить несколько способов как быстро включатьвыключать Hyper-V. Первый способ Первый способ также описывает процесс первоначального включения Hyper-V – сперва нужно открыть окно Windows Features и найти пункт Hyper-V (как на скриншоте ниже): Соответственно, если вам необходимо установить 64-битную машину на VirtualBox, нужно снять галочку Hyper-V и перезагрузить компьютер. Второй способ – с помощью PowerShell Сперва требуется запустить PowerShell (оболочка, разработанная Microsoft для конфигурации и автоматизации различных задач). Самое простое – ввести Powershell в строку поиска и кликнуть на нужное приложение. Далее, есть две команды, одна соответственно включает, а вторая отключает функционал виртуализации. Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V –All - включение; Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All - соответственно выключение; Помните, что PowerShell должен быть запущен в elevated режиме – для этого просто нажмите правой кнопкой и запустите от имени администратора, иначе можете увидеть ошибку как на скриншоте ниже. Третий и четвёртый способы - через командную строку Важно – командную строку также необходимо запускать от имени администратора 3 способ -для включения нужно выполнить команду dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All , а для выключения, соответственно, нужно Enable заменить на Disable. Четвертый способ похож на предыдущий, только команды отличаются: Для включения – bcdedit /set hypervisorlaunchtype auto Для выключения - bcdedit /set hypervisorlaunchtype off Заключение Итак, мы привели в пример несколько возможных способов включения и выключения Hyper-V, для меня самым удобным является первый способ – через Windows Features. На мой личный вкус, возможности Hyper-V богаче, чем у VirtualBox, особенно в плане выделения ресурсов процессора, памяти, QoS и т.д. Однако, VirtualBox выгодно выделяется тем, что не требует включенной функции Intel Virtualization Technology (Intel VT) в BIOS.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59