在Debian及其衍生物中從頭創建LiveCD-DVD-USB的步驟。

從需要創建自己的LiveCD(我可以定期更新和定制)開始,並了解GNU / Linux領域計算機技術的進步,我意識到幾乎不需要安裝額外的圖形程序。

多虧了便攜式設備,在某些情況下,我不需要為我安裝日常使用的程序,例如Gimp,Inskape,Blender,甚至Libreoffice。 沒有在我的系統上安裝這些程序,我在軟件和庫中保存了幾兆位。

可以從以下站點下載適用於Linux的便攜式計算機:

http://sourceforge.net/projects/portable/files

他們甚至可以使用同一站點上的以下程序製作自己的便攜式計算機:
-AppDirAssistant:用於移植程序的實用程序,必須在安裝要移植的軟件之前運行AppDirAssistant; 在運行AppDirAssistant之前無法安裝此類軟件。
-AppImageAssistant:實用程序,用於將結構壓縮為單個可自行執行的文件,該文件夾由

要為已安裝的某些軟件創建可移植文件,可以使用以下程序:

對於32位
https://github.com/downloads/pgbovine/CDE/cde_2011-08-15_32bit

對於64位
https://github.com/downloads/pgbovine/CDE/cde_2011-08-15_64bit

使用此方法創建可移植文件時,將不會查找操作系統中安裝的依賴項,也不會將配置保存在用戶文件夾中,除非在cde-root中創建了符號鏈接或cde.options文件用類似於此行的行指示:

ignore_prefix = /主頁

看到這一點,我們將意識到我們可以下載或創建所需的便攜式設備,而無需在基本系統之外安裝其他應用程序,從而在創建自己的LiveCD時減少了空間。

發展
如標題所示,我們將看到如何從頭開始創建自己的LiveCD,這將使我們能夠從安裝基本系統開始安裝想要的應用程序,有幾種方法可以實現這一目的,一種方法是通過文本模式安裝而無需安裝實際上是安裝圖形系統,另一個是使用debootstrap安裝,最後一種情況是我們在本手冊中要解決的情況,因為它允許我們從頭開始創建我們的系統,而無需在基礎系統上添加任何程序。

已經安裝了GNU / Linux系統後,我們將創建一個具有所需大小的分區,以在該分區上安裝基本系統,讓我們逐步了解如何使用debootstrap創建基本系統:

第1步
安裝debootstrap

 #apt-get install debootstrap

第2步
在/ mnt中掛載新分區

 #mount / dev / sdax / mnt

第3步
在該分區上安裝基本系統:

對於32位

 #debootstrap --arch i386發行版/ MNT

對於64位

 #debootstrap --arch amd64發行版/ mnt

該發行版必須更改為我們要安裝的GNU / Linux版本的名稱,這些文件位於 / usr / share / debootstrap /腳本如果不存在要使用的發行版本名稱的文件,則只需複制具有新版本名稱的最新版本之一,然後使用文本編輯器將其打開,並在其中指明網址,即可更改它到新的一個,例如:

我想到我是從另一個地址而不是從官方頁面下載資源庫,我會 / usr / share / debootstrap /腳本 我複制了此文件的最新版本,在這種情況下,我使用此文件夾中的Ubuntu存儲庫(Oneiric),但下載地址不同,因為它位於我的PC硬盤上,我們打開文件並更改

default_mirror http://archive.ubuntu.com/ubuntu

default_mirror文件:///路徑/到/ repo / ubuntu

如果他們發現有不止一條這種形狀的線,他們也必須更改它。

重要的是/ usr / share / debootstrap / scripts中的文件必須具有上述發行版的密鑰名,如果是Debian squeeze版本,則必須具有該名稱以及正確的Web鏈接。
不建議直接在USB存儲器或外部磁盤上執行此步驟,因為將文件複製到usb端口的速度較慢,此外,由於過度複製和提取軟件包可能會損壞Pendrive,在上述分區進行。

第4步
我們使用chroot從終端更改工作根目錄,然後根據需要安裝基本軟件。
-更換籠子

#mount -t proc none / mnt / proc#mount -o bind / dev / mnt / dev

-掛載包含存儲庫的外部磁盤

#mkdir / mnt /介質/磁盤名#mount / dev / sdax / mnt /介質/磁盤名#chroot / mnt

-在同一籠子內指示在/etc/apt/source.list中使用哪些存儲庫
納米/etc/apt/source.list
就我而言,是從我的電腦磁盤

