Lipetsk *nix Association Forum Lipetsk *nix Association Forum
Новости:
 
*
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
19 Апреля 2024, 09:02:14


Войти


Страниц: [1]   Вниз
  Печать  
Автор Тема: скрипт по монтированию netware  (Прочитано 21439 раз)
0 Пользователей и 1 Гость смотрят эту тему.
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« : 02 Февраля 2010, 17:49:37 »

Доброго времени суток, коллеги!
Хотелось бы обратиться к программистам по написанию скриптика небольшого на bash
В двух словах, задача следующая:
написать скрипт, результатом выполнения которого было бы монтирование 4 разделов netware на linux станции.
Пример скрипта с монтированием 1 раздела:
#!/bin/bash
volume="ALL1"
mount1=/mnt/04-netware/ALL1
/usr/bin/ncpmount -S <servername> -y utf8 -p cp866 -V $volume -U <username> -P <pass> $mount1

Но это только для одного раздела. Понимаю, что для реализации надо воспользоваться циклом for, но как реализовать это - никак не пойму.
Натолкните, плиз, на мысль.
Заранее спасибо! если задача наипростейшая - ссори за такой тривиальный вопрос Улыбка
Записан
NeO
Злобный админчик
Администратор
*****

Карма: 62
Сообщений: 2376

Debian Stretch

ОС:
Linux Linux
Браузер:
Firefox 3.6 Firefox 3.6


WWW Награды
« Ответ #1 : 02 Февраля 2010, 18:26:34 »

Ну если я правильно понял вашу задачу, то что-то типа
Код:
#!/bin/bash
volumes="ALL1 ALL2 ALL3"
for name in $volumes; do
  /usr/bin/ncpmount -S <servername> -y utf8 -p cp866 -V $name -U <username> -P <pass> /mnt/04-netware/$name
done
но я-бы еще добавил в начале цикла
Код:
mkdir -p /mnt/04-netware/$name
Чтобы точки монтирования руками не создавать.
Записан
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #2 : 02 Февраля 2010, 18:37:57 »

О, светлая мысль!
то есть, если я правильно понял, скриптик будет иметь вид:

Код:
#!/bin/bash
volumes="ALL1 ALL2 ALL3"
for name in $volumes; do
 mkdir -p /mnt/04-netware/$name  
 /usr/bin/ncpmount -S <servername> -y utf8 -p cp866 -V $name -U <username> -P <pass> /mnt/04-netware/$name
done

как раз упирался в 2 переменные в одном цикле. спасибо, сейчас попробую!
« Последнее редактирование: 02 Февраля 2010, 18:53:34 от alextswet » Записан
NeO
Злобный админчик
Администратор
*****

Карма: 62
Сообщений: 2376

Debian Stretch

ОС:
Linux Linux
Браузер:
Firefox 3.6 Firefox 3.6


WWW Награды
« Ответ #3 : 02 Февраля 2010, 18:47:21 »

Да, как-то так.
И попрошу скрипты запихивать в специально обученные теги.
Записан
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #4 : 02 Февраля 2010, 19:06:57 »

не проходит, опять в те же грабли уперся. монтирует только раздел ALL1, в остальные итерации цикла пытается смонтировать тот же раздел
You already have mounted server <name>
as user <user>
on mount point /mnt/04-netware/ALL1


так, дело не в скрипте оказывается ... даже простым монтированием одного раздела из консоли, а потом попыткой монтирования другого - выводится ошибка об уже смонтированном сервере  Грустный
так все же у ncpmount есть возможность монтирования сразу нескольких разделов?
Спасибо. Полезу спрашивать у google еще.
« Последнее редактирование: 02 Февраля 2010, 19:20:12 от alextswet » Записан
NeO
Злобный админчик
Администратор
*****

Карма: 62
Сообщений: 2376

Debian Stretch

ОС:
Linux Linux
Браузер:
Firefox 3.6 Firefox 3.6


WWW Награды
« Ответ #5 : 02 Февраля 2010, 19:19:53 »

