we are sorry, we are open

7.4.2009

Монтирование и работа с устройствами от имени пользователя

СисАдминство — Тэги: — Zed @ 13:54:18.

Как-то вдруг надоело монтировать флешку и работать с файлами на ней от имени рута.
Я использую sudo. Кроме того, я вхожу в группу wheel, на случай если надо сделать su.

Поменял переменную ядра:
~> sudo sysctl vfs.usermount=1

Прописал то же самое в /etc/sysctl.conf:
vfs.usermount=1

В файле /etc/rc.conf дописал:
devfs_system_ruleset="localrules"

Создал файл /etc/devfs.rules:
[localrules=10]
add path 'da*' mode 0660 group wheel

Таким образом поменял для всех устройств, начинающихся с «da», группу на wheel и дал права на чтение и запись для владельца и группы. По-умолчанию указана группа operator, в которую я не вхожу.

Посмотрел какие права на устройстве в данный момент:
~> ls -l /dev/da0*
crw-r----- 1 root operator 0, 138 Mar 31 16:15 /dev/da0
crw-r----- 1 root operator 0, 139 Mar 31 16:15 /dev/da0s1

Переконфигурировал устройства:
~> sudo /etc/rc.d/devfs restart

Убедился, что права и группа изменились в нужную сторону:
~> ls -l /dev/da0*
crw-rw---- 1 root wheel 0, 138 Mar 31 16:15 /dev/da0
crw-rw---- 1 root wheel 0, 139 Mar 31 16:15 /dev/da0s1

Теперь надо назначить себя владельцем точки монтирования:
~> sudo chown malik:wheel /mnt/flash
Ну или, если угодно, создать свою точку монтирования:
~> mkdir ~/flash

Кстати, для монтирования CD-ROM от имени пользователя достаточно чтобы точка монтирования принадлежала этому самому пользователю, т.к. писать на CD-ROM стандартным средствами системы мы не собираемся )

И, наконец, монтирую флешку:
~> mount_msdosfs /dev/da0s1 /mnt/flash

Всё нормально – флешка подмонтирована и можно нормально работать с файлам и папками от имени пользователя, не прибегаю к правам рута.

Замечание:
Монтирование флешки с указание локальной кодировки от имени обычного пользователя возможно только после хотя бы одного монтирования из-под суперпользователя:
~> mount_msdosfs -L ru_RU.KOI8-R /dev/da0s1 /mnt/flash
mount_msdosfs: cannot find or load "msdosfs_iconv" kernel module
mount_msdosfs: msdosfs_iconv: Operation not permitted
~> sudo mount_msdosfs -L ru_RU.KOI8-R /dev/da0s1 /mnt/flash
Password:
~> sudo umount /mnt/flash
~> mount_msdosfs -L ru_RU.KOI8-R /dev/da0s1 /mnt/flash
~>

25.4.2007

SORRY. NO SPACE IN lost+found DIRECTORY

СисАдминство — Тэги: — Zed @ 18:07:28.

После сбоя винта и при его проверке при помощи fsck получаем кучу сообщений об ошибке:

SORRY. NO SPACE IN lost+found DIRECTORY

Дело в не свободном объёме в этом разделе, а в свободных дескрипторах файлов. Для увеличения их количества принудительно подмонтируем раздел, создаём в папке «lost+found» создаём кучу файлов, удаляем их, отмонтируем раздел и снова натравливаем на него fsck:

# mount -f /dev/ad0s1f /mnt
# i=1; while [ $i -lt 10000 ]; \
 do touch /mnt/lost+found/xxx.$i; i=`expr $i + 1`;done
# rm /mnt/lost+found/xxx.*
# umount /mnt
# fsck -y /dev/ad0s1f

20070425

10.5.2004

Ошибка «kernel: calcru: negative time of …»

СисАдминство — Тэги: — Zed @ 17:53:42.

Поставил FreeBSD 5.2.1 на достаточно старенькую машину с процессором AMD-K6 400МГц. Вот таким его видит ядро:

May  5 14:32:12  kernel: CPU: AMD-K6(tm) 3D processor (400.12-MHz 586-class CPU)
May  5 14:32:12  kernel: Origin = "AuthenticAMD"  Id = 0x58c  Stepping = 12
May  5 14:32:12  kernel: Features=0x8021bf
May  5 14:32:12  kernel: AMD Features=0x80000800

Проблема достаточно явная, но как она влияет на работу системы мне не известно – на консоль постоянно валятся вот такие ошибки:

May  5 15:22:25  kernel: calcru: negative time of -1360420 usec for pid 12137 (cc)

Поиски по Гуглу дали очень много упоминаний подобной проблемы и ниодного внятного решения для системы старше 5-й версии. Решение для младших версий не подошло, зато оно подтолкнуло меня к следующим действиям.

После некоторых раздумий я решил посмотреть переменные ядра (или как они правильно называются?) с подходящими названиями. Наиболее подходящими оказались переменные kern.timecounter.*, а среди них вот такие:

# sysctl -a | grep timecounter
...
kern.timecounter.hardware: ACPI-safe
kern.timecounter.choice: TSC(800) ACPI-safe(1000) i8254(0) dummy(-1000000)
...

На другой машине с такой же системой значение переменной kern.timecounter.hardware имело значение TSC, какое и было выставлено на данной проблемной машине:

sysctl kern.timecounter.hardware=TSC

Насколько я могу судить проблема устранилась.

Осталось только прописать новое значение упомянутой переменной в файл /etc/sysctl.conf, чтобы оно снова было выставлено после перезагрузки системы:

# tail /etc/sysctl.conf
kern.timecounter.hardware=TSC

30.5.2002

Установка и настройка антивируса DrWeb для sendmail под FreeBSD4.5.

СисАдминство — Тэги: , — Админ @ 17:18:24.

«Поставлю-ка DrWeb под FreeBSD4.5 и sendmail» – подумал я, и вот результат. Особенно мне понравилось, что демо-версия вполне пригодна для использования – она не может только лечить заражённые файлы, смотреть почтовые базы и заглядывать в архивы, а мне этого особо и не надо :-)
(продолжение…)

антивирус бильярд документы единоборства интернет.кг модем мото оружие разное сайты сети сноуборд сын татуировки юмор bluetooth cisco diesel dns freebsd linux mobile mysql pda php ripe shell sony ericsson sun wi-fi windows

Последние комментарии:

Powered by WordPress (41 queries. 0.354 seconds)