Sunday, August 10, 2025

Debian 13: trixie release


NOTE: 

  1. Debian 13 trixie does not support i386 architecture. Users running i386 systems should not upgrade to trixie.  You can run 32 bit application on Debian 13 trixie using 32 bit support. 
  2. Debian 12 bookworm does not cover any i586 processor, minimum processor requirement is i686
  3. Debian 11 bullseye is latest version support i386

Debian 13 trixie release uses Linux kernel 6.12 LTS series.

Debian 13 trixie ships with several desktop environments, such as:

  1. GNOME 48
  2. KDE Plasma 6.3
  3. LXDE 13
  4. LXQt 2.1.0
  5. Xfce 4.20

A total of seven architectures are officially supported for trixie:

  1. 64-bit PC (amd64),
  2. 64-bit ARM (arm64),
  3. ARM EABI (armel),
  4. ARMv7 (EABI hard-float ABI, armhf),
  5. 64-bit little-endian PowerPC (ppc64el),
  6. 64-bit little-endian RISC-V (riscv64),
  7. IBM System z (s390x)

Reference: www.debian.org/News/2025/20250809

Saturday, August 9, 2025

Unix like OS not base on linux

Linux is a very popular open-source Unix-like operating system. Open-source Unix-like operating systems that are not based on Linux and are still actively developed. They are

  1. FreeBSD
    Focus: Performance, advanced networking, storage
    Use Cases: Servers, firewalls, storage appliances (e.g., TrueNAS)
  2. OpenBSD
    Focus: Security, correctness, simplicity
    Known for: Secure-by-default policies, clean codebase
  3. NetBSD
    Focus: Portability — runs on almost any architecture
    Use Cases: Embedded systems, research, legacy hardware
  4. DragonFly BSD
    Focus: Performance, advanced file system (HAMMER2), scalability
  5. illumos
    Descendant of: OpenSolaris (which was derived from UNIX System V)
  6. OpenIndiana
    Goal: Desktop/server OS based on illumos
  7. SmartOS
    Focus: Cloud-native virtualization with zones, ZFS, DTrace
  8. MidnightBSD
    Fork of FreeBSD, focused on desktop use
  9. Darwin
    Apple's open-source core of macOS (not a complete OS itself)
    Basis for macOS and iOS

Most those operating system are intended to run as server connected directly to internet with advance stability and security. 

Tuesday, August 5, 2025

Netbeans: using maven to connect to mariadb

  1. Create project "Java with Maven" -> "Java Application"
  2. Under tab "Project" -> Project Files, edit pom.xml and add mariadb jconnect client
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    ...
      <dependencies>
    ...
      <dependency>
        <groupId>org.mariadb.jdbc</groupId>
        <artifactId>mariadb-java-client</artifactId>
        <version>3.5.3</version>
        </dependency>
      </dependencies>
    ...
    </project>
  3. Test connection using this code
      public static void main(String[] args) throws SQLException, ClassNotFoundException {
        // TODO Auto-generated method stub
        String muser = "my_user";
        String mpass = "my_password";
        String murl = "jdbc:mariadb://localhost:3306/my_database_name";
        Class.forName("org.mariadb.jdbc.Driver");
        Connection connection = DriverManager.getConnection(murl, muser, mpass);
        System.out.println("ok");
      }

Thursday, July 24, 2025

Mengenal fitting/socket lampu mobil & motor

Socket/fitting lampu mobil "H": 

  1. H1: lampu utama, kaki 3 
  2. H3: lampu kabut, kaki 2
  3. H4: lampu utama, kaki 3 
  4. H7: lampu halogen, kaki 2
  5. H11: lampu kabut, kaki 2
  6. H16: lampu kabut, kaki 2 
  7. 9005 (HB3) & 9006 (HB4): lampu halogen, kaki 2 
  8. H13 (9008): lampu utama, kaki ?
  9. HIR1 (9011) dan HIR2 (9012): perbaikan design 9005 (HB3) & 9006 (HB4)

Socket/fitting lampu mobi putar / bayonet:

  1. S25 (Single Contact / Double Contact)
  2. P21W, PY21W, P21/5W
    1. P21W (BA15S): Bohlam 21 watt dengan soket S25 single contact, sering untuk lampu sein atau mundur.
    2. PY21W (BAU15S): Mirip dengan P21W, tapi pin penguncinya tidak sejajar (offset), biasanya untuk lampu sein berwarna oranye.
    3. P21/5W (BAY15D): Bohlam 21/5 watt dengan soket S25 double contact, sangat umum untuk lampu rem/senja. 

Socket/fitting lampu motor "H": 

  1. M4/H6: lampu utama, kaki 2 
  2. HS1: lampu utama kaki 3
  3. H4: lampu utama kaki 3
  4. H7: lampu halogen kaki 2

Socket/fitting lampu motor putar / bayonet: 

  1. P21/5W double contact
  2. P21 single contact 

Socket/fitting lampu mobil & motor T (tancap):

  1. T10: kaki 2 dan 3
  2. T15: kaki 2
  3. T20: kaki 2 dan 3 

 Standar lampu https://dedetoknotes.blogspot.com/2023/02/standar-daya-lampu-mobil.html 

