20140220

Быстрые заметки по linux

31. Сделать загрузочную usb из iso образа.
[root@blackpc Downloads]# dd if=ubuntu-16.04.1-desktop-amd64.iso of=/dev/sdX
2955680+0 records in
2955680+0 records out
1513308160 bytes (1.5 GB) copied, 315.148 s, 4.8 MB/s

 


30. Показать конфиг без коментариев.
grep -v -E "#|^$" main.conf - убрать строку содержащую "#"
grep -v -E "^#|^$" main.conf - убрать строку начинающуюся с "#"

29. Обнуление счетчика icmp пакетов у команды ping.
64 bytes from 176.114.202.2: icmp_seq=65533 ttl=55 time=5.32 ms
64 bytes from 176.114.202.2: icmp_seq=65534 ttl=55 time=5.32 ms
64 bytes from 176.114.202.2: icmp_seq=65535 ttl=55 time=5.32 ms
64 bytes from 176.114.202.2: icmp_seq=0 ttl=55 time=5.32 ms
64 bytes from 176.114.202.2: icmp_seq=1 ttl=55 time=5.32 ms
64 bytes from 176.114.202.2: icmp_seq=2 ttl=55 time=5.32 ms
 

28. Подключиться по RDP к Windows и примонтировать /home как диск. 
rdesktop -u user -r disk:home=/home/user -g 90% -k en-us -d domain 192.168.0.1

27. Показать время в unix time
# date
Sat Feb  6 23:50:54 MSK 2016
# date +%s

1454791857


26. TimeTicks
# snmpwalk -c what -v 1 localhost HOST-RESOURCES-MIB::hrSystemUptime.0
HOST-RESOURCES-MIB::hrSystemUptime.0 = Timeticks: (924428) 2:34:04.28

# snmpwalk -c what -v 1 -Otv localhost HOST-RESOURCES-MIB::hrSystemUptime.0
927919

TimeTicks/100 = секунды




TimeTicks/6000 = минуты
TimeTicks/360000 = часы
TimeTicks/8640000 = дни


25. Пример файла ifcfg-eth0
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:25:11:7A:AB:AA
TYPE=Ethernet
UUID=e619a645-c894-475d-88df-4d7a7deee559
ONBOOT=yes
NM_CONTROLLED=no
IPV6INIT=no
BOOTPROTO=none
IPADDR=10.254.1.7
PREFIX=24
GATEWAY=10.254.1.240
DNS1=172.16.0.11

DEFROUTE=yes

24. Посмотреть сетевые карты.
# yum install pciutils
# lspci | grep Eth
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 02)
02:01.0 Ethernet controller: VIA Technologies, Inc. VT6105/VT6106S [Rhine-III] (rev 86)
02:02.0 Ethernet controller: 3Com Corporation 3c905B 100BaseTX [Cyclone] (rev 64)

23. Thunderbird - человеческий формат даты и времени. Решение честно списано - http://blog.amet13.name/2015/07/thunderbird-24.html

# joe /usr/bin/thunderbird
В начало файла пишем:
...
LC_TIME="ru_RU.UTF-8"
export LC_TIME
...
После обновления thunderbird операцию повторить. 

22. Cacti, длина поля data queries
По умолчанию длина стоит 15 символов.
Запрос "|host_description| - Traffic - port |query_ifDescr| (|query_ifAlias|)"
выдаст результат "test-sw1 - Traffic - port GigabitEthernet (to_test-sw2/p1)", т.е. не булет видно полностью название филического интерфейса коммутатора.

Увеличить значение можно в поле:
Configuration -> Settings -> Visual-> Maximum Field Length
Там же есть Maximum Title Length, длина подписи к графикам.

21. !H 
 1  192.168.0.91 (192.168.0.91)  3000.135 ms !H  3000.131 ms !H  3000.128 ms !H

[root@xxx ~]# ping 192.168.0.40
PING 192.168.0.40 (192.168.0.40) 56(84) bytes of data.
From 192.168.0.91 icmp_seq=1 Destination Host Unreachable

Посмотри arp.

20. Скопировать папки на одном компе c помощью rsyncrsync -vaW --progress /media/c117/ /media/mm/


19. UFW
/etc/ufw - конфиги файрволла
# ufw enable  - запустить ufw и сказать, что ufw будет запускаться при старте
# ufw reset  - сбросить правила до дефолтных
# ufw allow 22/tcp - разрешить ssh  c any на any
# ufw allow 100:102/udp - разрешить диапазон udp портов c any на any
# ufw allow from 1.1.1.1 to any port  80 proto tcp - разрешить http с 1.1.1.1
# ufw status numbered - посмотреть пронумерованный список правил  
# ufw delete 2 - удалить правило номер два, после  удаления правила перенумеруются. 

18. Запустить на удаленной машине rtorrent 
ssh y@x.x.x.x 'screen -fa -d -m rtorrent'

17. Послать UDP-пакет.
Отправляем 10 upd пакетов с порта 53 на порт 13546 на ip 1.1.1.1, имитируем ответ dns сервера.
# hping -c 10 --udp -s 53 --keep -p 13546 1.1.1.1

16. Распаковать .gz
# gzip -d srx-session-permit-unt-unt.log-20151023.gz 