deb文件:///介質/磁盤名稱/ Oniric-Ocelot /鏡像/ ubuntu / oneiric主多重宇宙受限Unib deb文件:///介質/磁盤名/ Oniric-Ocelot /鏡像/ ubuntu / oneiric-backports主要multiverse受限制的Unib deb文件:///媒體/磁盤名稱/ Oniric-Ocelot /鏡像/ ubuntu / oneiric建議的主要多元宇宙受限制的Unib deb文件:/// media /磁盤名/ Oniric-Ocelot /鏡像/ ubuntu / oneiric -security主多重宇宙限制Unib deb文件:///媒體/磁盤名稱/ Oniric-Ocelot /鏡像/ ubuntu / oneiric-updates主要多重宇宙有限的Unib deb文件:/// media /磁盤名稱/ Oniric-Ocelot /鏡像/ medibuntu / oneiric免費非免費deb文件:///媒體/磁盤名稱/ Oniric-Ocelot /鏡像/規範/ oneiric合作夥伴

如果我們使用網頁上的傳統方法,並且使用代理地址,則需要使用以下命令告訴它從同一籠中使用此代理:

#export http_proxy =“ http://用戶:password@proxy.name.org:3128”#export ftp_proxy =“ http://用戶:password@proxy.name.org:3128”

第5步

#apt-get update#apt-get upgrade#apt-get upgrade#apt-get dist-upgrade

第6步
安裝語言環境(語言)

#aptitude安裝語言環境#dpkg-重新配置語言環境#aptitude安裝語言環境#localepurge

第7步
安裝我們將要使用的內核版本,例如:

#apt-get install GNU / Linux-image-3.0.0-14-generic depmod 3.0.0-14-generic user-setup

第8步
繼續安裝必要的軟件,以正確引導系統並隨後創建LiveCD。

 #apt-get install aptitude grub2 sysGNU / Linux squashfs-tools casper archdetect-deb mkisofs genisoimage xorriso console-tools console-keymaps mc blkid parted

第9步
創建一些基本配置文件

 #mcedit / etc / network / interfaces

並添加以下內容:

auto lo iface lo inet回送auto eth0 iface eth0 inet dhcp

編輯文件:

 #mcedit / etc /主機名

並添加以下內容:
主機名

 #mcedit / etc / hosts

並添加以下內容:
127.0.0.1 localhost主機名

第10步
創建mtab和fstab文件。

#grep -v rootfs / proc / mounts> / etc / mtab#grep / etc / mtab -e“ /”> / etc / fstab

注意:為避免衝突,建議通過uuid將地址分配給根磁盤,使用blkid命令,您可以獲取uuid,並用uuid替換此籠中/ etc / fstab中的/ dev / sdax,例如它是

 / dev / sda1替換為UUID = uuid,因此:UUID = 476efe22-73ec-4276-915d-c4gga65f668b / ext3錯誤= remount-ro 0 0

步驟#11
安裝圖形環境-如果不需要安裝圖形環境,則為可選。

 #apt-get install xserver-xorg-video-all xorg xserver-xorg

第12步
安裝grub,如果引導扇區中未安裝任何grub,則可以通過以下方式進行安裝:

如果尚未安裝任何GNU / Linux系統,我們將進行以下操作:
我們離開了籠子:

#退出#sudo grub-install --root-directory = / mnt / dev / sda

我們回到籠子裡:

#chroot / mnt#更新

-如果已經安裝了grub文件,我們只需編輯該文件
我們離開了籠子:

#退出#update-grub

第13步

我們將安裝首選的桌面環境以及所需的會話管理器。 以我為例,我與spacefm文件瀏覽器一起安裝了桌面環境e17(啟蒙版),從而創建了自己的LiveCD來製作備份副本,並且我包括了debootstrap程序來直接從存儲庫中安裝新的操作系統而無需使用使用其他LiveCD或文本模式安裝。

 #apt-get install e17 e17-data gparted mtools testdisk secure-delete partimage gzip zip unzip tar pkill xterm

您可以選擇自己喜歡的桌面環境以及要使用的應用程序集。

會話管理器。

-在這種情況下,我不需要會話管理器來詢問我用戶名和密碼,因為它的目的是直接啟動會話,為此,我們在/ etc / startX中創建一個文本文件

#觸摸/etc/init.d/startX#chmod + x /etc/init.d/startX

將以下內容複製到該文件中

#!/ bin / sh / lib / lsb / init-functions PATH = / sbin:/ bin:/ usr / sbin:/ usr / bin case $ 1 in start)echo“正在啟動圖形系統” echo“您可以在/ var / log /中檢查LOG boot_x。log“ X:0 1 >> / var / log / boot_x.log 2 >> / var / log / boot_x.log&DISPLAY = 0 su root -c enlightenment_start 1> / dev / null 2> / dev /空&;; 停止)echo“停止所有X個進程” pkill X ;; *)回顯“無效選項”; esac出口0