А отмонтировать перед запуском не забыли? (:
Записан
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #6 : 02 Февраля 2010, 19:23:52 »

в том то и дело, что не забыл Улыбка повторюсь, из консоли тоже при попытки монтирования следующего раздела ругается на уже смонтированный раздел
Записан
NeO
Злобный админчик
Администратор
*****

Карма: 62
Сообщений: 2376

Debian Stretch

ОС:
Linux Linux
Браузер:
Firefox 3.6 Firefox 3.6


WWW Награды
« Ответ #7 : 02 Февраля 2010, 19:25:24 »

Может это заморочки ncpmount, тут я не в курсе.
Записан
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #8 : 02 Февраля 2010, 19:27:36 »

спасибо за помощь! значит, будем рыть в сторону ncpmount. скрипт все же правильно написал, уже радует Улыбка

Добавлено: [time]Срд 03 Фев 2010 15:19:49[/time]
Переформулируем вопрос Улыбка

командой
Код:
sudo /usr/bin/ncpmount -S <servername> -y utf8 -p cp866 -U <username> -P <pass> /mnt/04-netware/
монтируем все разделы сервера netware но под root'ом

командой
Код:
/usr/bin/ncpmount -S <servername> -y utf8 -p cp866 -V <volume> -U <username> -P <pass> /mnt/04-netware/<volume>
монтируем раздел <volume> под текущей учеткой со всеми правами

Задача же смотнировать все/несколько разделов netware под текущей учеткой пользователя
« Последнее редактирование: 03 Февраля 2010, 15:20:14 от alextswet » Записан
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #9 : 11 Февраля 2010, 12:28:53 »

всем спасибо, за монтирование нескольких томов отвечает параметр -m в команде ncpmount
вопрос закрыт Улыбка
Записан
NeO
Злобный админчик
Администратор
*****

Карма: 62
Сообщений: 2376

Debian Stretch

ОС:
Linux Linux
Браузер:
Firefox 3.6 Firefox 3.6


WWW Награды
« Ответ #10 : 11 Февраля 2010, 16:41:54 »

Может выложишь итоговый вариант скрипта и прикроем тему?
Записан
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #11 : 11 Февраля 2010, 18:13:14 »

С удовольствием Улыбка

Предварительно надо правда скачать старые версии пакетов, ибо новые не работают
ipx_2.2.6-3_i386.deb
libncp_2.2.6-3_i386.deb
libpam-ncp_2.2.6-3_i386.deb
ncpfs_2.2.6-3_i386.deb

Скриптик на монтирование:
Код:
#!/bin/bash
#mount ALL1 ALL2 ALL3 ALL6 netware (made by tswet)
volumes="ALL1 ALL2 ALL3 ALL6"
for name in $volumes
do
/usr/bin/ncpmount -m -S <servername> -y utf8 -p cp866 -V $name -U <user> -P <password> /mnt/04-netware/$name
done

Скриптик на размонтирование:
Код:
#!/bin/bash
#umount ALL1 ALL2 ALL3 ALL6 netware (made by tswet)
volumes="ALL1 ALL2 ALL3 ALL6"
for name in $volumes
do
/usr/bin/ncpumount /mnt/04-netware/$name
done

кстати, чтобы уж совсем темку прикрыть, небольшой оффтоп:
как создать иконку к этим скриптам на рабочем столе?
Спасибо!
« Последнее редактирование: 11 Февраля 2010, 18:15:07 от alextswet » Записан
Yazichnik
Небритый одмин
*****

Карма: 8
Сообщений: 710

Mac OS X, Debian

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #12 : 11 Февраля 2010, 18:36:34 »

правой почкой мыши по десктопу - создать кнопку запуска
Записан
alextswet
Новичек
*

Карма: 0
Сообщений: 20

ОС:
Linux (Ubuntu) Linux (Ubuntu)
Браузер:
Firefox 3.5.7 Firefox 3.5.7


Награды
« Ответ #13 : 11 Февраля 2010, 18:45:35 »

может все дело в KDE? Улыбка такой строчки ни в одном меню нет
Записан
Леголегс
Гуру
******

Карма: 18
Сообщений: 1006


Fedora 12 x86_64

ОС:
Linux Linux
Браузер:
Opera 9.80 Opera 9.80


Награды
« Ответ #14 : 11 Февраля 2010, 19:16:55 »

Если KDE4, то надо сначала в меню добавить (правой кнопкой по букве "K" - редактор меню), а из меню уже перетащить на рабочий стол (должен быть разблокирован)
Записан

[ Мой FTP ftp://legolegs.homelinux.net ]
[ Репозиторий Fedora http://fedora.leschat.net/ ]
[ Репозиторий Ubuntu http://ubuntu.leschat.net/ ]
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2011, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM