Автор Тема: mount в C++  (Прочетена 1565 пъти)

LinuxFanUNIX

  • Напреднали
  • *****
  • Публикации: 408
  • Distribution: Slackware 12.2
  • Window Manager: KDE 3.5.10
    • Профил
mount в C++
« -: Jul 10, 2009, 11:33 »
Добър ден.

Опитвам се да направя mount на image файл в c++ обаче нещо не мога да се справя.
Код
GeSHi (C++):
  1. mount("/dev/sda2", "/mnt/sda2", "ext2", MS_RDONLY, "");
се справя отлично, но аз се нуждая от монтиране не на блоково устройство а на loop устройство. В bash го правя така:
Код
GeSHi (Bash):
  1. mount -o loop /home/image /mnt/sda2
но в C++ не знам как се прави.

Та бихте ли ми казали как се прави mount на image в C++?

Благодаря предварително!
Активен

task_struct

  • Напреднали
  • *****
  • Публикации: 576
  • Distribution: Kubuntu 14.04
  • Window Manager: KDE 4.13
    • Профил
Re: mount в C++
« Отговор #1 -: Jul 10, 2009, 13:59 »
Разгледай http://www.sbras.ru/cgi-bin/www/unix_help/unix-man?mount+2

На бързо го погледнах и не видях да има такава опция, но май чрез void *data параметъра ще стане или има линк към още няколко функции с някоя от тях :)

Успех  [_]3
Активен

"Minds are like parachutes. They only function when they are open." - James Dewar

irc.freenode.net  / #linux-bg

Arvigeus

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Arch Linux
  • Window Manager: Whatever
    • Профил
Re: mount в C++
« Отговор #2 -: Jul 10, 2009, 14:50 »
Код
GeSHi (C++):
  1. #include <cstdlib>
  2. ...
  3. system("mount -o loop /home/image /mnt/sda2");
Ако искаш нещо да се променя го направи да се присвоява като char масив...

Ламерско решение, но става...
Активен

Ivshti

  • Напреднали
  • *****
  • Публикации: 322
  • Distribution: Linvo 2010.3
  • Window Manager: Gnome
    • Профил
    • WWW
Re: mount в C++
« Отговор #3 -: Jul 10, 2009, 17:04 »
Виж сорса на mount за опътване. Намира се в архива с изходен код на util-linux-ng.
Активен

LinuxFanUNIX

  • Напреднали
  • *****
  • Публикации: 408
  • Distribution: Slackware 12.2
  • Window Manager: KDE 3.5.10
    • Профил
Re: mount в C++
« Отговор #4 -: Jul 10, 2009, 20:48 »
Благодаря много за помощта, обаче в кода на mount има различни опции, а на мен ми трябва точно конкретно за даден image без да се пита потребителя какво да монтира, без проверка дали е успешно монтирането и т.н. Това със system() не ми харесва тъй като ако някой чете кода, доста ще се смее.  ;D

Ще се радвам ако има някой който знае отговора, пък ако не - благодаря все пак.
Активен

task_struct

  • Напреднали
  • *****
  • Публикации: 576
  • Distribution: Kubuntu 14.04
  • Window Manager: KDE 4.13
    • Профил
Re: mount в C++
« Отговор #5 -: Jul 10, 2009, 22:15 »
mount() е стандартна функция, тя трябва да има много опции. Като искаш само с твоите можеш да си направи wraper функция която да попълва останалите параметри. Щом функцията връща резултат той трябва да се проверява или поне в качественият софтуер така се прави.

П.С. Мъчих се да намеря повече инфо за mount(), но нищо не открих :(
Активен

"Minds are like parachutes. They only function when they are open." - James Dewar

irc.freenode.net  / #linux-bg

task_struct

  • Напреднали
  • *****
  • Публикации: 576
  • Distribution: Kubuntu 14.04
  • Window Manager: KDE 4.13
    • Профил
Re: mount в C++
« Отговор #6 -: Jul 10, 2009, 22:21 »
Като тръгнах да търся за sys_mount() за да видя как е реализирана функцията в ядрото намерих това: http://coding.derkeiler.com/Archive/C_CPP/comp.lang.c/2008-05/msg00794.html

Мисля, че е точно това което търсиш :)
Активен

"Minds are like parachutes. They only function when they are open." - James Dewar

irc.freenode.net  / #linux-bg

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
mount
Настройка на програми
mozly 9 3806 Последна публикация Feb 18, 2003, 09:02
от mrvoland
mount
Настройка на програми
jojopara 2 2605 Последна публикация Jun 30, 2003, 22:38
от gamehack
ssh mount-ване
Настройка на програми
sunhater 0 1805 Последна публикация Aug 01, 2003, 01:46
от sunhater
mount
Настройка на програми
kicker 2 2176 Последна публикация Mar 27, 2004, 10:57
от ivanatora
mount
Настройка на хардуер
Besos3007 8 3460 Последна публикация Apr 25, 2004, 20:49
от