15. MOTH
Message of the day.
Просто надо попрвить /etc/motd и при логине по ssh сообщение появится после последнего времени захода. 

14. Комбо.
# ifdown eth1 && ifup eth1

13. Cron.
Формат.
0 1 * * * /path/to/script
минуты часы число месяц день_недели команда

Примеры:
17 13 * * * /path/to/script - каждый день в 13:17

17 13 * * 2,4,6 /path/to/script - каждый вторник, четверг и субботу в 13:17 (дни считаются от 0 до 6, 0 это воскресенье)

17 13 * * 1-5 /path/to/script - каждый день с понедельника по пятницу в 13:17 

12. Удалить ssh ключ из know_hosts.
$ ssh-keygen -f .ssh/known_hosts -R test.server.xxx
или 
$ ssh-keygen -f .ssh/known_hosts -R 1.1.1.1


11. Вывести список файлов в которых нашлось совпадение (ключ -l).
# grep -l mail-mgmt *

10. Показать дату на один день меньше, задать свой формат даты.
[root@mxr2 tmp]# date --date "-1 days" +'%d.%m.%Y'
13.07.2015

9. exaile на centos6
-- Подключаем репозиторий nux-dextop.
http://li.nux.ro/repos.html

-- Ставим exaile и gstreamer неоходимы для работы с mp3.
# yum install exaile gstreamer-plugins-ugly

8. Посмотреть статус физического интерфейса в linux.
[root@blackpc ~]# ethtool eth1
Settings for eth1:
Supported ports: [ TP ]
Supported link modes:   10baseT/Half 10baseT/Full 
                       100baseT/Half 100baseT/Full 
                       1000baseT/Half 1000baseT/Full 
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes:  10baseT/Half 10baseT/Full 
                       100baseT/Half 100baseT/Full 
                       1000baseT/Half 1000baseT/Full 
Advertised pause frame use: Symmetric
Advertised auto-negotiation: Yes
Link partner advertised link modes:  10baseT/Half 10baseT/Full 
                                    100baseT/Half 100baseT/Full 
Link partner advertised pause frame use: Symmetric
Link partner advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: off
Supports Wake-on: g
Wake-on: d
Current message level: 0x000000ff (255)
      drv probe link timer ifdown ifup rx_err tx_err
Link detected: yes


7. Размер папки.
-- Посмотреть размер текущей папки.
root@% pwd
/cf
root@% du -sh
688M

-- Посмотеть размер всех директорий и файлов в текущей папке.
root@% du -sh *
3.0M    boot
2.0K    dev
592K    etc
  0B    kernel
  0B    kernel.old
 16K    opt
175M    packages
 10K    root
166K    sbin
 14K    usr
509M    var

6. tar
-- Создать архив .tgz из файлов в текущей папке.
tar -czvf name.tgz *

-- Разархивировать .tgz в текущую папку.
tar -zxvf name.tgz

5. Показать каталог в виде дерева.
# tree -puga test
# tree -pugad -L 2 test

4. Создать пользователя без домашней директории, задать шелл и группу.
# useradd -M -s /bin/false -G nfs

3. NFS
NFS-сервер.

# joe /etc/exports
/mnt/mm x.x.x.y(rw,sync,no_subtree_check,all_squash,anonuid=1000,anongid=1000)

rw - разрешаем чтение и запись.
sync - режим работы при котором сервер ждет когда клиент запишет файл и только после этого подтверждает успешность записи.
no_subtree_check -
all_squash - разрешаем подключение от анонимного пользователя.
anonuid, anongid - при анонимной записи файла на сервер в качестве владельцев подставляем локальных пользователя и группу.

Применение изменений в файле /etc/exports
# exportfs -a

NFS-клиент. 
# mount -t nfs x.x.x.y:/mnt/mm /mnt/nfs-server
# umount /mnt/nfs-server


2. Символическая ссылка.
ls -s /path/to/file_or_folder symlink_name

1. Сравнение файлов.
diff file1 file2 - отчет о различиях, читать не удобно.
sdiff file1 file2 - читаемо, выводит сравниваемый текст в две колонки.

Смена пуллера в cacti c cmd.php на spine

Система centos 6.

1. Доставляем пакетов.
yum install gcc mysql-devel net-snmp-devel autoconf automake libtool dos2unix

2. Скачиваем и ставим cacti-spine.
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.8b.tar.gz
tar -xzvf cacti-spine-0.8.8b.tar.gz
ll
cd cacti-spine-0.8.8b
ll
./bootstrap 
./configure 
make
make install

3. Копируем и правим конфигурационный файл. 
cp /usr/local/spine/etc/spine.conf.dist /etc/spine.conf

joe /etc/spine.conf

DB_Host         localhost
DB_Database     cacti
DB_User         cacti
DB_Pass         xxx
DB_Port         3306
DB_PreG         0

4. В вэб-интерфейсе cacti прописываем путь дло spine.
Settings --> Paths --> Alternate Poller Path --> /usr/local/spine/bin/spine


5. В вэб-интерфейсе cacti прописываем путь дло spine.
Settings --> Poller --> Poller Type --> spine

Все. После в логах (/usr/share/cacti/log/cacti.log) можно посмотреть, что spine заработал.