為了告訴系統使用該系統啟動該文件,我們從控制台執行以下命令。

 #update-rc.d startX默認為99

這是為了避免必須使用諸如lxdm,gdm之類的任何窗口管理器。

我們使用新安裝重新啟動PC。

正如我已經指出要為此安裝spacefm一樣,我從此頁面下載了源代碼。

http://spacefm.sourceforge.net/ (el fichero .tar.gz o .tar.xz) al disco de la maquina.

我安裝了此軟件的依賴項:

#apt-get install autotools-dev bash桌面文件實用程序build-essential libc6 libcairo2 libglib2.0-0 libgtk2.0-0 libgtk2.0-bin libpango1.0-0 libx11-6 shared-mime-info intltool pkg-配置libgtk2.0-dev libglib2.0-dev fakeroot libudev0 libudev-dev

我們說的文件不緊湊

 tar -xf /path/file/spacefm.tar.xz cd / path / file / spacefm ./configure#make -s#make install#update-mime-database / usr / local / share / mime> / dev / null# update-desktop-database -q#gtk-update-icon-cache -q -t -f / usr / local /共享/圖標/ hicolor#gtk-update-icon-cache -q -t -f / usr / local /分享/圖標/ Faenza

這樣,如果沒有問題,我們將安裝spacefm。

第14步

安裝remastersys。

Remastersys可以在其官方網站http://remastersys.sourceforge.net/上找到它,但我建議您使用 附上 保持兼容性,因為它在LiveCD創建過程中不會安裝或卸載任何應用程序,並保留一些腳本以將LiveCD安裝在USB內存上。

下載remastersys並安裝。

 #dpkg -i /path/a/remastersys.deb
注意:Ubiquity是ubuntu的圖形安裝程序,但以後在PC上安裝LiveCD時不必安裝它。

第15步

使用remastersys創建LiveCD。

Remastersys有2種LiveCD創建模式,一種保存所有用戶的配置,另一種刪除另一用戶的所有配置和註冊,這是我們在傳統Ubuntu LiveCD中經常看到的。

要創建LiveCD,請保存您的設置。

 #remastersys備份

-在沒有用戶或配置的情況下創建LiveCD(推薦)。

#remastersys dist cdfs#remastersys dist iso custom custom.iso
注意:這些文件將在/ home / remastersys中生成,以自定義用戶名,其他人可以編輯/etc/remastersys.conf文件。 由於root用戶不會刪除其密碼,因此建議不要使用任何具有破壞性的密碼作為root密碼。

第16步

安裝任何由remastersys製作的Debian LiveCD或衍生產品。
首先,按照以下步驟驗證分區是否被標記為可移植:

#parted / dev / sdb set 1開機-激活#parted / dev / sdb set 1開機-停用
注意:設置後的數字對應於該內存的分區號。

-我們將iso安裝在cd dvd上,或者如果您希望通過以下方式在usb設備上安裝(所有這些都作為root用戶):

mkdir -p / mnt / cdrom mkdir -p / mnt / usb mount -o循環/路徑/ file.iso / mnt / cdrom mount / dev / sdbx / mnt / usb cp -r / mnt / cdrom / * / mnt / usb cp -r / mnt / cdrom / isoGNU / Linux / * / mnt / usb mv /mnt/usb/isoGNU/Linux.cfg /mnt/usb/sysGNU/Linux.cfg umount / mnt / usb umount / mnt / cdrom

#小心查看USB設備的分區,如果安裝的分區是/ dev / sdb1,則引導扇區必須安裝在/ dev / sdb中

#cat /usr/lib/sysGNU/Linux/mbr.bin> / dev / sdb#sysGNU / Linux --install / dev / sdb1

步驟#16.1。

首先,我們從LiveCD或USB(如果內存中有)開始。

如果未創建所需的分區,例如swap(交換區域),以及大於1 GB或更大的分區,具體取決於livecd的大小。

注意:/ dev / sdax是指/ dev / sda1還是其他數字,我們可以通過在控制台中鍵入blkid進行檢查。

步驟#16.2。

掛載在/ mnt中創建的分區

#fsck -a / dev / sdax#掛載/ dev / sdax / mnt

步驟16.3。

將/ rofs文件夾中的所有文件複製到/ mnt

 #cp -r / rofs / * / mnt

注意:所有這些都是root用戶。

步驟#16.4。

安裝grub

 #grub-install --root-directory = / mnt / dev / sda

步驟#16.5。

準備系統以正確引導grub。

mount -t proc none / mnt / proc mount -o bind / dev / mnt / dev chroot / mnt update-grub

步驟#16.6。

在不離開chroot籠的情況下,我們準備了基本文件/ etc / fstab和/ etc / mtab

