Категорії
Cisco

[cisco] Configuration register

Нещодавно дізнався про configuration registry у cisco router’ах (у свічів такого параметру немає). Якщо коротко, то це означає, як і з якими параметрами буде завантажено Cisco IOS. Щось на зразок grub boot options у Linux/Solaris.

Неправильно виставлений configuration registry може призводити до того, що поточний налаштування не зберігаються, навіть якщо ви виконуєте wr mem або copy run start. Згідно з документацією якщо він має значення 0x2142, то він ігнорує всі зміни, бо там чітко вказано:

Ignores the contents of Non-Volatile RAM (NVRAM) (ignores configuration)

Категорії
Misc, staff, other

Rescue partition

testdisk

TestDisk is powerful free data recovery software! It was primarily designed to help recover lost partitions and/or make non-booting disks bootable again when these symptoms are caused by faulty software: certain types of viruses or human error (such as accidentally deleting a Partition Table). Partition table recovery using TestDisk is really easy.

ddrescue

GNU ddrescue is a data recovery tool. It copies data from one file or block device (hard disc, cdrom, etc) to another, trying to rescue the good parts first in case of read errors.

dd_rescue

Like dd, dd_rescue does copy data from one file or block device to another. You can specify file positions (called seek and Skip in dd).

More recover tools

Категорії
Linux Misc, staff, other Routers, GW, Internet

[Linux] Tracing: bcc-tools, bpftrace, bpftop

BCC is a toolkit for creating efficient kernel tracing and manipulation programs, and includes several useful tools and examples. It makes use of extended BPF (Berkeley Packet Filters), formally known as eBPF, a new feature that was first added to Linux 3.15. Much of what BCC uses requires Linux 4.1 and above.

bpftrace is a high-level tracing language for Linux enhanced Berkeley Packet Filter (eBPF) available in recent Linux kernels (4.x)

bpftop provides a dynamic real-time view of running eBPF programs. It displays the average runtime, events per second, and estimated total CPU % for each program. It also provides graphical views of these statistics over time. This tool minimizes overhead by enabling performance statistics only while it is active.

Категорії
FreeBSD Routers, GW, Internet

[FreeBSD] Альтернативний TCP-стек на прикладі RACK

Дана стаття є вільним перекладом цієї .

Якщо вас якимось чином не влаштовує стандартний стек TCP, то, починаючи з 13.0, можна використовувати свій власний. В даній статті ми розглянемо RACK-TLP TCP стек. Основна суть якого, в передачі timestamps, і при втраті пакету за рахунок цього швидше відновлюється передача даних. Тобто, даний стек буде біль ефективним в мережах з частими обривами звʼязку. У стабільних мережах, його немає сенсу застосовувати.

Категорії
FreeBSD Misc, staff, other

[FreeBSD] Install from Linux

1) Install Linux (Debian)
2) Install grub-iso
3) upload liveCD mfsBSD.iso
4) set network settings via kFreeBSD.mfsbsd.ifconfig in /boot/grub/grub.cfg
menuentry "$file1" {
set isofile=/boot/images/$file1
loopback loop (hd0,1)\$isofile
kfreebsd (loop)/boot/kernel/kernel.gz -v
kfreebsd_module (loop)/boot/kernel/ahci.ko
kfreebsd_module (loop)/mfsroot.gz type=mfs_root
set kFreeBSD.vfs.root.mountfrom="ufs:/dev/md0"
set kFreeBSD.mfsbsd.hostname="$hostname"
set kFreeBSD.mfsbsd.mac_interfaces="ext1"
set kFreeBSD.mfsbsd.ifconfig_ext1_mac="${iface_mac}"
set kFreeBSD.mfsbsd.ifconfig_ext1="inet $ip/${ip_mask_short}"
set kFreeBSD.mfsbsd.defaultrouter="${ip_default}"
set kFreeBSD.mfsbsd.nameservers="8.8.8.8 1.1.1.1"
set kFreeBSD.mfsbsd.ifconfig_lo0="DHCP"
...
}
5) Reboot

Даний мануал не мій, знайшов в мережі інтернет.

Категорії
Mail systems

[exim] postfixadmin: використовуємо квоти для цілого домену.

Одразу скажу, що нормального вирішення саме по квотам для цілого домену я не знайшов, тому зробив декілька workaround’ів. Я використовую звʼязку exim (+dovecot delivery) + dovecot + postfixadmin.

postfixadmin

Тут все достатньо просто. Вмикаємо підтримку квот в конфігу:

$CONF['quota'] = 'YES';
$CONF['domain_quota'] = 'YES';

Категорії
DataBases Misc, staff, other

Деякі хитрі методи видалення/очистки файлів

Тут будуть описані деякі методи, які краще використовувати у HighLoad, замість класичних, оскільки вони менше навантажують ПЗ.

  • truncate

Дозволяє обрізати файл до розміру, який вказано, наприклад, до 5Gb (зараз файл займає, наприклад, 10Gb):

$ truncate -s 5G file

Зауваження.

Чим цей метод краще, ніж, echo > file. Тим, що echo це робить дуже агресивно і дуже навантажує диски, а також блокує файловий дескриптор. truncate можна виконувати, наприклад, поєтапно, за 1 раз “обрізаючи” по 1Gb, або менше.

Категорії
Misc, staff, other

udp load balancer

Не так багато існує варіантів, щоб реалізувати тему, тому запишу сюди:

Категорії
Misc, staff, other Solaris

[Solaris] GRUB disable kernel module on boot

Якщо у вас при завантаженні ОС kernel panic на якийсь модуль ядра, то це достатньо просто відключити в grub’і:

-B disable-mpt_sas=true

, де mpt_sas – імʼя модуля ядра

Категорії
Solaris

[Solaris] Зламаний openssl зламав систему.

Якщо ви невдало поесперементували з mediator’ом openssl і отримали щось, на зразок такого:

root@old:~# bootadm list-menu
Traceback (most recent call last):
  File "/usr/lib/python3.7/vendor-packages/bootadm-helper.py", line 29, in 
    from bemgmt import BEManager
  File "/usr/lib/python3.7/vendor-packages/bemgmt/__init__.py", line 45, in 
    from bemgmt.be import USERPROP_ZONE_PARENTBE, ALLOWED_POLICIES, \
  File "/usr/lib/python3.7/vendor-packages/bemgmt/be.py", line 22, in 
    from bemgmt.utils import get_be_pool_and_name, get_mountpoint_from_vfstab, \
  File "/usr/lib/python3.7/vendor-packages/bemgmt/utils.py", line 20, in 
    from bemgmt.zfs_rad import ZfsRad
  File "/usr/lib/python3.7/vendor-packages/bemgmt/zfs_rad.py", line 17, in 
    import rad.connect as radcon
  File "/usr/lib/python3.7/vendor-packages/rad/connect.py", line 21, in 
    import ssl
  File "/usr/lib/python3.7/ssl.py", line 98, in 
    import _ssl             # if we can't import it, let the error propagate
ImportError: ld.so.1: bootadm: relocation error: file /usr/lib/python3.7/lib-dynload/_ssl.cpython-37m.so: symbol GENERAL_NAME_free: referenced symbol not found
bootadm: Unable to load python helper module

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff