Сайт | Скачать | Видео | Wiki

Автор Тема: sqmod-tools - работа с модулями  (Прочитано 766 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DdShurick

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 5150
  • Репутация: +135/-0
  • Старый чайник
sqmod-tools - работа с модулями
« : 17 Февраль 2017, 10:05:06 »
 Создаём простой модуль (пакет) руками.
1) Создаём дерево каталогов (при необходимости)
bash-4.3# mkdir -p sqmod-tools/usr/bin2) Копируем файлы (при необходимости)
bash-4.3# cp ../live/Git/pfs-utils/usr/bin/mkaufs sqmod-tools/usr/bin/
bash-4.3# cp ../live/Git/pfs-utils/usr/bin/addlayer sqmod-tools/usr/bin/
*При перепаковке из .rpm, .deb и компиляции из исходников эти действия не нужны.
3) Создаём метадату
bash-4.3# cd sqmod-tools/
bash-4.3# mkdir -p etc/packages/mount/sqmod-tools
bash-4.3# echo 'name="sqmod-tools"'>etc/packages/mount/sqmod-tools/pfs.specs
bash-4.3# find . ! -type d|cut -b2- >etc/packages/mount/sqmod-tools/pfs.files
bash-4.3# cd ../
4) Пакуем
bash-4.3# mksquashfs sqmod-tools/ /mnt/sda1/219/optional/sqmod-tools.pfs -comp xz -Xbcj x865) Подключаем
bash-4.3# addlayer /mnt/sda1/219/optional/sqmod-tools.pfs
Моноблок Lenovo IdeaCentre c200
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (atom N270, intel GMA 950)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #1 : 17 Февраль 2017, 10:48:11 »
А составные.pfs?

Оффлайн DdShurick

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 5150
  • Репутация: +135/-0
  • Старый чайник
Re: sqmod-tools - работа с модулями
« Ответ #2 : 17 Февраль 2017, 13:52:17 »
 Объединение двух каталогов в составной модуль (аналог  pfsmerge-dir):
# su
Password:
# mkaufs
# addlayer 1 Arp-scan-1.9.5_XZM/
aufs смонтирована в /initrd/aufs1, сохранение изменений /initrd/changes1
# addlayer 1 smbtree-3.6.25_XZM/
aufs смонтирована в /initrd/aufs1, сохранение изменений /initrd/changes1
# mksquashfs /initrd/aufs1/ /home/ScanLan.pfsParallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on /home/ScanLan.pfs, block size 131072.
[===============================================================-] 136/136 100%
........
# file /home/ScanLan.pfs
/home/ScanLan.pfs: Squashfs filesystem, little endian, version 4.0, 618493183 bytes, 121 inodes, blocksize: 0 bytes, created: Thu Aug 17 11:52:32 1989
Модуль готов.
 *в данном случае использовались подготовленные, содержащие метадату, каталоги.
Моноблок Lenovo IdeaCentre c200
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (atom N270, intel GMA 950)

Оффлайн DdShurick

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 5150
  • Репутация: +135/-0
  • Старый чайник
Re: sqmod-tools - работа с модулями
« Ответ #3 : 17 Февраль 2017, 19:34:59 »
 Объединение модуля и каталога с созданием метедаты:
# su                                                   
Password:
# mkaufs
# addlayer 1 ../cups-2.1.0.xzm
aufs смонтирована в /initrd/aufs1, сохранение изменений /initrd/changes1
# addlayer 1 ghostscript-9.18-all_PFS
aufs смонтирована в /initrd/aufs1, сохранение изменений /initrd/changes1
Записываем метадату в корень aufs1
# cd ghostscript-9.18-all_PFS/
# mkdir -p /initrd/aufs1/etc/packages/mount/ghostscript-9.18-all   
# echo 'name="ghostscript-9.18-all"'>/initrd/aufs1/etc/packages/mount/ghostscript-9.18-all/pfs.specs
# find . ! -type d|cut -b2- >/initrd/aufs1/etc/packages/mount/ghostscript-9.18-all/pfs.files
# find . -type d -empty|cut -b2- >/initrd/aufs1/etc/packages/mount/ghostscript-9.18-all/pfs.dirs.empty
# [ -s /initrd/aufs1/etc/packages/mount/ghostscript-9.18-all/pfs.dirs.empty ] || rm /initrd/aufs1/etc/packages/mount/ghostscript-9.18-all/pfs.dirs.empty
# cd ../
*если pfs.dirs.empty пустой - удаляем.
# mksquashfs /initrd/aufs1/ /home/Cups-2.1.0.xzm -comp xz -Xbcj x86
............
# unsquashfs -l /home/Cups-2.1.0.xzm -e /etc/packages/mount
Parallel unsquashfs: Using 4 processors
4 inodes (4 blocks) to write

