Re: Неблокирующая ФС

2012-09-24 Пенетрантность yuri . nefedov

On Fri, 21 Sep 2012, Artem Chuprina wrote:


An ideal world is left as an exercise to the reader...



 Так вот почему чукча не читатель!

 Ю.

Re: Неблокирующая ФС

2012-09-24 Пенетрантность Damir Hakimov
Всем привет опять!

Я-таки переслил в себе нечитателя и родил следующее:

#Non-blocked mount of NFS server
backup:/home/bu/data/repa   nfs
ro,auto,soft,intr,udp,bg,timeo=1,retrans=10   0

/$ time ls /repa
ls: cannot access /repa: Input/output error

real0m0.200s
user0m0.000s
sys 0m0.008s

Критичными оказались опции udp и soft. (Насчет bg - не уверен)
Всем спасибо за обсуждение.

--
DamirX


Re: Неблокирующая ФС

2012-09-24 Пенетрантность Damir Hakimov
21 сентября 2012 г., 11:05 пользователь Damir Hakimov
damir.haki...@gmail.com написал:
Может просто Я NFS  не умею готовить?

Наверное, не умею.

Я-таки переслил в себе нечитателя и родил следующее:

#Non-blocked mount of NFS server
backup:/home/bu/data/repa   nfs
ro,auto,soft,intr,udp,bg,timeo=1,retrans=10   0

/$ time ls /repa
ls: cannot access /repa: Input/output error

real0m0.200s
user0m0.000s
sys 0m0.008s

Критичными оказались опции udp и soft. (Насчет bg - не уверен)
Всем спасибо за обсуждение.

PS. Осталось победить от МУЯ ГУЙ.

--
DamirX


Re: Неблокирующая ФС

2012-09-22 Пенетрантность Andrey Rahmatullin
On Sat, Sep 22, 2012 at 12:56:11PM +0700, Ivan Shmakov wrote:
   Какое существет простое, как лом, решение для доступа (RO) к ФС на
   удаленном сервере, чтоб оно (решение), даже думать не могло
   заблокировать пользовательскую операцию в случае если сервер
   недоступен?  (Может просто Я NFS не умею готовить?)
   Хотя это и не решает полностью проблему с блокировками, мой опыт
   подсказывает, что использование autofs делает клиента куда как
   более «отзывчивым.»
А каким образом?

-- 
WBR, wRAR


signature.asc
Description: Digital signature


Неблокирующая ФС

2012-09-21 Пенетрантность Damir Hakimov
Привет опять!

Какое существет простое, как лом, решение для доступа (RO) к ФС на
удаленном сервере, чтоб оно (решение), даже думать не могло
заблокировать пользовательскую операцию в случае если сервер
недоступен? (Может просто Я NFS  не умею готовить?)

--
DamirX


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Artem Chuprina
Damir Hakimov - debian-russian@lists.debian.org  @ Fri, 21 Sep 2012 11:05:21 
+0400:

 DH Какое существет простое, как лом, решение для доступа (RO) к ФС на
 DH удаленном сервере, чтоб оно (решение), даже думать не могло
 DH заблокировать пользовательскую операцию в случае если сервер
 DH недоступен? (Может просто Я NFS  не умею готовить?)

Для начала опиши, пожалуйста, как ты себе представляешь неблокирующую
пользовательскую операцию открытия, допустим, вордового файла.  Даже при
доступности сервера.  Но все же с учетом того, что оный доступ не
мгновенен.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/874nmrd5wk@wizzle.ran.pp.ru



Re: Неблокирующая ФС

2012-09-21 Пенетрантность Damir Hakimov
21 сентября 2012 г., 14:30 пользователь Artem Chuprina r...@ran.pp.ru написал:
 Damir Hakimov - debian-russian@lists.debian.org  @ Fri, 21 Sep 2012 11:05:21 
 +0400:

  DH Какое существет простое, как лом, решение для доступа (RO) к ФС на
  DH удаленном сервере, чтоб оно (решение), даже думать не могло
  DH заблокировать пользовательскую операцию в случае если сервер
  DH недоступен? (Может просто Я NFS  не умею готовить?)

 Для начала опиши, пожалуйста, как ты себе представляешь неблокирующую
 пользовательскую операцию открытия, допустим, вордового файла.  Даже при
 доступности сервера.  Но все же с учетом того, что оный доступ не
 мгновенен.

