FreeBSD
# cpuset -C -c -l 0,2 -p 1701
OpenBSD
cpu affinity
Linux
# taskset 0x00000001 google-chrome
# dplace -c 2 date
Рекомендую так же прочесть этот обзор
Solaris
# pbind -b 2 204 223
# cpuset -C -c -l 0,2 -p 1701
cpu affinity
# taskset 0x00000001 google-chrome
# dplace -c 2 date
Рекомендую так же прочесть этот обзор
# pbind -b 2 204 223
Как можно быстро добавить в зону датасет или нужную папку? Есть не мало методов, но самый оптимальный – это использовать LOFS из global. Почему оптимальный? Потому что это делается быстро и не требуется перегружать зону.
Буду рассказывать всё на примере, так понятнее. Имеем selenium, который зависит от Xvfb. И так, нужно что бы сначала стартовал Xvfb, а потом уже selenium, и была зависимость selenium от Xvfb.
1) Создание сервиса Xvfb.
Для запуска создаём скрипт /opt/scripts/xvfb.sh. На основе этого скрипта создаём SMF сервис:
# svcbundle -i -s service-name=application/xvfb -s model=daemon -s start-method="/opt/scripts/xvfb.sh"
Правим в файле /etc/udev/rules.d/70-persistent-net.rules строку, относящуюся к eth0:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:1f:xx:a1", ATTR{type}=="1", KERNEL=="eth*", NAME="netdev0"
Переименовываем файл /etc/sysconfig/network-scripts/ifcfg-eth0 в /etc/sysconfig/network-scripts/ifcfg-netdev0 и правим внутри строку DEVICE=”netdev0″
Налету
# ifconfig bge1 name net1
permanent (добавляем в /etc/rc.conf):
ifconfig_bge1_name="net1"
ifconfig_net1="inet 192.168.0.1/24"
dladm rename-link net0 lan0
На постоянной основе отключается через внесение в /etc/system такой строки:
set zfs:zfs_prefetch_disable = 1
Налету так:
# echo zfs_prefetch_disable/W0t1 | mdb -kw
Посмотреть текущее значение:
# echo "::zfs_params" | mdb -k | grep zfs_prefetch_disable
Не забываем делать
# bootadm update-archive
иначе будет двойная перезагрузка.
Налету:
sysctl vfs.zfs.prefetch.disable=1
permanent (добавляем в /etc/sysctl.conf):
vfs.zfs.prefetch.disable=1
Налету
echo 1 > /sys/module/zfs/parameters/zfs_prefetch_disable
permanent (добавляем в /etc/modprobe.d/zfs.conf)
options zfs zfs_prefetch_disable=1
и обновляем initrd:
update-initramfs -u
Данная команда может использоваться в очень многих случаях, и является по сути швейцарским ножом в Solaris. Ниже будут описаны несколько примеров.
1) Восстановление метки zfs.
Если вы увидели сообщение
primary label corrupt; using backup
то восстановить метку очень просто:
Если при импорте пула получаем такое сообщение
# zpool import -f rpool
cannot import 'rool': I/O error. Destroy and re-create the pool from a backup source.
то восстановить пул практически невозможно. Но можно хотя бы посмотреть, что случилось с ним.
Тестовый стенд: Solaris 11.1, дисковый пул на 24 диска в RAID10.
Если у вас настроено smtp-notify для fmadm faulty, то вы получите на почту 2 сообщения:
Нашёл в рассылке неплохой скрипт для проверки жёстких дисков на ошибки. Недостатки скрипта в том, что он даёт поверхностную информацию. Более полную можно вытащить из вывода команды
$ kstat -pm sderr
Скрипт ниже.
ZFS обладает многими свойствами и преимуществами. Некоторые редкий, но полезные особенности и свойства рассмотрим ниже.
1) Запрет удаления snaphot’a
Допустим, вам нужно запретить удалить снапшот по каким-либо причинам стандартным образом через zfs destroy. Для этого существует команда hold, которая “защищает” его от удаления. Пример: