Linux
Виртуализация
Стандарты
- RFC3164 Протокол BSD Syslog
Wheezy
- компиляция из исходников:
make mkdir ./complite make install checkinstall make uninstall
Samba или работа в сети с Windows
- узнать имя компьютера:
# nmblookup -A 192.168.0.111 Looking up status of 192.168.0.230 BEGINER <20> - B <ACTIVE> MAC Address = 90-2B-34-41-EF-95
Удаленное управление пользователями в консоли:
ssh remotehost
ps -aux | grep bash
Получаешь примерно такую картину:
root 2043 0.0 0.7 4892 1644 tty1 S 00:24 0:00 -bash root 2441 0.0 0.0 4932 8 pts/1 S 00:31 0:00 /bin/bash root 2490 0.0 0.0 4932 4 pts/2 S 00:33 0:00 /bin/bash root 2497 0.0 0.0 4936 4 pts/3 S 00:33 0:00 /bin/bash root 2511 0.0 0.4 4936 1024 pts/4 S 00:35 0:00 /bin/bash root 7940 0.0 0.7 4936 1672 pts/5 S 05:09 0:00 -bash root 9275 0.0 0.7 4932 1664 pts/6 S 08:12 0:00 -bash root 12301 0.2 0.7 4932 1664 pts/7 S 21:44 0:00 -bash root 12377 0.0 0.2 3780 532 pts/7 S 21:46 0:00 grep bash
Теперь
kill -9 Nr.prozessa
Только смотри свой процесс не убей... :)
Как определить какая программа слушает порт?
netstat -nap|grep 8080
Запуск программ в фоне
top&
или
nohup top &
[ https://ru.wikipedia.org/wiki/Nohup nohup]
Команды Linux
[1]http://www.linux.org.ru/wiki/en/%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5_%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B
Решение частых проблем
[2]http://www.opennet.ru/base/sys/bash_tips.txt.html
Потоковый редактор SED
[3]http://linuxgeeks.ru/sed.htm
Неплохая шпаргалка по командам Linux
Еще одна хорошая шпаргалка с примерами
Полезный портал с примерами
Запуск Xorg приложений из ssh
ssh -X user@host.ru имя программы например iceweasel
Автозапуск приложений из xorg
ставим icewm
в /etc/rc.local вставляем
su user -c "startx"
А в USER$/icewm/autostart пишешь свою программу (/bin/bash)
Linux low level format - LLFormat
Пример низкоуровнего форматирования носителя:
dd if=/dev/zero of=/dev/sdX
Снятие и Восстановление загрузочной области утилитой dd
команда снятия загрузочной области:
dd if=/dev/sda of=bootsect.bin bs=512 count=1
восстановление загрузчика:
dd of=/dev/sda if=bootsect.bin bs=512 count=1
Подавление всех сообщений в том числе и ошибок
$ ls >myfile.txt 2>myfile.err
или
$ ls 2>/dev/null
At или Выполнение, останов и повторный запуск процессов
Создаем сервер USB Over IP на базе Linux
Довольно долго мне приходилось сталкиваться с ситуацией, при которой мне нужно было продолжать использовать физический сервер, хотя почти вся инфраструктура виртуализирована. Причиной этому было отсутствие подддержки USB устройств в самых разнообразных платформах виртуализации. В частности я использую Xen, а на сервере, который я хотел бы виртуализировать должен быть подключен USB ключ.
Конечно можно использовать аппратное оборудование, например USBoverIP, однако оно стоит значительных денег. И вот наконец решение найдено. Я обнаружил отличный бесплатный проект , доступный по этому линку - http://usbip.sourcefrge.net/
С помощью него можно преврать Linux систему в USB сервер, обслуживающий USB девайсы через IP для клиентов как под управление Linux, так и Windows.
Настройки сервера
1- Скачайте последний пакет по ссылке http://downloads.sourceforge.net/project/usbip/usbip/usbip-win-preview/usbip-win.zip?use_mirror=ignum
Я тестировал все под Ubuntu Karmic, поэтому мне необходимо было выполнить следующую команду:
usbip:~$ sudo aptitude install usbip
Затем необходимо загрузить следующие модули для возможности контролировать USB порты.
usbip:~$ sudo modprobe usbip usbip:~$ sudo modprobe usbip_common_mod
Теперь запустим usbip в качестве системного демона:
usbip:~$ usbipd -D Bind usbip.ko to a usb device to be exportable! usbip:~$
Это означает что все идет по плану и нам необходиом выбрать порт, который будет расшариваться.
1- Подключите USB устройство к компьютеру
2- Выполните команду
lsusb
Для поиска соответствующего индентификатора Vendor/Device ID, который имеет следующую форму:
Bus XXX Device YYY: ID VendorID:DeviceID Know that to find your favourite hardware ID, you can locate its possition on the BUS. Just match the ID with the result of usbip server check:
usbip:~$ sudo usbip_bind_driver --list busid 1-6 (0c45:63ee) 1-6:1.0 - > uvcvideo 1-6:1.1 - > uvcvideo
Из этой команды нам становиться известне bus-ID, указывающий на USB устройство. В данном случае это "1-6".
Теперь подключаем устройство к серверу:
usbip:~$ sudo usbip_bind_driver --usbip 1-6
После выполнения данной команды система будет передавать данные о USB устройстве с вашей системы удаленным клиентам.
Настройки клиентов
- Клиент MS Windows
Скачайте zip версию клиента по ссылке http://ignum.dl.sourceforge.net/project/usbip/usbip/usbip-win-preview/usbip-win.zip
Распакуйте её и выполните два простых шага.
Первое:
В архиве есть файл "bus.inf", который вам необходимо установить как "Generic system device" в своей системе.
Второе:
Выполните следующую команду из командной строки:
path-to-usbip:> usbip.exe -l <server-ip>
В результате выполнения этой команды вы увидите bus-ID, найденные на сервере.
Теперь подключите устройство следующей командой:
path-to-usbip:> usbip.exe -a <server-ip> USB-ID ** USB-ID в нашем случае 1-6.
Все!!! Вы увидите новое USB устройство, обнаруженное вашей системой.
- Клиент Gnu/Linux
В качестве клиента я тестировал дистрибутив Ubuntu Karmic
Подобно настройке серверной части необходимо выполнить команду:
$ sudo apt-get install usbip
Загрузите модуль "vhci-hcd":
$ sudo modprobe vhci-hcd
Теперь вы можете опросить сервер на наличие расшаренных USB устройств:
$ sudo usbip -l <server-ip>
А потом и подключить нужное устройство следующей командой:
$ sudo usbip -a <server-ip> X-Y
Настройка dns сервера
устанавливаем необходимые пакеты:
apt-get install resolvconf
только после этого ставим bind9 во избежание конфликтов...
apt-get install bind9
теперь сразу прописываем необходимые настройки для правильной работы служб:
editor /etc/default/bind9
изменяем параметр на указанный ниже:
RESOLVCONF=yes
дальше изменяем параметр dhcpclient
editor /etc/dhcp/dhclient.conf
добавляем:
prepend domain-name-servers 127.0.0.1;
перезапускаем службы:
/etc/init.d/bind9 restart ifdown eth0 ifup eth0
для внутренней сети в настройках /etc/network/interfaces
пропишите dns-nameservers 127.0.0.1
пример:
auto eth0 iface eth0 inet static address 10.10.1.1 netmask 255.255.255.0 network 10.10.1.0 broadcast 10.10.1.255 dns-nameservers 127.0.0.1 dns-search home.local
Восстановление удаленных файлов на ext3/ext4
Команды проверки наличия сети
для всех сетевых карт:
ip link
или
mii-tool
опреление настроек сети:
ifconfig route