Поскольку все мы работаем в Slax с root правами, хотелось бы иметь для разных пользователей свои настройки и данные. Или несколько профилей для одного пользователя.
Это легко реализовать (и я уже, кажется, писал об этом) следующим образом.
На одном разделе создаем несколько папок:
slax (основная ОС), а также slax1 slax2... (папки других пользователей).
При запуске ОС используется папка /boot только из папки slax.
В папках пользователей папка /boot пустая, нужные модули скопированы из основной, папки /changes, естественно, будут содержать изменения для каждого пользователя.
Ну и в /run/initramfs/memory/data/slax/boot/syslinux.cfg будут такие секции:
LABEL user1
MENU LABEL Run Slax (Persistent changes of user1)
KERNEL /slax/boot/vmlinuz
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 from=/slax1/ slax.flags=perch,automount
Как видите, отличие только в этом: from=/slax1/
Но в таком варианте место расходуется нерационально.
Второй вариант использует жесткие ссылки.
Они применяются только для файлов (не для папок). Реально имеется всего один файл, в определенном месте диска, а все файлы (которые выглядят именно как файлы) - это ссылки на единственный файл.
Создается просто (без -s):
ln file <имя жесткой ссылки>
Можно делать их сколько угодно в разных местах. Чтобы удалить файл вовсе, нужно удалить ВСЕ жесткие ссылки.
Создавать их следует таким образом:
ln /run/initramfs/memory/data/slax/01-core.sb /run/initramfs/memory/data/slax1/01-core.sb
ln /run/initramfs/memory/data/slax/modules/13-progs.sb /run/initramfs/memory/data/slax1/modules/13-progs.sb
Итого мне пришлось сделать это для пяти базовых и двух моих модулей.
В /changes можно применять уже обычные символьные ссылки на ресурсы другого пользователя, если это необходимо.
Результат:
• в загрузочном меню можно выбирать пользователя
• у каждого пользователя свои настройки и данные
• возможно также использование и общих данных
• если один из пользователей удалит модули (даже базовые!) в своей папке slax, то это никак не отразится на других пользователях (а вот в чужие папки slax ходить не стоит)
• я уже не говорю о действиях, которые приведут к неправильной работе ПО или всей ОС у одного пользователя, здесь достаточно что-то исправить в своей /changes, а в крайнем случае просто удалить все ее содержимое, и ОС снова будет работать
• экономия места на диске
Это легко реализовать (и я уже, кажется, писал об этом) следующим образом.
На одном разделе создаем несколько папок:
slax (основная ОС), а также slax1 slax2... (папки других пользователей).
При запуске ОС используется папка /boot только из папки slax.
В папках пользователей папка /boot пустая, нужные модули скопированы из основной, папки /changes, естественно, будут содержать изменения для каждого пользователя.
Ну и в /run/initramfs/memory/data/slax/boot/syslinux.cfg будут такие секции:
LABEL user1
MENU LABEL Run Slax (Persistent changes of user1)
KERNEL /slax/boot/vmlinuz
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 from=/slax1/ slax.flags=perch,automount
Как видите, отличие только в этом: from=/slax1/
Но в таком варианте место расходуется нерационально.
Второй вариант использует жесткие ссылки.
Они применяются только для файлов (не для папок). Реально имеется всего один файл, в определенном месте диска, а все файлы (которые выглядят именно как файлы) - это ссылки на единственный файл.
Создается просто (без -s):
ln file <имя жесткой ссылки>
Можно делать их сколько угодно в разных местах. Чтобы удалить файл вовсе, нужно удалить ВСЕ жесткие ссылки.
Создавать их следует таким образом:
ln /run/initramfs/memory/data/slax/01-core.sb /run/initramfs/memory/data/slax1/01-core.sb
ln /run/initramfs/memory/data/slax/modules/13-progs.sb /run/initramfs/memory/data/slax1/modules/13-progs.sb
Итого мне пришлось сделать это для пяти базовых и двух моих модулей.
В /changes можно применять уже обычные символьные ссылки на ресурсы другого пользователя, если это необходимо.
Результат:
• в загрузочном меню можно выбирать пользователя
• у каждого пользователя свои настройки и данные
• возможно также использование и общих данных
• если один из пользователей удалит модули (даже базовые!) в своей папке slax, то это никак не отразится на других пользователях (а вот в чужие папки slax ходить не стоит)
• я уже не говорю о действиях, которые приведут к неправильной работе ПО или всей ОС у одного пользователя, здесь достаточно что-то исправить в своей /changes, а в крайнем случае просто удалить все ее содержимое, и ОС снова будет работать
• экономия места на диске
Комментариев нет:
Отправить комментарий
Примечание. Отправлять комментарии могут только участники этого блога.