I/O Error, например.
Сейчас-же оно, при попытке открыть файл или увидеть содержимое
каталога на примонтированной NFS-шаре, при недоступном NFS сервере
глухо виснет.

--
DamirX


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Dmitry Fedorov
21 сентября 2012 г., 17:56 пользователь Damir Hakimov написал:
 21 сентября 2012 г., 14:30 пользователь Artem Chuprina написал:

 Для начала опиши, пожалуйста, как ты себе представляешь неблокирующую
 пользовательскую операцию открытия, допустим, вордового файла.

 I/O Error, например.

Операция выполняется ..., errno = EINPROGRESS;


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Artem Chuprina
Damir Hakimov - debian-russian@lists.debian.org  @ Fri, 21 Sep 2012 14:56:51 
+0400:

   DH Какое существет простое, как лом, решение для доступа (RO) к ФС на
   DH удаленном сервере, чтоб оно (решение), даже думать не могло
   DH заблокировать пользовательскую операцию в случае если сервер
   DH недоступен? (Может просто Я NFS  не умею готовить?)
 
  Для начала опиши, пожалуйста, как ты себе представляешь неблокирующую
  пользовательскую операцию открытия, допустим, вордового файла.  Даже при
  доступности сервера.  Но все же с учетом того, что оный доступ не
  мгновенен.

 DH I/O Error, например.

Повторяю: при доступности сервера.  Получать I/O Error при доступности
сервера было бы, прямо скажем, странновато...  А с точки зрения open(2)
разницы между выключением сервера на ночь и раундтрипом в секунду, прямо
скажем, никакой.

 DH Сейчас-же оно, при попытке открыть файл или увидеть содержимое
 DH каталога на примонтированной NFS-шаре, при недоступном NFS сервере
 DH глухо виснет.

soft,intr?

К сожалению, у меня сейчас nfs-common не стоит (мне негде сейчас
применять NFS), и потому более тщательно посмотреть в man 5 nfs, куда
отсылает нас man mount, я сходу не могу.  Но у тебя, наверное, стоит.
То, что intr позволяет по крайней мере прервать нормальную юниксовую
файловую операцию нормальным Ctrl-C, я со времен своей молодости :)
помню.  Мы тогда порой монтировали сервера с другого конца планеты...
Что конкретно дает soft, я уже не помню.  Помню, что для r/w это было
чревато, а для r/o, как ты хочешь - в самый раз.  Ну и может, оно уже
timeout какой научилось...


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87zk4jbnqo@wizzle.ran.pp.ru



Re: Неблокирующая ФС

2012-09-21 Пенетрантность Artem Chuprina
Dmitry Fedorov - debian-russian@lists.debian.org  @ Fri, 21 Sep 2012 17:59:52 
+0700:

  Для начала опиши, пожалуйста, как ты себе представляешь неблокирующую
  пользовательскую операцию открытия, допустим, вордового файла.

  I/O Error, например.

 DF Операция выполняется ..., errno = EINPROGRESS;

Ты полагаешь, что винворд (oowriter, lowriter, да хотя бы vim или emacs)
себя ведет именно так?  Или предлагаешь вдумчиво патчить каждую первую
программу, которой вздумалось открыть файл с сети, и open(2) заодно?


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87vcf7bni5@wizzle.ran.pp.ru



Re: Неблокирующая ФС

2012-09-21 Пенетрантность Andrey Rahmatullin
On Fri, Sep 21, 2012 at 03:48:31PM +0400, Artem Chuprina wrote:
  DH Сейчас-же оно, при попытке открыть файл или увидеть содержимое
  DH каталога на примонтированной NFS-шаре, при недоступном NFS сервере
  DH глухо виснет.
 
 soft,intr?
A  so-called  soft  timeout  can cause silent data corruption in certain
cases. As such, use the soft option only when client responsiveness is
more important than data integrity.  Using NFS over TCP or
increasing the value of the retrans option may mitigate some of the risks
of using the soft option.

Using the intr option is preferred to using the soft option because it is
significantly less likely to result in data corruption.

