Автор Гілка: Android та fs  (Прочитано 12167 раз)

Відсутній Ign1111

  • Письменник
  • *****
  • дописів: 829
  • Карма: +0/-0
  • Linux 4ever!
Android та fs
« : 2012-01-12 20:42:53 »
Захотілося мені одного дня флеш-пам’ять на андроїді (зовнішню) відформатувати в ext2/3/4 замість fat32. Все одно я її до компа під’єдную не виймаючи, а підключаючи сам телефон, а останнім часом взагалі обхожусь шнурка відправляючи файли по bluetooth, або через wi-fi використовуючи smb-клиент. Так ось відформатувавши флешку в ext2 отримав результат, телефон її не бачить? Питання, чого так? Він же бачить внутрішню пам’ять, яка (наскільки я знаю), відформатована саме в ext. Чи я помиляюсь? Чи може якась хитрість потрібна, про яку я не знаю. Все, що я знайшов в інеті, говорить про те, що флешку можна побити на 3 розділи, перший розділ в ext2, для встановлення програм поза внутрішньою пам’ятю, другий розділ можна відформатувати в swap та увімкнути підтримку підкачки в андроїді, а третій все одно треба лишати fat для користувацьких даних. Що скажете з цього приводу?

P.S. І ще я трошкі не зрозумів. Якщо я роблю розділ ext2 програмою gparted (або kde partitionmanager), то під’єднати я можу його тільки під root’ом. Я так розумію, що десь, щось треба прописати, щоб вона монтувалася від звичайного користувача?
Я знайшов програму Palimpsest Disk Utility, яка дозволяє "привласнити" флешку, тобто прописує дозвіл на монтування тому користувачеві, під яким ця програма запущена. Тобто зазвичай це id 500. І дійсно на будь якій іншій машині де користувач має id 500, флешка монтується без проблем, як тільки користувач має id скажімо 501 або 1000, все - монтування для нього недоступне, тільки через root. Чи можна якось "привласнити" ту флешку для всіх користувачів, щоб без додаткових танців з бубном, можна було монтувати флешку під будь яким користувачем?

P.P.S. І ще питання трошкі відсторонене від теми. Яку файлову систему можна використовувати на флешці, щоб не мати проблем? ext не підходить, бо один добрий користувач оффтопіка, мені флешку відформатував, не спитавши дозволу в мене, подумавши, що віндовс не може помилятися. Якщо він говорить, що флешка не відформатована, значить вона не відформатована... fat також не підходить, має обмеження на файли розміром більшими за 4 гіга...
Linux. The future is open.

Відсутній Dmytrish

  • Новачок
  • *
  • дописів: 4
  • Карма: +0/-0
Re: Android та fs
« Відповідей #1 : 2012-01-31 16:27:28 »
Ох, складне це питання, монтувати не-FAT.

Щодо монтування від користувача. Всі юніксові файлові системи влаштовано так, що на них самих uid та gid є невід’ємною інформацією про кожний файл, і ігнорувати їх — це кричуще порушення безпеки. Крім того, в Андроїді кожній програмі заводиться свій користувач, тому важко сказати, кому б належали такі файли на сховищі (легше було зробити так, як є — архаїчний анархічний FAT, на якому поняття юзера взагалі не існує).

Хоч загалом у fstab можливо дописати диску опції user,owner=..., але fstab в Андроїдах перетворили в /etc/vold.fstab, треба покопатись у кодах vold, щоб сказати щось напевно.

Хоч є лазівка — створити флешку та дати усім файлам права 777, як у змонтованій FAT, але я не знаю, чи можливо взагалі виставити umask в 000 не для юзера, а для одиниці монтування (інакше заново створені файли все одно будуть мати 755).

Перепрошую за неструктурований потік думок, експериментуйте.