Thursday, July 17, 2025

Debian 12: KVM Virtualization - creating guest (part 3)

To show available os for guest

$ virt-install --osinfo list | grep arch
archlinux

To use bridge add /etc/qemu/bridge.conf if not available and chmod file /usr/lib/qemu/qemu-bridge-helper
# mkdir /etc/qemu
# touch /etc/qemu/bridge.conf
# echo "allow br0" >> /etc/qemu/bridge.conf
# chmod u+s /usr/lib/qemu/qemu-bridge-helper

To create guest with name=guest01, disk size 10GB, Ram 2Gb (2048), virtual processor 2, os variant debian 12 (not available, we use debian11), boot from iso file: 

$ virt-install \
  --name guest01 \
  --memory 2048 \
  --vcpus 2 \
  --disk path=/home/dedetok/guests/guest01.qcoe2,size=10,bus=virtio \
  --cdrom /home/dedetok/Downloads/debian-12.11.0-amd64-netinst.iso \
  --nonetworks \
  --os-variant debian11 \
  --virt-type kvm

Parameters:

  • --name: name to identify guest
  • --ram: guest memory in megabytes
  • --vcpus: number of cpu for guest
  • --disk: path=<path_to_disk_image>,size=<disk_size_in_gb>,bus=virtio
    virtio is standard interface for virtual machines, it improve vm network performance
  • --cdrom: install from iso file or CD/DVD/USB
  • --nonetworks: no update or install from internet 
    or
    --network bridge=br0,model=virtio to use bridge network, see part 2
    For bridge see Network Bridge section

Options:

  1. Graphics option
    • --graphics vnc: Enables VNC for graphical access. If virt-viewer is installed, it will automatically launch. If not, you'll need to manually connect using a VNC client like vinagre or remmina.
    • --graphics spice: Enables SPICE for graphical access. SPICE is generally considered more modern and efficient than VNC.
    • --graphics none: Disables graphical access and forces a text-mode installation using the serial console.
  2. Disk option
    • Default folder for virtual disk /var/lib/libvirt/images/
      qcow2 offers features that raw (or img) doesn't:
      1. Snapshots: qcow2 allows you to create snapshots of your virtual machine's disk, enabling easy rollback to previous states.
      2. Compression: It can compress the disk image, potentially saving storage space.
      3. Sparse files: qcow2 supports sparse files, meaning it only allocates disk space for used portions of the image, which can be more efficient.
    • raw format (or just img when using virt-install) has no special features:
      It simply represents the raw data of the disk, which can be less flexible and potentially wasteful of disk space.

To show version
$ virsh version
Compiled against library: libvirt 9.0.0
Using library: libvirt 9.0.0
Using API: QEMU 9.0.0
Running hypervisor: QEMU 7.2.17

Managing VM

To List guest cm
$ virsh list --all

Connect to vm
$ virsh console [vm_name]
or using virt-viewer
$ virt-viewer [vm_name]

To edit vm
$ virsh edit [vm_name]

To start vm
$ virsh start [vm_name]

to restart vm
$ virsh reboot [vm_name] --mode initctl

to force stoping vm
$ virsh destroy [vm_name]

to force shutdown vm
$ virsh shutdown [vm_name] --mode acpi

to suspend vm
$ virsh suspend [vm_name]

to resume vm after suspend
$ virsh resume [vm_name]

to reset vm (similiar to pressing reset button on physical PC)
$ virsh reset [vm_name]

Restarting KVM Daemon
# systemctl restart libvirtd

to remove vm and its storage permanently
$ virsh undefine --managed-save --remove-all-storage [vm_name]

To make vm auto run after host restart (run once)
$ virsh autostart [vm_name]

Network bridge

Network configuration file:

  1. /etc/libvirt/qemu/networks/default.xmlfir active configuration
  2. /usr/share/libvirt/networks/default.xml for template

To enable network bridge for guest:

  1. turn up bridge interface
  2. list all network using virsh net-list
  3. if list is empty, define default network and edit default network to use existing bridge
  4. start network bridge

To turn up bridge interface
# ifup br0

To show bridge interface
# brctl show
bridge name    bridge id        STP enabled    interfaces
br0        8000.9aa237b1bcc8    no        enp2s0

To show network bridge (if list empty, see define default network)
$ virsh net-list --all

To define default network
$ virsh net-define /usr/share/libvirt/networks/default.xml

To undefined default network
$ virsh net-undefine default

To edit default network
$ virsh net-edit default

Change default network using edit default netowrk
<network>
  <name>default</name>
  <uuid>84b29e1f-b2c3-4230-bc21-fba0143c026c</uuid>
  <forward mode='bridge'/>
  <bridge name='br0'/>
</network>

To start network bridge
$ virsh net-start default

To auto start network bridge
$ virsh net-autostart default

To add manually bridge network into vm edit vm and add
<domain type='kvm'>
...
 <devices>
    <interface type='bridge'>
      <mac address='52:54:00:87:65:f6'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
...

References:

  • wiki.debian.org/KVM
  • wiki.debian.org/DebianInstaller/Preseed
  • wiki.debian.org/BridgeNetworkConnections