The  intr / nointr mount option is deprecated after kernel 2.6.25.  Only
SIGKILL can interrupt a pending NFS operation on these kernels, and if
specified, this mount option is ignored to provide backwards compatibility
with older kernels.

 К сожалению, у меня сейчас nfs-common не стоит (мне негде сейчас
 применять NFS), и потому более тщательно посмотреть в man 5 nfs, куда
 отсылает нас man mount, я сходу не могу.  Но у тебя, наверное, стоит.
 То, что intr позволяет по крайней мере прервать нормальную юниксовую
 файловую операцию нормальным Ctrl-C, я со времен своей молодости :)
 помню.  
Only SIGKILL can interrupt a pending NFS operation

 Что конкретно дает soft, я уже не помню.  
If  the  soft option is specified, then the NFS client fails an NFS
request after retrans retransmissions have been sent, causing the NFS
client to return an error to the calling application.

Т.е. ждать всё равно придётся огого.

 Ну и может, оно уже timeout какой научилось...
Научилось, с soft. И этот самый timeout на write операциях понятно чем
чреват.

-- 
WBR, wRAR


signature.asc
Description: Digital signature


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Dmitry Fedorov
21 сентября 2012 г., 18:53 пользователь Artem Chuprina написал:

   I/O Error, например.

  DF Операция выполняется ..., errno = EINPROGRESS;

 Ты полагаешь, что винворд (oowriter, lowriter, да хотя бы vim или emacs)
 себя ведет именно так?

Нет, это описание механизма желаемого поведения.
По крайней мере, в Linux, для этого приходится запускать
отдельный процесс, потому что файловые операции
с настоящими файлами - блокирующие.

 Или предлагаешь вдумчиво патчить каждую первую
 программу, которой вздумалось открыть файл с сети, и open(2) заодно?

Нет, это они пусть патчат.


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Artem Chuprina
Dmitry Fedorov - debian-russian@lists.debian.org  @ Fri, 21 Sep 2012 19:10:35 
+0700:

I/O Error, например.
 
   DF Операция выполняется ..., errno = EINPROGRESS;
 
  Ты полагаешь, что винворд (oowriter, lowriter, да хотя бы vim или emacs)
  себя ведет именно так?

 DF Нет, это описание механизма желаемого поведения.
 DF По крайней мере, в Linux, для этого приходится запускать
 DF отдельный процесс, потому что файловые операции
 DF с настоящими файлами - блокирующие.

  Или предлагаешь вдумчиво патчить каждую первую
  программу, которой вздумалось открыть файл с сети, и open(2) заодно?

 DF Нет, это они пусть патчат.

An ideal world is left as an exercise to the reader...


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87ehlvbhxo@wizzle.ran.pp.ru



Re: Неблокирующая ФС

2012-09-21 Пенетрантность Artem Chuprina
Andrey Rahmatullin - debian-russian@lists.debian.org  @ Fri, 21 Sep 2012 
18:04:01 +0600:

  Ну и может, оно уже timeout какой научилось...
 AR Научилось, с soft. И этот самый timeout на write операциях понятно чем
 AR чреват.

Так он r/o просил.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87a9wjbhut@wizzle.ran.pp.ru



Re: Неблокирующая ФС

2012-09-21 Пенетрантность Dmitry Nezhevenko
On Fri, Sep 21, 2012 at 07:10:35PM +0700, Dmitry Fedorov wrote:
 21 сентября 2012 г., 18:53 пользователь Artem Chuprina написал:
 
I/O Error, например.
 
   DF Операция выполняется ..., errno = EINPROGRESS;
 
  Ты полагаешь, что винворд (oowriter, lowriter, да хотя бы vim или emacs)
  себя ведет именно так?
 
 Нет, это описание механизма желаемого поведения.
 По крайней мере, в Linux, для этого приходится запускать
 отдельный процесс, потому что файловые операции
 с настоящими файлами - блокирующие.

man 2 open, O_NONBLOCK

-- 
WBR, Dmitry


signature.asc
Description: Digital signature


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Dmitry Fedorov
21 сентября 2012 г., 21:12 пользователь Dmitry Nezhevenko написал:
 On Fri, Sep 21, 2012 at 07:10:35PM +0700, Dmitry Fedorov wrote:
 
   DF Операция выполняется ..., errno = EINPROGRESS;
 
 Нет, это описание механизма желаемого поведения.
 По крайней мере, в Linux, для этого приходится запускать
 отдельный процесс, потому что файловые операции
 с настоящими файлами - блокирующие.

 man 2 open, O_NONBLOCK

