Home » International » Russian » tmp noexec -> mount -t simfs
tmp noexec -> mount -t simfs [message #6144] |
Sat, 09 September 2006 13:19  |
Valmont
Messages: 225 Registered: September 2005
|
Senior Member |
|
|
Настраивал скрипты для монтирования tmp с noexec,nosuid согласно данному топику
http://forum.openvz.org/index.php?t=msg&goto=1372
с некоторыми поправками.
Подскажите пожалуйста сакральный смысл опций монтирования simfs.
mount -t simfs \
-o noatime,nosuid,noexec,nodev,rw,/vz/template:$TMPPATH/$VPSTMP \
/vz/template:$TMPPATH/$VPSTMP $VE_ROOT/tmp
В таком варианте у меня в принципе отказывалось монтироваться.
Согласно логике скрипта из этого должно получиться следующее:
root@server /etc/vz# mount -t simfs -o noatime,nosuid,noexec,nodev,rw,/run/vz/template:/run/vz/tmp/121 /run/vz/template:/run/vz/tmp/121 /run/vz/tmp/121/
mount: special device /run/vz/template:/run/vz/tmp/121 does not exist
Вот в таком варианте
mount -t simfs -o noatime,nosuid,noexec,nodev,rw,/run/vz/temp/120
/run/vz/temp/120 /run/vz/root/120/tmp
у меня монтируется, но непонятные глюки есть. Например при остановке одного vps у другого tmp однажды просто отвалился. Пока куда копать не знаю.
Опции, полагаю специфичны для simfs, так как раньше в мане по mount я такого не втречал, и с другими фс это не проходит:
root@server /etc/vz# mount -t ext3 -o noatime,nosuid,noexec,nodev,rw,/run/vz/tmp/121 /run/vz/tmp/121 /run/vz/tmp/121/
mount: /run/vz/tmp/121 is not a block device
Хотелось бы понять механизм и разобраться с глюками, которые мне пока не очень понятны и вероятно вытекащими именно из этого непонимания 
Почему первая точка монтирования должна указываться дважды, причем первый раз через запятую среди прочих опций монтирования?
В оригинале, на форуме virtuozzo он указывается не через запятую,
http://forum.swsoft.com/showthread.php?s=6f9b9faa42ed44106f1 ff388aa996ceb&threadid=23919&perpage=15&pagenumb er=2
, а на сайте у них же - через запятую.
http://kb.swsoft.com/article_130_648_en.html
Пример непонятного мне явления:
root@server /etc/vz# ls -la
total 10
drwxr-xr-x 4 root root 144 Aug 31 01:26 ./
drwx--x--x 45 root root 4312 Sep 9 16:49 ../
lrwxrwxrwx 1 root root 23 Aug 14 22:44 conf -> ../sysconfig/vz-scripts/
drwxr-xr-x 3 root root 1520 Aug 14 22:44 dists/
drwxr-xr-x 2 root root 48 Aug 8 17:17 names/
-rw-r--r-- 1 root root 709 Aug 31 01:26 vz.conf
root@server /etc/vz# mount -t simfs -o noatime,nosuid,noexec,nodev,rw /run/vz/temp/121 /run/vz/root/121/tmp/
root@server /etc/vz# mount | grep simfs
/run/vz/tmp/120 on /run/vz/root/120/tmp type simfs (rw,noexec,nosuid,nodev,noatime,/run/vz/tmp/120)
/run/vz/temp/121 on /run/vz/root/121/tmp type simfs (rw,noexec,nosuid,nodev,noatime)
root@server /etc/vz# ls -la /run/vz/root/121/tmp
total 10
drwxr-xr-x 4 root root 144 Aug 31 01:26 ./
drwx--x--x 21 root root 4096 Sep 4 03:18 ../
lrwxrwxrwx 1 root root 23 Aug 14 22:44 conf -> ../sysconfig/vz-scripts
drwxr-xr-x 3 root root 1520 Aug 14 22:44 dists/
drwxr-xr-x 2 root root 48 Aug 8 17:17 names/
-rw-r--r-- 1 root root 709 Aug 31 01:26 vz.conf
Судя по этому, если не указывать дополнительно каталог в опциях, он берет текущий. Фича воспроизводима повторно
[Updated on: Sat, 09 September 2006 13:20] Report message to a moderator
|
|
|
Re: tmp noexec -> mount -t simfs [message #6146 is a reply to message #6144] |
Sat, 09 September 2006 18:49   |
Valmont
Messages: 225 Registered: September 2005
|
Senior Member |
|
|
И вопрос немного из другой области, но к simfs.
/dev/simfs динамически создается при запуске vps, или же один раз при создании vps ?
Updated: Судя по дате создания файла все же при запуске. Да, и наверно где-то в vzctl|стартапных скриптах можно найти. Так что этот вопрос отпадает.
[Updated on: Sat, 09 September 2006 18:50] Report message to a moderator
|
|
|
|
Re: tmp noexec -> mount -t simfs [message #6167 is a reply to message #6144] |
Mon, 11 September 2006 07:21   |
Valmont
Messages: 225 Registered: September 2005
|
Senior Member |
|
|
Спасибо 
Но, видимо, это не совсем то. Поясню.
Если память мне не изменяет, tmpfs использует оперативную память, как дисковое пространство. Немного расточительно, если прикинуть это на некоторое кол-во vps 
Хотелось бы просто смонтировать tmp как noexec,nosuid.
loop девайсов в vpsах нет, по причинам, указаным в том топике.
Я взял за основу то решение, которое приводилось и здесь, и на сайте virtuozzo. Оно работает, просто хотелось уточнить несколько нюансов 
Updated: В одмно моменте не то написал. сейчас убрал
[Updated on: Mon, 11 September 2006 07:51] Report message to a moderator
|
|
|
Re: tmp noexec -> mount -t simfs [message #6171 is a reply to message #6144] |
Mon, 11 September 2006 08:21   |
Vasily Tarasov
Messages: 1345 Registered: January 2006
|
Senior Member |
|
|
Теперь я понял 
Оригинальное решение: использовать simfs как bind mount.
Вот правильный синтаксис монтирование simfs:
[server]# mount -t simfs -o nodev,/tmp just_for_fun /vz/root/886/dir_tmp
[server]# cat /proc/mounts
/dev /dev tmpfs rw 0 0
/dev/root / ext2 rw 0 0
/proc /proc proc rw,nodiratime 0 0
/proc/bus/usb /proc/bus/usb usbfs rw 0 0
/sys /sys sysfs rw 0 0
/dev/devpts /dev/pts devpts rw 0 0
/dev/sda1 /boot ext2 rw 0 0
/dev/shm /dev/shm tmpfs rw 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
/vz/private/886 /vz/root/886 simfs rw 0 0
proc /vz/root/886/proc proc rw,nodiratime 0 0
sysfs /vz/root/886/sys sysfs rw 0 0
devpts /vz/root/886/dev/pts devpts rw 0 0
tmpfs /vz/root/886/dev/shm tmpfs rw 0 0
just_for_fun /vz/root/886/dir_tmp simfs rw,nodev 0 0
[server]# ls /vz/root/886/dir_tmp
a.out devlist.2 dir_to_mount_in_ve hal-0.5.2-2.i386.rpm kernel-2.6.9-023stab016-i686.config.ovz pts2 test.c
[server]# ls /tmp/
a.out devlist.2 dir_to_mount_in_ve hal-0.5.2-2.i386.rpm kernel-2.6.9-023stab016-i686.config.ovz pts2 test.c
Т.е. в опциях передаётся, какую папку зеркалировать, а второй аргумент mountа - просто так, для отражения в /proc/mounts.
Quote: | Например при остановке одного vps у другого tmp однажды просто отвалился
|
Вы используете файл <veid>.umount? Если да - то не делайте этого. Отмонтирование директорий будет превосходно происходить и без этого, а "непонятные" эффекты должны пропасть.
Если глюки всё-таки проявятся - постарайтесь воспроизвести полную последовательность и написать сюда. Разберёмся.
Надеюсь теперь помог, удачи!
|
|
|
|
Re: tmp noexec -> mount -t simfs [message #6176 is a reply to message #6173] |
Mon, 11 September 2006 09:35  |
Vasily Tarasov
Messages: 1345 Registered: January 2006
|
Senior Member |
|
|
Да, ещё ньюанс...
mount в <veid>.mount делать с опцией -n.
Тогда запись не будет появляься в /etc/mtab, значит не будет
её и в списке выдаваемом mountом.
Смотреть список моунтов придётся через /proc/mounts
|
|
|
Goto Forum:
Current Time: Wed Jun 25 13:45:44 GMT 2025
Total time taken to generate the page: 0.05101 seconds
|