grep -v rootfs / proc / mounts> / etc / mtab grep / etc / mtab -e“ /”> / etc / fstab
注意:如果需要,請使用以下命令通過控制台創建除root以外的新用戶:
useradd -m -c“管理用戶” -G adm,admin,sudo,撥出,cdrom,plugdev,lpadmin,sambashare -d / home / user -s / bin / bash用戶

結論

這樣,本廣泛而簡單的指南就完成了,如果您願意並與朋友分享自己的livecd,可以將其付諸實踐,所有livecd / dvd的質量取決於用戶自己的知識,實施新技術可以節省成本。硬盤空間。

如您所見,沒有必要使用unetbootin將LiveCD轉換為實時USB,如果您使用spacefm,則將擁有圖形應用程序所需的一切,既可以轉換視頻,音頻文件,也只需要從命令行執行此操作的程序,然後創建或下載插件來執行這些任務。


本文內容遵循我們的原則 編輯倫理。 要報告錯誤,請單擊 這裡.

12條評論,留下您的評論

發表您的評論

您的電子郵件地址將不會被發表。

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   履歷 他說:

    所有的噪音來創建CD? 我認為這是從CD發生的

  2.   pandev92 他說:

    沒有網站可以讓您成為現場的debian CD? O

    1.    eliotime3000 他說:

      對於懶惰的人來說,此過程多麼令人沮喪,他們很容易進入live.debian.org並將其移植到USB。

  3.   PEPE 他說:

    太複雜了,在我的另一台PC上,我在Xubuntu 13.04中使用Remastersys,並在13分鐘內從已經安裝並使用我感興趣的程序自定義的系統中完美生成了iso live cd。 今天,只有重製者才能完全實現這一目標,還有其他方法和其他方法,但是它們仍然像本文中所描述的那樣乏味。

    1.    eliotime3000 他說:

      或者至少,他們會在.sh中編寫一個小腳本,並且問題得以解決(甚至可以得到幫助)。

  4.   olo 他說:

    好吧,對我來說,似乎是一本很好的手冊,我有時間會嘗試的。
    也許有更快的方法可以做到這一點,但是您沿途學到的東西(可能不會第一次)是無價的。

  5.   塔希德 他說:

    我碰巧建議那些沒有安裝普遍性的人安裝以下依賴項。

    accountservice apt-克隆btrfs-tools控制台設置cryptsetup dmidecode dmraid dpkg-repack ecryptfs-utils gconf2 gconf2-common gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-gstreamer-0.10 gir1.2 .3.0-gtk-1.2 gir1.0-pango-1.2 gir2.4-soup-1.2 gir1.0-timezonemap-1.2 gir2.90-vte-1.2 gir3.0-webkit-0 indicator-application kbd keyutils語言選擇器-常見的筆記本電腦檢測libaccountsservice1 libappindicator3 libappindicator1-0 libbsd0 libcap-ng2 libcap4-bin libdbusmenu-glib3 libdbusmenu-gtk4-4 libdbusmenu-gtk0 libdebconfclient1.0.0 libdmraid16.rc0g libcrypt 3 libcrypt 0.rc1g-0g -libilf 2 libgtk-4-3 libgtk-1-bin libgtk-3-通用libgtop0-3 libgtop3-通用libicu2 libindicator7-2 libindicator44 libiw3 libnss6-6d libp30-kit3 libpam-gnome-keyring libstartup-notification1 libtimezonemap11-0vtevte-0 -common libwebkitgtk -1-2.90 libwebkitgtk-9-通用libxklavier3.0 lsof psmisc python-appindicator python-argparse python-libxml0 python-pyicu python-xklavier rd 吃了reiserfsprogs rsync

    我知道該指南可能很乏味,但是如果我能獲得不超過215 MB的現場CD,我希望再次閱讀該指南。

  6.   米格爾 他說:

    很好,非常感謝你

  7.   備註 他說:

    該過程很有趣,但是您要使自己的生活複雜化。

    #apt-get install live-magic
    $現場魔術

    只需單擊幾下,即可獲得實時CD或USB。

  8.   弗蘭克·達維拉 他說:

    感謝您提供的信息,這對任何Linux發行版都有效嗎? 可以將便攜式設備放入該個性化直播中嗎?謝謝。

  9.   里卡多 他說:

    非常棒的信息,我以前已經使用過remastersys,就像發現文章很好並且進行解釋一樣。

    注意:您發布的remastersys下載鏈接被錯誤地鏈接,它應該說 https://blog.desdelinux.net/wp-content/uploads/2013/05/remastersys.zip

    1.    拉夫 他說:

      感謝您提供的信息。我們立即更正了鏈接。

布爾值(true)