Linux
strace/SystemTap/ftrace/ktap/pspy
FreeBSD
truss/ktrace/dtrace
OpenBSD
ktrace/kdump
Solaris
truss/dtrace
==================================
Misc
https://klarasystems.com/articles/freebsd-vs-linux-tracing-and-troubleshooting
strace/SystemTap/ftrace/ktap/pspy
truss/ktrace/dtrace
ktrace/kdump
truss/dtrace
==================================
Misc
https://klarasystems.com/articles/freebsd-vs-linux-tracing-and-troubleshooting
$watch /sbin/ifconfig -s eth0
$netstat -w 1 -I em0
$netstat -I net0 1
$dlstat -i 1 net0
#dladm show-link -s -i 1 net0
Здесь (http://www.brendangregg.com/Perf/network.html) неплохой подбор по утилитам замера трафика для Solaris
Рассмотрим монтирование iso-образов в разных ОС
смонтировать
#mount -o loop -t iso9660 file.iso /mnt/test
размонтировать
#umount /mnt/test
sysctl в Solaris отсутствует. Аналог есть, но он не один. Иными словами параметры разнесены по разным категориям и соответственно управляются через разные утилиты. И так, приступим к небольшому обзору.
Тестовый стенд: Solaris 10/11
Разделяемую память (англ. Shared memory) применяют для того, чтобы увеличить скорость прохождения данных между процессами. В обычной ситуации обмен информацией между процессами проходит через ядро. Техника разделяемой памяти позволяет осуществить обмен информацией не через ядро, а используя некоторую часть виртуального адресного пространства, куда помещаются и откуда считываются данные.
После создания разделяемого сегмента памяти любой из пользовательских процессов может подсоединить его к своему собственному виртуальному пространству и работать с ним, как с обычным сегментом памяти. Недостатком такого обмена информацией является отсутствие каких бы то ни было средств синхронизации, однако для преодоления этого недостатка можно использовать технику семафоров.
Сам сервер по умолчанию уже входит в базовую поставку как Solaris 10 так и Solaris 11. Настройка в 10 и 11 ничем не отличается. И так:
1) Создаём корень tftp сервера:
#mkdir /var/tftp
2) Добавляем описание нашего сервера в inetd.conf:
tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd -s /var/tftp tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /var/tftp
Если ipv6 не надо – просто уберите соответствующую строку.
В Solaris 11 в процессе установки нигде не спрашивается о размере выделяемого swap’a. А всё потому, что они отталкиваются от такой таблицы
System Type
|
Swap Volume Size
|
Dump Volume Size
|
---|---|---|
System with about 4 GB of physical memory
|
1 GB
|
2 GB
|
Mid-range server with about 8 GB of physical memory
|
2 GB
|
4 GB
|
High-end server with about 16 to 128 GB of physical memory
|
4 GB
|
8-64 GB
|
High-end server with more than 128 GB of physical memory
|
1/4 of physical memory size
|
1/2 of physical memory size
|
Но что делать, если нужно изменить размер swap’a?
В Solaris 10/11 нету команды chsh для смены оболочки. Естественно, что root сможет поменять оболочку кому угодно, но что делать, если пользователь сам хочет себе поменять shell? Выход есть:
$ passwd -e skeletor
Old shell: /usr/bin/pfbash
New shell: /usr/bin/bash
passwd: password information changed for skeletor
В wikipedia написано следующее:
fuser — утилита, идентифицирующая процессы, которые используют указанные файлы или сокеты.
но в Solaris она немного упрощена и позволяет узнать только данные про файловую систему.
Узнаем, какие процессы заняли /proc:
# fuser -c /proc
/proc: 151o 11o
Очень удобная команда завершения всех процессов, занявших данную ФС
# fuser -c -k /mount-point
В Solaris 11 сделали много изменений, в том числе и с учётной записью root. Теперь это не пользователь, а роль! А что это значит? А это значит то, что зайти (выполнить команду login) под этой учётной записью нельзя, даже если знать пароль. Это сделано в целях безопасности. Но что же делать, если всё-таки нужно учётную запись root сделать обычным пользователем? А вот что:
#rolemod -K type=normal root
и вернуть обратно как роль:
#rolemode -K type=role root
Так можно сделать с любой записью. Очень полезно, если нужно использовать запись и запретить под ней вход.