Десять лет назад был диск Movix для этих целей, но сейчас этот проек заброшен. Поэтому видео и звук компьютеров выпущенных после 2005 года, он поддерживать не будет.
Моя попытка создать такой диск при помощи BartPE не увенчалась успехом: он не проигрывал звук. Как ее решить я не знаю.
Поэтому я создал такой live cd на основе knoppix.
Для этого надо иметь.
1. KNOPPIX_V7.2.0CD-2013-06-16-EN;
2. Виртуальную машину, я использовал vmware player;
3. Редактор iso, я использовал ultra iso.
4. Реальный или виртуальный dvd пишущий привод с dvd-rw диском, я использовал программу phantom drive, хотя может подойти еще VirtualCD, KernSafe Total не подходит - он не умеет создавать загрузочные образы. Хотя можно на него записать iso файл, а потом его подсунуть виртуальной машине как диск №1. Виртуальный привод работает быстрее.
5. Текстовый редактор умеющий в конце строк ставить <LF> вместо пары <CR><LF>. Я использовал notepad++.
Редактор iso и виртуальный пишущий привод есть в deamon tools ultra, работоспособность не проверял.
Этапы создания.
1. Создание iso файла со своими скриптами, которые будут автоматизировать работу в knoppix.
Они нужны для того, что бы не вбивать каждый раз такие последовательности команд.
#! /bin/sh
# krhowto_1
# Path to partition you will work on
PFAD="/media/sda1"
START=$(date +'%s')
# Disable screensaver
xscreensaver-command -exit
# One sub-directory will be used for the Master-CD
mkdir -p $PFAD/knx/master
cd $PFAD/knx
# You will need a swapfile
dd if=/dev/zero of=swapfile bs=1M count=500
mkswap swapfile ; swapon swapfile
# Make a sub-directory for the source
mkdir -p $PFAD/knx/source/KNOPPIX
echo "Copy the KNOPPIX files to your source directory."
echo "This will take a long time!"
cp -rp /KNOPPIX/* $PFAD/knx/source/KNOPPIX
# Additionally, copy the files to build the ISO later
rsync -aH --exclude="KNOPPIX/KNOPPIX*" /mnt-system/* $PFAD/knx/master
# gunzip inital RAM-disk
mkdir -p $PFAD/knx/minirt/minirtdir
cp $PFAD/knx/master/boot/isolinux/minirt.gz $PFAD/knx/minirt/
cd $PFAD/knx/minirt/
gunzip minirt.gz
cd minirtdir
cpio -imd --no-absolute-filenames < ../minirt
# Enable screensaver
su knoppix -c "xscreensaver -nosplash &"
echo -e "\nFinished! Used time: $(expr $(expr $(date +'%s') - $START) / 60) min. \
and $(expr $(expr $(date +'%s') - $START) % 60) sec."Этот код взят с wiki konoppix.
Подробно скрипты опишу ниже.
2. Создание виртуальной машины и первая загрузка knoppix.
Виртуальную машину с тремя виртуальными проигрывателями CD и hdd на 40ГБ.
Назначение приводов:
№1 - загрузочный, в него каждый раз будет вставляться загрузочный диск;
№2 - в него будет записываться новый LiveCD, поэтому это должен быть либо реальный привод dvd-rw - либо виртуальный пишущий привод;
№3 - с скриптами автоматизирующими процесс переделки (remastering).
Последовательность оптических приводов должна быть именно такая, если перепутать привод №2 c №3, то knoppix откажется "прожигать" диск.
Для HDD желательно выделить около 40ГБ, ибо при рекомендуемых 5 ГБ, у меня появлялась ошибка нехватки места. Все ниже приведенные скрипты ориентируются не этот размер HDD, если его будет меньше, то их надо будет править.
Попробовать загрузиться с этой виртуальной машины.
В время загрузки виртуальной машины, когда будет экран VMWARE, нажать

Тогда появится голубой экран, типичный для PhoenixBIOS.

В меню "Boot", при помощи кнопки <+>, подвинуть на первую строчку "CD-ROM Drive", нажать <F10> и <ввод> для подтверждения изменения настроек.

Когда полностью загрузится knoppix, то нажать кнопку с черным экраном внизу окна, для запуска оконного терминала.

Можно еще запустить полноэкранный терминал нажатем <Ctrl><Alt>+<F1...F4>, но возврат из него в оконный режим осуществляется нажатем <Alt>+<F5>, а не нажатием <Alt>+<F7>, как в обычном linux.
Теперь для проверки наличия CD и HDD, после команды su, для root доступа, набрать fdisk -l (покажет наличие устройства sda1), mount /dev/sr2 (монтирование привода со скриптами), ls /dev/sr2 (просмотр содержимого диска с настройками, wodim --devices (просмотр наличия пишущего привода).

Как видно, новые устройства монтируются в папку /media, винчестеру присваивается имя /dev/sda, пишущему приводу /dev/scd1, а привод с моими скриптами /dev/sr2, который, по умолчанию, монтируется в папку /media/sr2. Правда сам диск knoppix смонтирован не в /media/sr0, как следовало ожидать, а в /mnt-system.

Выключать виртуальную машину командой restart нельзя, ибо в этом случае в следующий раз виртуальная машина не загрузится, ибо привод компакт дисков будет отключен.
3. Перенос файловой системы на HDD.
Процесс аналогичен описанному мной в процедуре переноса файловой системы роутора TL-MR3020 на флешку.
Для его реализации, я написал скрипт с названием install.sh, который является суперпозицией скрипта из поста про tl-mr3020 (оттуда взял процедуру форматирования диска) и описанного в wiki knoppix.
Назначение скрипта:
-проверка на пользователя root;
-форматирование винчестера на два раздела: один для корневой системы (sda1), а другой для подкачи (sda5);
-монтирование sda1 и раздела подкачки (SDA5);
-копирование файловой системы на /media/sda1/knx/source/KNOPPIX, как описано в wiki;
-копирование файлов из sr в разные папки на hdd;
-редактирует файл /media/sda1/knx/source/KNOPPIX?etc/profile для запуска моих скриптов без указания каталога;
-изменение корневого раздела.
Скрипт install.sh
#!/bin/sh #********************************************************************************** #*скрипт переносящий файловую систему knoppix на hdd, для создания своего LiveCD * #*создан на основе кода из wiki knoppix * #*27 января 2015 года, zepete.livejournal.com * #********************************************************************************** #!/bin/sh # krhowto_1 # Path to partition you will work on if [ "$(whoami)" != "root" ] ; then echo 'Before run "install.sh", need execute "su"!' exit 1 fi umount /dev/sda1; swapoff /dev/sda5
fdisk /dev/sda<<EOF o n p 1
+35G t 1 83 n e 2
n l
t 5 82 w EOF
until mkfs /dev/sda1 ; do echo >/dev/zero; done until mkswap /dev/sda5 ; do echo >/dev/zero; done mount /dev/sda1 swapon /dev/sda5 mount /dev/sr2 /etc/init.d/networking stop
PFAD="/media/sda1" START=$(date +'%s') # Disable screensaver xscreensaver-command -exit # One sub-directory will be used for the Master-CD mkdir -p $PFAD/knx/master cd $PFAD/knx # You will need a swapfile #dd if=/dev/zero of=swapfile bs=1M count=500 #mkswap swapfile ; swapon swapfile # Make a sub-directory for the source mkdir -p $PFAD/knx/source/KNOPPIX echo "Copy the KNOPPIX files to your source directory." echo "This will take a long time!" cp -rp /KNOPPIX/* $PFAD/knx/source/KNOPPIX # Additionally, copy the files to build the ISO later rsync -aH --exclude="KNOPPIX/KNOPPIX*" /mnt-system/* $PFAD/knx/master # gunzip inital RAM-disk mkdir -p $PFAD/knx/minirt/minirtdir cp $PFAD/knx/master/boot/isolinux/minirt.gz $PFAD/knx/minirt/ cd $PFAD/knx/minirt/ gunzip minirt.gz cd minirtdir cpio -imd --no-absolute-filenames < ../minirt # Enable screensaver su knoppix -c "xscreensaver -nosplash &" echo -e "\nFinished! Used time: $(expr $(expr $(date +'%s') - $START) / 60) min. \ and $(expr $(expr $(date +'%s') - $START) % 60) sec."
if ! grep -q 'zepete' $PFAD/knx/source/KNOPPIX/etc/profile then # TEMP_FILE=/tmp/profile$RANDOM sed -i 's/^\([ ]*PATH="[^:]*:[^:]*:[^:]*:.*[^:]\)"/\1:\/sbin\/zepete"/' $PFAD/knx/source/KNOPPIX/etc/profile # cp TEMP_FILE $PFAD/knx/source/KNOPPIX/etc/profile # rm TEMP_FILE fi
rm -rf $PFAD/knx/source/KNOPPIX/sbin/zepete/* mkdir $PFAD/knx/source/KNOPPIX/sbin/zepete cp /media/sr2/*.sh $PFAD/knx/source/KNOPPIX/sbin/zepete chmod 777 $PFAD/knx/source/KNOPPIX/sbin/zepete/*.sh
rm -rf $PFAD/knx/source/KNOPPIX/etc/xdg/autostart/* cp /media/sr2/*.desktop $PFAD/knx/source/KNOPPIX/etc/xdg/autostart chmod 666 $PFAD/knx/source/KNOPPIX/etc/xdg/autostart/*.desktop
cp /media/sr2/shutdown.ogg $PFAD/knx/source/KNOPPIX/usr/share/sounds # sound play on switch on cp /media/sr2/startup.ogg $PFAD/knx/source/KNOPPIX/usr/share/sounds # sound play on shutdown
# To use the Internet add your nameserver into the chroot folder cp /etc/resolv.conf $PFAD/knx/source/KNOPPIX/etc/resolv.conf # Allow X-based programs in chroot [ -e $PFAD/knx/source/KNOPPIX/home/knoppix/.Xauthority ] \ && rm $PFAD/knx/source/KNOPPIX/home/knoppix/.Xauthority cp /home/knoppix/.Xauthority $PFAD/knx/source/KNOPPIX/home/knoppix chown knoppix:knoppix $PFAD/knx/source/KNOPPIX/home/knoppix/.Xauthority # prepare enviroment for chroot mount --bind /dev $PFAD/knx/source/KNOPPIX/dev mount -t proc proc $PFAD/knx/source/KNOPPIX/proc mount -t sysfs sysfs $PFAD/knx/source/KNOPPIX/sys mount --bind /dev/pts $PFAD/knx/source/KNOPPIX/dev/pts mount --bind /tmp $PFAD/knx/source/KNOPPIX/tmp
chroot /media/sda1/knx/source/KNOPPIX
Несколько замечаний.
1. В вике написано, что надо создавать файл подкачки, но файл подкачки не хочет монтироваться командой swapon, поэтому я его заменил на раздел подкачки;
2. В вике сказано, что пользовательские скрипты надо помещать в файл '/media/sda1/knx/master/KNOPPIX/knoppix.sh, но этот файл запускает до startx, потому что он запускается из /etc/init.d/knoppix-autoconfig, который вызывается первым в /etc/inittab (там есть строка "si::sysinit:/etc/init.d/knoppix-autoconfig", что она означаетописано здесь), надо помещать в ярлык размещенный в каталоге /etc/xdg/autostart. Формат ярлыка описан здесь.
Фрагмент /etc/inittab
<...> si::sysinit:/etc/init.d/knoppix-autoconfig <...> # Xmode in runlevel 5 x1:5:respawn:etc/init.d/knoppix-startx start <...>Фрагмент /etc/init.d/knoppix-startx
<...>
#Start function
start(){
<...>
su -l -c "export STARTUP=$STARTUP ; exec /usr/bin/startx -- vt5 -dpi "$DPI" -br -noreset -nolisten tcp" "$USER" <DEV tty5="tty5">/dev/tty5 2>&1 ; RC="$?"
<...>
}
<...>
#MAIN#Not used, start right after knoppix-autoconfig #wait config <...> case "$1" in start) start ;; stop) stop ;; restart) stop; sleep 4 <...> esac
exit $?
Фрагмент /etc/init.d/knoppix-autoconfig
<...> #Execute user-defined knoppix.sh on our boot medium [ -n "$knoppix_dir" ] || knoppix_dir="KNOPPIX" for knoppixsh in /mnt-system/"$knoppix_dir"/knoppix.sh; do if [ -r "$knoppixsh" ]; then echo -e "\n\e\033[1mExecuting $knoppixsh.\033[0m" . "$knoppixsh" fi done : End of /etc/init.d/knoppix-autoconfig and leave with true status
Файл ярлыка (текстовый файл с расширением .desktop) помещаемый в /knx/source/KNOPPIX/etc/xdg/autostart.
[Desktop Entry] Type=Application # Indicates the type as listed above Version=1.0 # The version of the desktop entry specification to which this file complies Name=Mplayer # The name of the application GenericName=Player multimedia files # Generic name of the application Comment=Player multimedia files # A comment which can/will be used as a tooltip Exec=/sbin/zepete/player.sh # The executable of the application. Terminal=false # Describes whether this application needs to be run in a terminal or not Categories=Education; autostart; # Describes the categories in which this entry should be shown
3. При включении/выключении я слышу "мишель старт секвенс"/"мишель ин шутдаун секвенс", в интернетах пишут, что говорит "initiating starting sequence"/"initiating shutdown sequence". Кто прав я не знаю, но эта речь размещена в файлах /usr/share/sounds/startup.ogg и /usr/share/sounds/shutdown.ogg. Замену их я прописал в своем скрипте init.sh. Перекодировать звук в ogg можно XMediaRecode, описанное мной ранее.
4. Настройка knoppix.
Здесь я опишу самый главный скрипт, который будет вызываться из ярлыка описанного в предыдущем пункте.
Он сначала пробует запустить любые файлы из каталога audio_video, если их там не находит, то пробует найти правильный каталог VIDEO_TS от dvd-видео диска. Если его не находит, то пробует проигрывать файлы с расширением iso, как образ dvd-видео диска, если фала такого не находит, то пробует проиграть все файлы, имена которых содержатся в файле playlist.mpl, в котором каждая строчка - это путь к одному файлу. Если его не находит, то составляет свой список видео и аудио файлов с правильными расширениями, который потом пытается проиграть.
Текст скрипта player.sh.
#!/bin/sh
########################################################################################
# batch for running player of video and audio files in konppix #
# may playing files in dir /mnt-system/audio_video with any extensions. #
# If it dir is empty or missing, then searching files playlist.mpl in /mnt-system with #
# playlist. #
# #
# If it file is missing or empty, then searching iso file, witch will be mount for #
# playing as dvd. If iso is lot, then playing first finded. #
# #
# If iso can not playing, then searching file with extension 3ga,3gp,3g2,3gp2,3gpp, #
# 3gpp2,3p2,aac,ac3,asf,avi,act,pva,avchd,bsf,,dv,jts,h264,264, #
# irf,kmv,k3g,mj2,mjp,mjpg,mka,mkv,mk3d,mov,moov,movie,mp3,mp4,mp4v,f4v,mpeg4,m4e, #
# m4a,m4b,mpc,y4m,m15,m1v,m21,m2a,m2v,m75,mp21,mp2v,mpe,mpeg,mpeg1,mpg,mpv,mpv2,m1a, #
# mp1,mp2,mpa,mpga,mpu,mqv,mts,nut,nuv,oga,ogg,spx,mogg,ogm,ogv,pcm,qt,qtch, #
# qtm,ssm,rts,rm,rmd,rms,rmvb,rv,r1m,ra,ram,rax,rmj,rmx,rvx,roq,ts,hdmov,vcd,viv,vivo, #
# vob,webm,wma,wm,wmv,wtv and play it #
# #
# Script wrote zepete, in January 2015 year. Read "zepete.livejournal.com" #
########################################################################################
declare -l -r video_extension="264 3gp 3g2 3gp2 3gpp 3gpp2 3p2 asf avi avchd bsf \
dv h264 hdmov irf jts kmv k3g m15 m1v m21 m2a m2v m75 mp21 mp2v mp4v mpe mpeg mpeg1 \
mpg mpv mpv2 mj2 mjp mkv mpeg4 mk3d m4e mjpg mov moov movie mqv mts nut nuv ogm ogv \
pva qt qtch qtm rts rmd rm rv rms rmvb roq ssm ts vcd viv vivo vob webm wm wmv wtv \
y4m"
declare -l -r audio_extension="3ga aac ac3 act mka mp3 m4a m4b mpc m1a mp1 mp2 \
mpa mpga mpu mogg oga ogg spx pcm r1m ra ram rax rmj rmx rvx wma wav"
# sysctl dev/rtc/max-user-freq=1024
declare -r mplayer_keys="-vo gl -msglevel all=-1 -msgmodule -quiet -fixed-vo -loop 0 -rtc -ontop -fs"
cd /mnt-system # root dir of booting cd/dvd
# try playing filrs in audio_video
DIR=`find -maxdepth 1 -iname audio_video -type d`
VIDEO_TS=`find -maxdepth 1 -iname VIDEO_TS -type d`
ISO=`find -maxdepth 1 -iname *.iso -type d`
PLAYLIST=`find -maxdepth 1 -iname playlist.mpl -type d`
if [ $DIR ]; then
cd $DIR
if [ `find . -maxdepth 1 -type f -size +1c | wc -l` ]; then
# play all find files in alphabet sequence
if mplayer $mplayer_keys * ; then exit 0; fi
zenity --error --text="Error play files in folder $DIR" ; exit 1
fi
elif [ $VIDEO_TS ]; then
cd $VIDEO_TS
if [ `find . -iname *.VOB -maxdepth 1 -type f -size +1c | wc -l` -a \
`find . -iname *.BUP -maxdepth 1 -type f -size +1c | wc -l` -a \
`find . -iname *.IFO -maxdepth 1 -type f -size +1c | wc -l` ]; then
if mplayer $mplayer_keys -dvd-device ./ dvd:// ; then exit 0; fi
zenity --error --text="Error play $VIDEO_TS" ; exit 2
fi
elif [ $ISO ]; then
if mplayer $mplayer_keys -dvd-device $ISO dvd:// ; then exit 0; fi
zenity --error --text="Error playing $ISO"
elif [ $PLAYLIST ]; then
if mplayer $mplayer_keys -playlist $PLAYLIST ; then exit 0; fi
zenity --error --text="Error playing $PLAYLIST"
else
# making playlist from files with true video and audio extension
TEMP_FILE=`mktemp XXXXXX.PlayList`
for ext in $video_extension ; do
find . --maxdepth 1 -type f -iname *.$ext -size +1c | sort >> $TEMP_FILE
done
for ext in $audio_extension ; do
find . --maxdepth 1 -type f -iname *.$ext -size +1c | sort >> $TEMP_FILE
done
mplayer $mplayer_keys -playlist $TEMP_FILE
let ret=$?
rm -f $TEMP_FILE
if [ ret eq 0 ]; then exit 0; fi
zenity --error --text="Error playing files in root"
fi
Замечания.
1. Все комментарии на ломаном английском, ибо knoppix, по умолчанию, не умеет писать русскими буквами, а это самый важный скрипт, который выполняет всю работу.
2. В качестве устройства вывода использую gl, ибо остальные не работают или не умеют растягивать изображение на весь экран (x11), с глюками (gl2) или выводят в виде букв (aa).
3. Вызываю его из x11/metacity/lxde, ибо в текстовом режиме mplayer не хочет работать.
4. Описание ключей mplayer:
-dvd-device - указание пути к смонтированному dvd-видео диску или его образу;
dvd:// - раздел с котого начианет проигрывание, если не указан, то проигрывает с начала;
-loop 0 - проигрывать циклически и неограниченно долго;
-playlist <имя файла> - указание плейлиста, в которой каждая строчка - это путь к конкретному файлу;
-vo gl - указание видеодрайвера;
-msglevel all=-1 -msgmodule -quiet - не выводить сообщения;
-fixed-vo - все играть в одном окне;
-rtc -синхронизацию изображения со звуком производить по часам точного времени;
-ontop - поверх всех окон;
-fs - растянуть на весть экран.
5. Какие расширения должен уметь проигрывать mplayer я взял сопоставив этого, этого и этого.
Кроме этого, здесь можно еще заменить фон, удалить/установить приложения, добавить/убрать ярлыки, разрешение экрана..... Но это опишу в следующий раз, ибо это делать не обязательно. Сейчас только самый минимум.
5. Возвращение файловой системы назад к cd.
Для этого использовал скрипт почерпнутый из wiki, практически без изменений. Добавил только проверку на root. Перед его исполнение надо нажать
Файл freehdd.sh
#! /bin/sh # krhowto_3 # Path to partition you will work on if [ "$(whoami)" != "root" ]; then echo 'Before run "install.sh", need execute "su"!' exit 1 fi PFAD="/media/sda1" for i in dev/pts proc sys dev tmp; do umount $PFAD/knx/source/KNOPPIX/$i done sed -i '2,$d' $PFAD/knx/source/KNOPPIX/etc/resolv.conf
6. Издевательства над загрузчиком.
В папке '/media/sda1/knx/master/boot/isolinux хранится рапакованный загрузчик. В нем можно заменить надпись "welcome", картинку пингвина с 4 крыльями магические коды загрузки. Опишу в следующий раз.
7. Создание iso образа.
Скрипт взял полностью из wiki.
Файл makeiso.sh
#!/bin/sh
# krhowto_4
# Path to partition you will work on
PFAD="/media/sda1"
START=$(date +'%s')
# Disable screensaver
xscreensaver-command -exit
# Build new inital RAM-disk
cd $PFAD/knx/minirt/minirtdir/
find . | cpio -oH newc | gzip -9 > ../minirt.gz
cp $PFAD/knx/minirt/minirt.gz $PFAD/knx/master/boot/isolinux/
# Make the big compressed filesystem KNOPPIX
#input-charset ISO-8859-15 кодировка символов файловой системы
genisoimage -input-charset ISO-8859-15 -R -l -D -V KNOPPIX_FS -quiet \
-no-split-symlink-components -no-split-symlink-fields \
-hide-rr-moved -cache-inodes $PFAD/knx/source/KNOPPIX \
| /usr/sbin/create_compressed_fs -q -B 65536 -t 8 -L 9 \
-f $PFAD/knx/isotemp - $PFAD/knx/master/KNOPPIX/KNOPPIX
# Update the file hashes used by the "testcd" boot option
cd $PFAD/knx/master ; find -type f -not -name \
sha1sums -not -name boot.cat -not \
-name isolinux.bin -exec sha1sum '{}' \; > KNOPPIX/sha1sums
# Create new Knoppix ISO
genisoimage -l -r -J -V "KNOPPIX" \
-b boot/isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 \
-boot-info-table -c boot/isolinux/boot.cat \
-o $PFAD/knx/remastered.iso $PFAD/knx/master
# Enable screensaver
su knoppix -c "xscreensaver -nosplash &"
echo -e "\nFinished! Used time: $(expr $(expr $(date +'%s') - $START) / 60) min. \
and $(expr $(expr $(date +'%s') - $START) % 60) sec. \
\n\nThe new ISO is stored in '$PFAD/knx/remastered.iso' "
Процесс длительный, поэтому его можно использовать на тестирование производительности виртуальных машин.
7. Запись образа на болванку.
Можно производить как программой brasero с gui интерфейсом, так и с командной строки. Я для этого создал такой скрипт, ибо я пакет brasero удалил.
Файл burncd.sh
#!/bin/sh PFAD="/media/sda1" growisofs -Z /dev/scd1=$PFAD/knx/remastered.iso
Если надо записывать, просто, файлы на диск, то можно использовать такой скрипт.
Файл burnfiles.sh
#!/bin/sh PFAD="/media/sda1" # background file for i in jpg png gif; do FILELIST="/usr/local/lib/knoppix"."$i" if [ -r $FILELIST ]; then break; else FILELIST=""; fi done
FILELIST=$FILELIST" "`find /usr/share/sounds -maxdepth 1 -name startup.ogg -type f -size +1c` #startup music FILELIST=$FILELIST" "`find /usr/share/sounds -maxdepth 1 -name shutdown.ogg -type f -size +1c` #shutdown music FILELIST=$FILELIST" "`find $PFAD/knx/master/boot/isolinux -maxdepth 1 -name f3 -type f -size +1c` #help about <F3> on booting FILELIST=$FILELIST" "`find $PFAD/knx/master/boot/isolinux -maxdepth 1 -name f2 -type f -size +1c` #help about <F2> on booting FILELIST=$FILELIST" "`find $PFAD/knx/master/boot/isolinux -maxdepth 1 -name logo.16 -type f -size +1c` #picture on booting FILELIST=$FILELIST" "`find $PFAD/knx/master/boot/isolinux -maxdepth 1 -name isolinux.cfg -type f -size +1c` #config booting FILELIST=$FILELIST" "`find $PFAD/knx/master/boot/isolinux -maxdepth 1 -name boot.msg -type f -size +1c` #msg on bottom boot screen FILELIST=$FILELIST" "`find $PFAD/knx/minirt/minirtdir -maxdepth 1 -name init -type f -size +1c` #welcome message FILELIST=$FILELIST" "`find $PFAD/knx -maxdepth 1 -name remastered.iso -type f -size +1c` #out iso
growisofs -Z /dev/scd1 $PFAD/knx/remastered.iso $FILELISTОписание файлов:
remastered.iso - новый образ диска;
boot.msg - надпись внизу экрана при загрузке;
isolinux.cfg - меню загрузки;
logo.16 - пингвин с 4 лапами и 4 крыльями, который появляется при загрузке;
f2 - сообщение появляемое при нажатии <F2> при загрузке;
f3 - справка по магическим ключам командной строки;
shutdown.ogg - звук при выключении;
startup.ogg - звук при включении;
knoppix.* - фоновый экран.
8. Добавление/удаление видео на/с диск(а).
Теперь при желании можно добавить/удалить видеофайлы на этот диск.
Я это делал в ultraiso. Видео добавляется одним из способов:
-в корневой каталог;
-в каталог audio_video;
-iso образ dvd-video диска в корневой каталог;
-папка video_ts с dvd-video диска в корневой каталог;
-в корневой каталог плейлист с путями к файлам помещенным в любую папку.
9. Проверка работоспособности диска.
Для этого iso файл полученный на этапе 7-8 поместить в привод №1 виртуальной машины, а в №2 подставить "болванку", лучше виртуальную.
Загрузить виртуальную машину и поработать с ней, если все будет работать, то можно переходить к проверке на реальном компьютере.