squashfs-root
squashfs-root/etc
squashfs-root/etc/packages
squashfs-root/etc/packages/mount
squashfs-root/etc/packages/mount/cups-2.1.0
squashfs-root/etc/packages/mount/cups-2.1.0/pfs.files
squashfs-root/etc/packages/mount/cups-2.1.0/pfs.specs
squashfs-root/etc/packages/mount/ghostscript-9.18-all
squashfs-root/etc/packages/mount/ghostscript-9.18-all/pfs.files
squashfs-root/etc/packages/mount/ghostscript-9.18-all/pfs.specs
Что и было нужно
Моноблок Lenovo IdeaCentre c200
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (atom N270, intel GMA 950)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #4 : 18 Февраль 2017, 10:39:25 »
Объединение двух каталогов в составной модуль (аналог  pfsmerge-dir):
Пытаюсь повторить в ПРА
1. mkaufs
tmpfs on /mnt/changes2 type tmpfs (rw,relatime)
aufs on /mnt/aufs2 type aufs (rw,relatime,si=fb21b7cbb61f7569)
т.е. вроде ок
2. sh -vx `which addlayer` 2 first/ - где first - каталог
mount -o remount,add:1:/home/live/Downloads/pfs-dds-170218/usr/local/bin/3/first /mnt/aufs2
mount: /mnt/aufs2 not mounted or bad option
Что я сделал не так?

Оффлайн DdShurick

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 5150
  • Репутация: +135/-0
  • Старый чайник
Re: sqmod-tools - работа с модулями
« Ответ #5 : 18 Февраль 2017, 13:19:55 »
Что я сделал не так?
Вы сначала дали команду addlayer, а затем mount -o remount,add:2: с одним и тем же каталогом?
У меня работает:root@pra64:dev_modules# mkaufs

root@pra64:dev_modules# grep aufs /proc/mounts
aufs / aufs rw,relatime,si=fcf5e51c7db9d30d,nowarn_perm 0 0
aufs /mnt/aufs1 aufs rw,relatime,si=fcf5e51c59b9330d 0 0

root@pra64:dev_modules# grep tmpfs /proc/mounts
tmpfs /mnt/live tmpfs rw,relatime,mode=755 0 0
none /mnt/live/dev devtmpfs rw,relatime,size=1021324k,nr_inodes=255331,mode=755 0 0
run /run tmpfs rw,nosuid,nodev,relatime,mode=755 0 0
dev /dev devtmpfs rw,nosuid,relatime,size=1021324k,nr_inodes=255331,mode=755 0 0
shm /dev/shm tmpfs rw,nosuid,nodev,relatime 0 0
tmpfs /mnt/changes1 tmpfs rw,relatime 0 0

root@pra64:dev_modules# addlayer 1 Arp-scan-1.9.5_XZM
aufs смонтирована в /mnt/aufs1, сохранение изменений /mnt/changes1
root@pra64:dev_modules# mkaufs
root@pra64:dev_modules# addlayer 2 3G-tools
aufs смонтирована в /mnt/aufs2, сохранение изменений /mnt/changes2
« Последнее редактирование: 19 Февраль 2017, 10:49:04 от sfs »
Моноблок Lenovo IdeaCentre c200
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (atom N270, intel GMA 950)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #6 : 18 Февраль 2017, 13:39:07 »
Вы сначала дали команду addlayer
sh -vx `which addlayer` 2 first/
а затем mount -o remount,add:2: с одним и тем же каталогом?
нет
Это я привел вывод ошибки от addlayer 2 first
Может дело в mount -o remount,add:1:
Может здесь надо 2 ?
Не помогло
« Последнее редактирование: 18 Февраль 2017, 13:44:50 от sfs »

Оффлайн DdShurick

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 5150
  • Репутация: +135/-0
  • Старый чайник
Re: sqmod-tools - работа с модулями
« Ответ #7 : 19 Февраль 2017, 09:09:55 »
Моноблок Lenovo IdeaCentre c200
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (atom N270, intel GMA 950)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #8 : 19 Февраль 2017, 09:22:02 »
sqmod-tools.pfs
sh -vx `which addlayer` 2 first/
Без улучшения
+ mount -o remount,add:1:/home/live/Downloads/3/first /mnt/aufs2
mount: /mnt/aufs2 not mounted or bad option

Оффлайн DdShurick

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 5150
  • Репутация: +135/-0
  • Старый чайник
