Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Tutorial Linux: Remastering Mandriva dengan Tool Draklive

Posted on July 22, 2013

Sebagai orang yang pernah berada didalam project PriOS (http://prios.wordpress.com), naluri untuk menghidupkan kembali OS remastering PCLinuxOS itu memang cukup membara dibenak saya. Sibuk, dan juga ada masalah pada komunitas PCLinuxOS sendiri sehingga muncul saingannya, Unity Linux juga membuat saya tambah gamang.

Sementara OS yang sering dan saya gemari dalam pemakaiannya, Mandriva, terbilang cukup pelik diturunkan ke varian baru. Dari mulai memakai trik yang digunakan MCN Live atau menggunakan core Unity yang masih mandriva-based banget itu. Namun, totalitas belajar harus terus dilestarikan. Putuskan saat itu saya belajar tentang Draklive (sampe sekarang belum mudeng betul).

Sumber belajar tentang tool ini dapat anda temukan di http://wiki.mandriva.com/en/draklive. Walaupun terkesan terlalu ringkas dan tak up-to-date, tapi masih bisa diimplementasikan pada versi Cooker (2011.0) ataupun stable sekarang (2010.1 Spring).

Draklive adalah tool remastering atau mastering berbagai paket produk Mandriva yang resmi dipakai sejak era Mandriva Move berakhir. Tool ini menggantikan keberadaan Mandriva Move tool, mklivecd, linux-live dll.

Filosofi dari Draklive sendiri sederhana, mencoba memberikan sebuah distribusi live yang sangat mendekati produk yang dibuat resmi oleh mandriva. Semua hal yang diperlukan untuk membentuk sistem nyaris mendekati asli itu ditaruh pada bagian initrd script.

Fitur Draklive

  • membuat Live CD,
  • membuat live USB,
  • mudah dites via NFS/Jaringan,
  • menggunakan tool Mandriva Installer untuk menginstalasi ke PC,
  • full write/read ke sistem dengan unionfs,
  • deteksi hardware otomatis dengan harddrake,
  • dan kode struktur yang mudah di oprek.

Kebutuhan/Dependensi
Untuk mampu melanjutkan aksi remastering dengan draklive ini, saya sarankan gunakan Mandriva 2010.1 Spring sebagai host dengan jaringan internet dewa (karena perlu koneksi langsung ke repo terdekat).

Adapun software yang anda butuhkan antara lain dapat anda install dengan mudah via urpmi:

[sourcecode lang=”bash”]urpmi x11-server-xnest squashfs-tools syslinux mkisofs rsync curl mtools[/sourcecode]

Untuk kompresi lebih baik, ganti squashfs-tools dengan squashfs3-tools.

Berikut langkah yang saya pakai dalam remastering Mandriva 2010.1:
1. Install seluruh dependensi dari draklive,
2. Ambil versi terbaru dari segala tool, patch dan konfigurasi dari SVN Mandriva dengan bantuan SVN (install dengan

[code]urpmi svn[/code]

, jika belum ada disistem anda):

[sourcecode language=”bash”]
svn co http://svn.mandriva.com/svn/soft/draklive/trunk draklive
svn co http://svn.mandriva.com/svn/config/One/trunk live-config
[/sourcecode]

3. masuk ke folder live-config

[sourcecode language=”bash”]
cd live-config
[/sourcecode]

4. Edit konfigurasi di config/settings.cfg dengan editor favorit anda. Berikut adalah file konfigurasi yang saya buat.

[sourcecode language=”bash”]
repository=http://kambing.ui.ac.id/mandriva/2010.1 –> repo yang anda pakai
updates_repository=
additional_repository=
arch=i586 –> arsitektur prosesor
desktop=LXDE –> rumpun desktop manager, KDE4, LXDE, GNOME, Moblin atau xfce
media=cdrom –> media target, CDROM atau usb
region=all –> regional locales/bahasa, id atau semua
pack=indonesian –> paket bahasa, bebas, edisi resmi asia-noindia
name=Hidjria –> Nama Linux baru anda
product=one –> biarkan,
version=2010.0-alghazalie –> versi remastering
commercial=1 –> 0 untuk murni Free/Open Source atau 1 untuk menyediakan codec/tool non FOSS
default_user=emka –> nama user default
[/sourcecode]

5. Edit file auto_inst_cfg.pl yang ada didirektori config. Disinilah seni dimana anda dapat membatasi aplikasi apa yang bisa dan tidak bisa diinstall, atau aplikasi yang tersedia langsung secara live.

Contoh dari saya:

[sourcecode language=”perl”]
#!/usr/bin/perl -cw
#
# You should check the syntax of this file before using it in an auto-install.
# You can do this with ‘perl -cw auto_inst.cfg.pl’ or by executing this file
# (note the ‘#!/usr/bin/perl -cw’ on the first line).

my $mandriva_theme =
$ENV{DRAKLIVE_PRODUCT} =~ /flash/i ?
‘Powerpack’ :
‘One’;
my $mandriva_release =
$ENV{DRAKLIVE_PRODUCT} =~ /flash/i ?
‘Flash’ :
‘One’;
my $mandriva_config = lc($mandriva_release);

my @desktops = split(/\|/, $ENV{DRAKLIVE_DESKTOP});
my $has_kde = any { /^KDE/ } @desktops;
my $has_kde4 = member(‘KDE4’, @desktops);
my $has_gnome = member(‘GNOME’, @desktops);
my $has_xfce = member(‘xfce4’, @desktops);
my $has_lxde = member(‘LXDE’, @desktops);
my $has_moblin = member(‘Moblin’, @desktops);

$o = {
‘media’ => [
{
type => ‘media_cfg’,
url => ‘drakx://media’,
selected_names => join(‘,’,
‘Main’,
‘Contrib’,
),
},
if_($ENV{DRAKLIVE_ADDITIONAL_REPOSITORY},
{ type => ‘media’, url => $ENV{DRAKLIVE_ADDITIONAL_REPOSITORY} },
),
],
‘rpmsrate_flags_chosen’ => {
LIVE => 1,
(map { ("CAT_$_" => 1) } (
# office
qw(OFFICE SPELLCHECK PIM ARCHIVING PRINTER),
# multimedia
qw(AUDIO VIDEO GRAPHICS),
# internet
qw(NETWORKING_WWW NETWORKING_MAIL NETWORKING_NEWS COMMUNICATIONS NETWORKING_CHAT),
qw(NETWORKING_FILE_TRANSFER NETWORKING_IRC NETWORKING_INSTANT_MESSAGING NETWORKING_DNS),
# network
qw(NETWORKING_REMOTE_ACCESS NETWORKING_FILE),
qw(NETWORKING_REMOTE_ACCESS_SERVER),
# config
qw(CONFIG),
# console
qw(EDITORS TERMINALS TEXT_TOOLS SHELLS FILE_TOOLS),
# system
qw(SYSTEM MINIMAL_DOCS X ACCESSIBILITY THEMES),
if_($has_kde4, qw(KDE)),
if_($has_gnome, qw(GNOME)),
if_($has_xfce, qw(XFCE)),
if_($has_lxde, qw(LXDE)),
if_($ENV{DRAKLIVE_PRODUCT} =~ /gaming/i, qw(GAMES)),
)),
},
# so that rpmsrate flags are really used
‘compssListLevel’ => 5, # default from install_steps_interactive
‘skipped_packages’ => [
#- do not allow source dkms to be installed
‘dkms’,
‘aspell’,
‘aspell-en’,

if_($ENV{DRAKLIVE_PRODUCT} !~ /guadec/i, ‘gcc’),
"/^mandriva-theme(?!-common|-$mandriva_theme(?:|-screensaver)-)/",
"/^mandriva-release(?!-common|-$mandriva_release)-/",
if_($ENV{DRAKLIVE_ARCH} eq ‘x86_64’,
#- !TYPE"64bit" packages are selected by default for live
#- skip i586 ones if not relevant
‘libqca1-tls’,
),
if_($ENV{DRAKLIVE_PRODUCT} !~ /gaming/i, #- non-DVD products
#- from task-kde Suggests
#- skipping them prevents task-kde from being installed,
#- but its dependencies seems to be pulled correctly
‘kdeaddons’,
‘kdenlive’,
‘kdepim-kpilot’,
‘konversation’,
‘kerry’,
‘kde-i18n-en_GB’, ‘openoffice.org-l10n-en_GB’, ‘mozilla-firefox-en_GB’,
if_($ENV{DRAKLIVE_LANGS} !~ /\bpt\b/ && $ENV{DRAKLIVE_REGION} ne ‘all’,
#- do not install pt translations if only pt_BR is explicitely selected
‘kde-i18n-pt’, ‘kde4-l10n-pt’,
‘mozilla-firefox-pt’,
),
if_($ENV{DRAKLIVE_PRODUCT} !~ /flash/i, ‘task-printing-scanning’),
‘qtradio’, ‘kradio’,
if_(!$has_gnome && !$has_xfce, ‘gnome-media’),
‘system-config-printer’,
#if_(!$has_gnome, ‘system-config-printer’),
‘poppler-data’, ‘tetex’,
‘fglrx-control-center’,
‘/^gimp-help/’,
‘/^openoffice.org-help/’,
‘openoffice.org-base’,
if_(!$has_gnome, ‘yelp’),
‘/^nvidia.*-doc-html/’,
if_($has_kde4, ‘k3b’, ‘totem’, ‘liblm_sensors3’, ‘xpdf-common’, ‘nepomuk-scribo’, ‘htdig’, ‘mirrordir’, ‘acr38u’),
($ENV{DRAKLIVE_PRODUCT} =~ /flash/i
? (‘/openjdk/’, ‘java-1.5.0-gcj’)
: ‘/java/’),
‘asihpi-firmware’, ‘hdsploader’, ‘mixartloader’, ‘pcxhrloader’, ‘usx2yloader’, ‘vxloader’,
‘drakfax’, ‘efax’,
),
if_($ENV{DRAKLIVE_PRODUCT} !~ /gaming/i,
#- from task-kde Suggests
‘kdegames’, ‘kdegames4’,
‘kdetoys’,
),
if_(!$ENV{DRAKLIVE_COMMERCIAL},
‘skype’,
),

#- bluez-pin provide
if_(!$has_kde4, ‘kbluetooth’),

if_(!$has_kde4, ‘compiz-decorator-kde4’), #- provides compiz-decorator
if_(!$has_kde4, ‘pinentry-qt4’), #- qt4 app
‘kdebase-kate’, ‘kdeaddons-kate’, #- development tool
‘/noatun/’, #- prefer amarok
#- FIXME: this broken package should be removed from non-free
‘a320raid’,
‘rxvt’,

if_($ENV{DRAKLIVE_PRODUCT} =~ /guadec/i, ‘rfbdrake’),

if_($has_kde4, ‘gdb’), #- suggested by one of the kde4 base package

#exclude some packages that are too big from the KDE4 One
if_($ENV{DRAKLIVE_PRODUCT} !~ /flash/i,
if_($has_kde4, ‘digikam’),
if_($has_kde4, ‘ufraw-gimp’),
if_($has_kde4, ‘marble-common’),
if_($has_kde4, ‘p7zip’),
if_($has_kde4, ‘mozilla-thunderbird’), #- we have kmail
if_($has_gnome, ‘mozilla-thunderbird’, ‘pan’), #- we have evolution
#’aspell-ro’, # lack of space 🙁 arbitrary choice
# since it’s the biggest dict we have
‘cpqarrayd’,
),

if_($has_gnome, ‘beagle’),
if_($has_moblin, ‘task-3ddesktop-gtk’),
‘/^kernel-server-/’, if_($ENV{DRAKLIVE_ARCH} ne ‘x86_64’, ‘/^kernel-deskop-/’),
],
‘default_packages’ => [
if_($has_kde4, "$mandriva_config-kde4-config"),
if_($has_lxde, "mandriva-lxde-config-$mandriva_release"),
if_($has_xfce, "mandriva-xfce-config-$mandriva_release"),

if_($has_moblin, ‘task-moblin’),

# revisi emka 2010-09-16 14:45
‘busybox’, ‘basesystem-2010.0′,’basesystem-2010.0-2′,’basesystem-minimal’,
‘busybox-static’,
‘chromium-browser’, ‘geany’, ‘filezilla’, ‘pidgin’, ‘kchmviewer’, ‘unrar’, ‘gimp’, ‘vlc’,’squashfs-lzma-kernel-2.6.33.5-desktop-2mnb-3.3′,’lzma-kernel-2.6.33.5-desktop-2mnb’, ‘lzma-kernel-desktop-latest’, ‘mklivecd’, ‘squashfs-tools’, ‘squashfs3-tools’, ‘mozilla-thunderbird’, ‘p7zip’, ‘RealPlayer’, ‘RealPlayer-rpnp’, ‘java-1.6.0-sun’, ‘fonts-ttf-gurmukhi’, ‘cheese’, ‘opera’, ‘locales-id’, ‘clamav’, ‘gnokii-smsd-mysql’, ‘google-apps-installer’,

#- broken updates
if_($has_kde4, ‘kde4-splash-mdv’),

#- live resize/install/copy tools
if_($ENV{DRAKLIVE_MEDIA} eq ‘usb’, ‘draklive-resize’),

if_($ENV{DRAKLIVE_PRODUCT} =~ /gaming/i, ‘task-games’),

#- should be in x11-driver-video (#42909)
‘x11-driver-video-via’,
‘x11-driver-video-psb’,

if_($has_gnome, ‘gnome-shell’),

if_($ENV{DRAKLIVE_PRODUCT} =~ /flash/i,
‘samba-client’,
‘RealPlayer’, ‘RealPlayer-rpnp’,
‘java-1.6.0-sun’,
‘mozilla-firefox-ext-google-toolbar’,
‘filezilla’, #- FIXME: bump to level 5 in rpmsrate?
‘nut-server’,
‘mozilla-thunderbird’,
if_($ENV{DRAKLIVE_REGION} eq ‘all’, map { "mozilla-thunderbird-$_" } qw(ca cs de el es es_AR eu fi fr gu_IN he hu it ja ko nb nl pa_IN pl pt_BR ru sk sl sv tr zh_CN)),
if_($ENV{DRAKLIVE_PRODUCT} =~ /guadec/i,
‘fonts-ttf-gurmukhi’,
‘cheese’,
‘anjuta’,
),
),
],
‘preferred_packages’ => join(‘,’, $has_kde4 ? ‘kdm’ : ‘gdm’),
‘meta_class’ => ‘desktop’,
‘desktop’ => first(@desktops),
if_($ENV{DRAKLIVE_DEFAULT_USER}, ‘autologin’ => $ENV{DRAKLIVE_DEFAULT_USER}),
# explicitely specify the security level, so that environment of the build machine doesn’t take precedence
‘security’ => 1,
‘useSupermount’ => ‘magicdev’,
‘users’ => [
if_($ENV{DRAKLIVE_DEFAULT_USER}, {
‘icon’ => ‘default’,
‘realname’ => ”,
‘uid’ => ”,
‘groups’ => [],
‘name’ => $ENV{DRAKLIVE_DEFAULT_USER},
‘shell’ => ‘/bin/bash’,
‘gid’ => ”
}),
],
‘locale’ => {
‘country’ => ‘US’,
‘IM’ => undef,
‘lang’ => ‘en_US’,
‘langs’ => +{
$ENV{DRAKLIVE_REGION} eq ‘all’ ? (all => 1) : (map { $_ => 1 } split(‘:’, $ENV{DRAKLIVE_LANGS}))
},
‘utf8’ => 1
},
‘authentication’ => {
‘shadow’ => 1,
‘local’ => 1,
‘md5’ => 1
},
‘superuser’ => {
‘pw’ => ”,
‘realname’ => ‘root’,
‘uid’ => ‘0’,
‘shell’ => ‘/bin/bash’,
‘home’ => ‘/root’,
‘gid’ => ‘0’
},
‘keyboard’ => {
‘GRP_TOGGLE’ => ”,
‘KBCHARSET’ => ‘C’,
‘KEYBOARD’ => ‘us’,
‘KEYTABLE’ => ‘us’
},
‘timezone’ => {
‘ntp’ => undef,
‘timezone’ => ‘Asia/Jakarta’,
‘UTC’ => 8
},
‘X’ => { disabled => 1 }, #- disable auto-configuration that may install unwanted packages
‘match_all_hardware’ => 1,
‘excludedocs’ => 0,
‘postInstall’ => join(";",
"perl -pi -e ‘s/^id:3:initdefault:/id:5:initdefault:/’ ‘/etc/inittab’",
#- FIXME: in any::set_autologin, unlink if gdm/kdm conf file and binary exist
if_($has_xfce || $has_lxde, "rm -f /etc/sysconfig/autologin"),
if_($mandriva_theme eq ‘Flash’,
#- set blue gtk theme for Flash in Gnome
"/usr/bin/gconftool-2 –config-source=xml::/etc/gconf/gconf.xml.local-defaults/ –direct –type=string –set /apps/metacity/general/theme ‘Ia Ora Blue’",
"/usr/bin/gconftool-2 –config-source=xml::/etc/gconf/gconf.xml.local-defaults/ –direct –type=string –set /desktop/gnome/interface/gtk_theme ‘Ia Ora Blue’",
#- set blue gtk theme for Flash in GTK
"perl -pi -e ‘s/META_CLASS=.*/META_CLASS=powerpack/’ /etc/sysconfig/system",
"echo MDV_MENU_STYLE=discovery > /etc/sysconfig/menustyle",
if_(!$ENV{DRAKLIVE_COMMERCIAL},
"mkdir -p /usr/share/mdk/desktop/flash",
"cp -a /usr/share/mdk/desktop/one/subscribe.desktop /usr/share/mdk/desktop/flash",
),
),
),
‘autoExitInstall’ => 1,
‘keep_unrequested_dependencies’ => 0,
};

my $old = \&install::pkgs::empty_packages;
undef *install::pkgs::empty_packages;
*install::pkgs::empty_packages = sub {
my $packages = &$old;
$packages->{debug_URPM} = sub { log::l("XXX: $_[0]") };
$packages;
};

[/sourcecode]

Perhatikan baris yang tercetak tebal, disitulah saya melakukan perubahan. Beberapa program yang saya masukkan dalam live sistem ini nanti antara lain: Chromium-browser, Geany, Filezilla, Kchmviewer, unrar, gimp, mozilla-thunderbird, p7zip, RealPlayer, java, Cheese, opera, locales-id, clamav, gnokii.

Sedangkan file yang harus anda masukkan disitu untuk menghindari error antara lain paket busybox, busybox-static, ‘squashfs-lzma-kernel-2.6.33.5-desktop-2mnb-3.3′,’lzma-kernel-2.6.33.5-desktop-2mnb’, ‘lzma-kernel-desktop-latest’, ‘mklivecd’, ‘squashfs-tools’, ‘squashfs3-tools’. Walaupun masih ada module yang belum selesai dikonfigurasi disana, tapi sistem sudah bisa dipakai.

6. jalankan perintah draklive –clean –all untuk melakukan seluruh langkah remastering dan membersihkan data draklive sebelumnya,

[sourcecode language=”bash”]
draklive –clean –all
[/sourcecode]

7. jika sukses anda akan memasuki step “boot” dan kemudian berhenti pada step “loop” karena modul sqfslzma, dan squashfs_lzma belum ada. Tenang, kita akan mengkompresnya secara manual.

8. untuk mengkrompress menjadi file unionfs yang digunakan pada LiveCD/LiveUSB kita gunakan mksquashfs.

[sourcecode language=”bash”]
mksquashfs /var/lib/draklive/chroot/nama-os-versi-paket-anda distrib-lzma.sqfs -comp lzma
[/sourcecode]

Proses kompresi file sistem ini terbilang lama, tergantung seberapa cepat prosesor/memori anda. Saya cuma butuh 30menit lebih sedikit. Jika selesai, file distrib-lzma.sqfs inilah yang bisa kita masukkan ke LiveCD/LiveUSB.

Untuk tutorial memakai file distrib-lzma.sqfs dengan model LiveUSB, anda bisa ikuti tutorial sebelumnya (https://emka.web.id//linux/mandriva/2010/how-to-make-mandriva-2010-1-spring-liveusb/) dengan mengkopi file distrib-lzma.sqfs buatan kita ke direktori loopbacks live USB.

Selamat mencoba. Email atau diskusikan disini, silakan….

Terbaru

  • Mau Gaji Dolar? Gini Caranya Tembus Kerja di Australia, Jangan Sampai Salah Visa!
  • Belum Tahu? Inilah Fakta MigoReels, Katanya Nonton Drama Bisa Dapat Rp700 Ribu!
  • Apa Itu Event Invite Friends CapCut? Ini Pengertian dan Cara Kerjanya Biar Cuan
  • Apa Itu MJ di FF? Ini Pengertian, Asal-Usul, dan Risiko di Balik Istilah Tersebut
  • Apa Itu Pengertian Penonaktifan SPayLater? Ini Durasi Blokir Akibat Telat Bayar
  • Apa Itu Rasio Gambar Ukuran 1:1 di Canva? Ini Pengertian dan Cara Buatnya
  • Pengiriman Shopee Express Hemat itu Berapa Lama? Ini Pengertian dan Estimasi Sampainya
  • Android 2025: Aplikasi Baru dan Smartphone Impian yang Akan Datang!
  • Apa Itu Google AI Pro Ultra? Ini Pengertian dan Penjelasan Lengkapnya
  • Apa Itu Error Gagal Kirim Nilai RDM 3.1? Ini Pengertian dan Solusi Mengatasinya
  • Facebook Mulai Batasi Link Eksternal Cuma 2 Sebulan! Ini Trik Mengatasinya
  • Cara Nonton Tensura Season 4! Bakal Tayang April 2026 dengan Format 5 Cour
  • Belum Tahu? Inilah Trik Supaya Live TikTok Kalian Aman dan Banjir Cuan
  • Pixel 8 Dapatkan Mode Panorama Baru! Hasil Foto Lebih Luas & Lebih Kreatif
  • Apa Itu AppLocker? Ini Pengertian dan Cara Mengamankan Windows 11 Kalian dari Skrip Jahat
  • Cara Membuat Riwayat Copilot Kamu Tetap Bersih dan Rapi!
  • Game & Aplikasi Android Terbaik Saat Diskon Liburan Natal! Jangan Ketinggalan!
  • Apa Itu Game Prison Escape Journey? Ini Pengertian dan Cara Mainnya untuk Pemula
  • “Listrik Gratis” dari Solar Panel Cuma Mitos?! Ini Sisi Gelap PLTS
  • Samsung Galaxy Z-Fold: Uji Jatuh Bebas yang Mengguncang Keandalan Lipatannya
  • Google One 2026: Apa yang Akan Jadi Fitur Utama dan Harga yang Diharapkan?
  • Apa Itu Error 0x800704f8? Ini Pengertian dan Cara Mengatasinya
  • Android Akhirnya Dapat GPS Darurat di India! Setelah Hampir 10 Tahun
  • Apa Itu GetContact Premium? Ini Pengertian dan Cara Daftarnya
  • Android Maze Figure: Koleksi Baru Google yang Bikin Penggemar Bergairah!
  • Google Update Besar-besaran Desember 2025: Apa yang Akan Memengaruhi Pengalaman Anda?
  • Masih Pusing Hitung Gaji Manual? Waktunya Pakai Aplikasi HR
  • Apa Itu Dustruco? Ini Pengertian dan Cara Pasangnya di HP Kalian
  • Apa Itu Aplikasi Dooie Live? Ini Pengertian dan Cara Pakai Aplikasinya untuk Cari Jodoh
  • Apa Itu Battle Emote Jefri Nichol dan Om Telolet Om di MLBB? Ini Penjelasannya
  • Apa itu Cosmic Desktop: Pengertian dan Cara Pasangnya di Ubuntu 26.04?
  • Apa Itu Auvidea X242? Pengertian Carrier Board Jetson T5000 dengan Dual 10Gbe
  • Elementary OS 8.1 Resmi Rilis: Kini Pakai Wayland Secara Standar!
  • Apa Itu Raspberry Pi Imager? Pengertian dan Pembaruan Versi 2.0.3 yang Wajib Kalian Tahu
  • Performa Maksimal! Ini Cara Manual Update Ubuntu ke Linux Kernel 6.18 LTS
  • Begini Cara Menjalankan Notebook Machine Learning di Databricks, Gratis dan Tanpa Ribet!
  • Apa Itu PeakAI? Ini Pengertian dan Cara Menghasilkan Uang dari Kolaborasi TikTok
  • Inilah Cara Ubah Rutinitas Browsing Lebih Produktif dengan Perplexity Comet (AI Browser)
  • Inilah Cara Kuasai Materi Sulit dalam Hitungan Menit Pakai Google NotebookLM: Tutorial Lengkap
  • Inilah Cara Membuat AI Agent Cerdas dan Memantaunya Menggunakan LangGraph dan LangSmith
  • Apa Itu Raccoon0365? Ini Pengertian dan Bahaya Platform Phishing Microsoft
  • Apa Itu Raccoon Framework? Ini Pengertian dan Asal Usulnya
  • Apa Itu Serangan Phishing OAuth di Microsoft 365? Ini Definisi dan Cara Kerjanya
  • Apa Itu Distribusi Malware Via YouTube? Ini Pengertian dan Bahayanya Buat Kalian
  • Apa Itu Undang-Undang NDAA? Ini Pengertian dan Dampaknya Bagi Cyber Command Amerika Serikat
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV

©2025 emka.web.id | Design: Newspaperly WordPress Theme