Спасибо, Кэп.
Вот только на ФС это не работает - операции всегда блокируются.


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Dmitry Nezhevenko
On Fri, Sep 21, 2012 at 09:17:54PM +0700, Dmitry Fedorov wrote:
 
  man 2 open, O_NONBLOCK
 
 Спасибо, Кэп.
 Вот только на ФС это не работает - операции всегда блокируются.

Хм. Я думал что для NFS должно работать. Проверил, таки не работает. Ни
open ни дальнейший read

-- 
WBR, Dmitry


signature.asc
Description: Digital signature


Re: Неблокирующая ФС

2012-09-21 Пенетрантность Artem Chuprina
Dmitry Nezhevenko - debian-russian@lists.debian.org  @ Fri, 21 Sep 2012 
17:26:05 +0300:

   man 2 open, O_NONBLOCK
  
  Спасибо, Кэп.
  Вот только на ФС это не работает - операции всегда блокируются.

 DN Хм. Я думал что для NFS должно работать. Проверил, таки не работает. Ни
 DN open ни дальнейший read

Увы.  Давно известная особенность.  Работает это только на character
devices и fifo.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/871uhvbfiz@wizzle.ran.pp.ru



Re: Неблокирующая ФС

2012-09-21 Пенетрантность Sergey Spiridonov

Привет

On 21.09.2012 09:05, Damir Hakimov wrote:

Какое существет простое, как лом, решение для доступа (RO) к ФС на
удаленном сервере, чтоб оно (решение), даже думать не могло
заблокировать пользовательскую операцию в случае если сервер
недоступен? (Может просто Я NFS  не умею готовить?)


http
--
Сергей


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/k3il39$kc$1...@ger.gmane.org



Re: Неблокирующая ФС

2012-09-21 Пенетрантность Ivan Shmakov
 Damir Hakimov damir.haki...@gmail.com writes:

  Какое существет простое, как лом, решение для доступа (RO) к ФС на
  удаленном сервере, чтоб оно (решение), даже думать не могло
  заблокировать пользовательскую операцию в случае если сервер
  недоступен?  (Может просто Я NFS не умею готовить?)

Хотя это и не решает полностью проблему с блокировками, мой опыт
подсказывает, что использование autofs делает клиента куда как
более «отзывчивым.»

Настройка может быть подобной (NB: также используется soft):

$ cat  /etc/auto.master 
### auto.master --- Automounter map file  -*- Default-Generic -*-

## See also: autofs(5).

/com/nfsv3  /etc/auto.com.nfsv3-common
/srv/chroot/2012-09-22/com/nfsv3/etc/auto.com.nfsv3-common

### auto.master ends here
$ cat  /etc/auto.com.nfsv3-common 
### auto.com.nfsv3-common --- Manage /com/nfsv3's  -*- Default-Generic -*-

## This is an automounter map and it has the following format:
##
##   key [ -mount-options-separated-by-comma ] location
##
## See also: autofs(5).

## FIXME: use NFSv4 over IPv6 (no IPv6 support for NFSv3)

## FIXME: port=2049 is a hack to force automount to use NFS for localhost
## NB: default automounter's bind mounts aren't read-only
foo.public  
-fstype=nfs,ro,nosuid,nodev,soft,nolock,rsize=8192,wsize=8192,port=2049 
127.0.0.1:/home/public

bar.public  
-fstype=nfs,ro,nosuid,nodev,soft,nolock,rsize=8192,wsize=8192   
bar.example.org:/home/public

baz.diskless-fstype=nfs,ro,nosuid,nodev,soft,nolock,rsize=8192,wsize=8192   
baz.example.net:/srv/diskless/nfsv3
baz.public  -fstype=nfs,ro,nosuid,nodev,soft,nolock,rsize=8192,wsize=8192   
baz.example.net:/home/public

### auto.com.nfsv3-common ends here
$ 

-- 
FSF associate member #7257


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/86mx0i1tz8@gray.siamics.net