Re: sqmod-tools - работа с модулями
« Ответ #9 : 19 Февраль 2017, 10:20:11 »
Без улучшения
Попробуйте вручную покомандно, должно вылезти.
Моноблок Lenovo IdeaCentre c200
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (atom N270, intel GMA 950)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #10 : 19 Февраль 2017, 10:45:54 »
Что и как еще можно попробовать?
mount -o remount,add:1:/home/live/Downloads/3/first /mnt/aufs2
mount: /mnt/aufs2 not mounted or bad option
В консоле тот же результат
mount (результат mkaufs):
tmpfs on /mnt/changes2 type tmpfs (rw,relatime)
aufs on /mnt/aufs2 type aufs (rw,relatime,si=a25b6e6fd8b6409f)
/home/live/Downloads/3/first - папка

# grep aufs /proc/mounts
aufs / aufs rw,relatime,si=a25b6e6f3139b09f,nowarn_perm 0 0
aufs /mnt/aufs2 aufs rw,relatime,si=a25b6e6fd8b6409f 0 0

root@pra64:bin# grep tmpfs /proc/mounts
tmpfs /mnt/live tmpfs rw,relatime,mode=755 0 0
none /mnt/live/dev devtmpfs rw,relatime,size=2022016k,nr_inodes=505504,mode=755 0 0
tmpfs /mnt/live/memory/changes tmpfs rw,relatime,size=2429872k 0 0
run /run tmpfs rw,nosuid,nodev,relatime,mode=755 0 0
dev /dev devtmpfs rw,nosuid,relatime,size=2022016k,nr_inodes=505504,mode=755 0 0
shm /dev/shm tmpfs rw,nosuid,nodev,relatime 0 0
tmpfs /mnt/changes2 tmpfs rw,relatime 0 0

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #11 : 19 Февраль 2017, 11:19:20 »
Разобрался, откуда берется aufs2
# ls /sys/fs/aufs/
config  si_a25b6e6f3139b09f
У меня большое manjaro ядро
Везде надо добавить  ls /sys/fs/aufs/ |egrep '^si_'
Но
mount -o remount,add:1:/home/live/Downloads/3/first /mnt/aufs1
mount: /mnt/aufs1 not mounted or bad option
остается

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #12 : 19 Февраль 2017, 11:45:50 »
1. Везде надо добавить  ls /sys/fs/aufs/ |egrep '^si_'
2. mount -o remount,add:1:/home/live/Downloads/3/first /mnt/aufs1 Получилось перемещением /home/live/Downloads/3/first на винт. Нужно добавить проверки и выдачу ошибки
В остальном - кода мало, он понятен. Местами "" не помешало бы подстраховаться от пробелов в именах
« Последнее редактирование: 19 Февраль 2017, 12:07:58 от sfs »

Оффлайн DdShurick

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 5150
  • Репутация: +135/-0
  • Старый чайник
Re: sqmod-tools - работа с модулями
« Ответ #13 : 19 Февраль 2017, 12:43:16 »
ls /sys/fs/aufs/ |egrep '^si_'
ls /sys/fs/aufs/si_* ??
Получилось перемещением
Да, aufs в aufs не монтируется. У меня /home это примонтированный /dev/sda3
кода мало, он понятен
И это хорошо.
Перепаковка sqmod-tools.pfs в ~/Git/pfs-tools/ :
# su
Password:
# mkaufs
# addlayer 1 sqmod-tools.pfs
aufs смонтирована в /initrd/aufs1, сохранение изменений /initrd/changes1
# cp usr/bin/addlayer /initrd/aufs1/usr/bin/addlayer
# rm sqmod-tools.pfs && mksquashfs /initrd/aufs1/ sqmod-tools.pfs -comp xz -Xbcj x86
Parallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on sqmod-tools.pfs, block size 131072.
[===================================================================|] 5/5 100%
.....
# delaufs 1
Моноблок Lenovo IdeaCentre c200
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (atom N270, intel GMA 950)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18910
  • Репутация: +143/-0
    • PuppyRus-A
Re: sqmod-tools - работа с модулями
« Ответ #14 : 19 Февраль 2017, 12:59:43 »
ls /sys/fs/aufs/si_* ??
Нет
# ls /sys/fs/aufs/si_*
br0   br13  br18  br22  br27  br4  br9     brid12  brid17  brid21  brid26  brid30  brid8
br1   br14  br19  br23  br28  br5  brid0   brid13  brid18  brid22  brid27  brid4   brid9
br10  br15  br2   br24  br29  br6  brid1   brid14  brid19  brid23  brid28  brid5   xi_path
br11  br16  br20  br25  br3   br7  brid10  brid15  brid2   brid24  brid29  brid6
br12  br17  br21  br26  br30  br8  brid11  brid16  brid20  brid25  brid3   brid7
Какие мысли про
Нужно добавить проверки и выдачу ошибки