Disable tombol download HTML5 video
<video width="600" height="350" controls controlsList="nodownload">
<source data-src="video1.ogg" type="video/mp4">
</video>
Open Source Software in My Daily Life
<video width="600" height="350" controls controlsList="nodownload">
<source data-src="video1.ogg" type="video/mp4">
</video>
# virsh dumpxml <GuestName>
contoh:
# virsh dumpxml Digitos_U22_5
<domain type='kvm'>
<name>Digitos_U22_5</name>
<uuid>0d737f69-3200-440f-8117-8506bacde339</uuid>
<metadata xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0" xmlns:cockpit_machines="https://github.com/cockpit-project/cockpit-machines">
<libosinfo:libosinfo>
<libosinfo:os id="http://ubuntu.com/ubuntu/22.04"/>
</libosinfo:libosinfo>
<cockpit_machines:data>
<cockpit_machines:has_install_phase>false</cockpit_machines:has_install_phase>
<cockpit_machines:install_source_type>file</cockpit_machines:install_source_type>
<cockpit_machines:install_source>/server_images/ubuntu-22.04.3-live-server-amd64.iso</cockpit_machines:install_source>
<cockpit_machines:os_variant>ubuntu22.04</cockpit_machines:os_variant>
</cockpit_machines:data>
</metadata>
<memory unit='KiB'>2097152</memory>
<currentMemory unit='KiB'>2097152</currentMemory>
<vcpu placement='static'>2</vcpu>
<os>
<type arch='x86_64' machine='pc-q35-rhel8.6.0'>hvm</type>
</os>
<features>
<acpi/>
<apic/>
<vmport state='off'/>
</features>
<cpu mode='host-model' check='partial'/>
<clock offset='utc'>
<timer name='rtc' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<pm>
<suspend-to-mem enabled='no'/>
<suspend-to-disk enabled='no'/>
</pm>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='block' device='disk'>
<driver name='qemu' type='raw' cache='none' io='native'/>
<source dev='/dev/vmdiskpool/vmdisk5'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</disk>
...
Terlihat bahwa disk image ada di : /dev/vmdiskpool/vmdisk5
# virt-df -h
Misalnya :
# virt-df -h -a /dev/vmdiskpool/vmdisk5
Filesystem Size Used Available Use%
vmdisk5-100g:/dev/sda2 1.7G 130M 1.5G 8%
vmdisk5-100g:/dev/ubuntu-vg/ubuntu-lv
8.0G 4.2G 3.4G 53%
lvrename /dev/vmdiskpool/vmdisk5 /dev/vmdiskpool/vmdisk5.backup
# lvcreate -L <new-size>G -n <nama-disk> <disk-pool>/dev/vg_guests
contoh:
# lvcreate -L 100G -n vmdisk5 /dev/vmdiskpool
Bagi yang belum terinstall virt-resize, untuk pengguna Ubuntu, Debian dapat memasangnya sbb:
# apt-get install libguestfs-tools
Berikut penggunaannya:
# virt-resize /dev/vmdiskpool/vmdisk5-backup /dev/vmdiskpool/vmdisk5 --resize /dev/sda2=1.8G --expand /dev/sda3 --LV-expand /dev/ubuntu-vg/ubuntu-lv
Output nya kira-kira akan seperti ini:
[ 0.0] Examining /dev/vmdiskpool/vmdisk5-backup
**********
Summary of changes:
/dev/sda1: This partition will be left alone.
/dev/sda2: This partition will be resized from 1.8G to 1.8G. The
filesystem ext4 on /dev/sda2 will be expanded using the ‘resize2fs’
method.
/dev/sda3: This partition will be resized from 8.2G to 98.2G. The LVM PV
on /dev/sda3 will be expanded using the ‘pvresize’ method.
/dev/ubuntu-vg/ubuntu-lv: This logical volume will be expanded to maximum
size. The filesystem ext4 on /dev/ubuntu-vg/ubuntu-lv will be expanded
using the ‘resize2fs’ method.
**********
[ 3.7] Setting up initial partition table on /dev/vmdiskpool/vmdisk5
[ 14.9] Copying /dev/sda1
[ 14.9] Copying /dev/sda2
100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00
[ 18.7] Copying /dev/sda3
100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00
[ 46.2] Expanding /dev/sda2 using the ‘resize2fs’ method
[ 46.3] Expanding /dev/sda3 using the ‘pvresize’ method
[ 46.3] Expanding /dev/ubuntu-vg/ubuntu-lv using the ‘resize2fs’ method
Resize operation completed with no errors. Before deleting the old disk,
carefully check that the resized disk boots and works correctly.
Reference:
Default
# mysqldump --no-create-info --complete-insert --insert-ignore pintar_db > pintar_db-20230824-2208.insert-ignore.data
File backup yang dihasilkan:
mysqldump --no-create-info --replace pintar_db > pintar_db-20230827-1554.replace.data
File backup yang dihasilkan:
Jika Anda akan dumping tabel-tabel t1, t2, dan t3 dari mydb:
mysqldump -u... -p... mydb t1 t2 t3 > mydb_tables.sql
Sebaliknya, Jika Anda akan dumping semua tabel kecuali tabel-tabel t1, t2, dan t3 dari mydb:
DBTODUMP=mydb
SQL="SET group_concat_max_len = 10240;"
SQL="${SQL} SELECT GROUP_CONCAT(table_name separator ' ')"
SQL="${SQL} FROM information_schema.tables WHERE table_schema='${DBTODUMP}'"
SQL="${SQL} AND table_name NOT IN ('t1','t2','t3')"
TBLIST=`mysql -u... -p... -AN -e"${SQL}"`
mysqldump -u... -p... ${DBTODUMP} ${TBLIST} > mydb_tables.sql
Note: Anda dapat mengubah SQL="${SQL} AND table_name NOT IN ('t1','t2','t3')"
to SQL="${SQL} AND table_name NOT LIKE 'foo\_%'"
. Anda juga dapat mengganti kondisi menjadi ‘%foo%’ untuk mendapatkan semua table yang menggandung kosa-kata ‘foo’ dalam nama tabelnya (termasuk didalamnya seperti: ‘food’, ‘fool’, dst).
Cara lain jika Anda akan dumping semua tabel kecuali tabel-tabel t1, t2, dan t3 dari mydb:
mysqldump -uusername -ppassword dbname \
--ignore-table=schema.t1 \
--ignore-table=schema.t2 \
--ignore-table=schema.t3 > mysqldump.sql
File backup yang dihasilkan:
References:
Pengertian role di postgresql
Roles ini berbeda dengan pengertian role di sistem operasi Unix. Disini tidak ada pembedaan antara users dan groups. Roles dapat diubah-ubah, dan lebih flexible. Misalnya role dapat menjadi anggota dari role yang lain. Role juga dapat memiliki objek dan access control terhadap object2 tersebut. Secara default setiap user memiliki role sendiri.
Melihat user yang sudah ada :
postgres=# SELECT rolname FROM pg_roles; rolname ---------- postgres (1 row)
Sebuah role adalah entitas yang dapat memiliki objek database, dan memiliki wewenang terhadap database. Role juga dapat dianggap seperti sebuah “user”, sebuah “group” atau keduanya sekaligus tergantung bagaimana menggunakannya.
Membuat user baru artinya sama dengan membuat role baru :
postgres=# CREATE ROLE admin; CREATE ROLE postgres=# SELECT rolname FROM pg_roles; rolname ---------- postgres admin (2 rows)
Sekarang terlihat sudah ada 2 buah user/role : postgres dan admin.
Memberikan password pada user/role :
postgres=# ALTER ROLE admin WITH PASSWORD 'adminpassword'; ALTER ROLE
Syntax dasar perintah rsync
# rsync options source destination
Beberapa opsi (options) dari perintah rsync yang dapat kita manfaatkan, antara lain
Contoh copy secara lokal server
rsync -zvh contoh.tar.gz /tmp/backups/
Contoh 1 copy ke remote server
rsync -avzh /root/rpmpkgs root@192.168.0.141:/direktoritujuan
Jika file yang akan dicopy berukuran cukup besar, maka apabila proses copy terputus ditengah jalan, jangan khawatir, rsync akan meneruskan atau melanjutkan sisa yang belum tercopy .
Contoh 2 copy ke remote server
rsync -avu --progress /var/www/moodle-data digitos@103.167.113.106:/data/
Perintah ini akan membuat direktori moodle-data di bawah direktori /data pada tempat tujuan copy, sekaligus menyalin seluruh isinya
Contoh 3 copy ke remote server
rsync -avu --progress /var/www/moodle-data/ digitos@103.167.113.106:/data/
Perintah ini tidak akan membuat direktori moodle-data di bawah direktori /data pada tempat tujuan copy, tetapi sekaligus menyalin seluruh isinya direktori moodle-data langsung di dalam direktori /data/
Duplikasi struktur table nya saja tanpa data
CREATE TABLE new_table LIKE original_table;
Perintah di atas akan membuat duplikat struktur table new_table yang sama persis dengan original_table.
Untk menyalin datanya dapat menggunakan perintah sebagai berikut:
INSERT INTO new_table SELECT * FROM original_table;
Reference: https://popsql.com/learn-sql/mysql/how-to-duplicate-a-table-in-mysql
Sebelum dapat melakukan load data secara local ke dalam database, maka perlu memastikan bahwa load infile dalam kondisi aktif
Periksa status local infile
mysql> show global variables like 'local_infile';
Akan memberikan informasi seperti di bawah ini:
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| local_infile | OFF |
+---------------+-------+
1 row in set (0.00 sec)
Untuk mengaktifkan gunakan perintah berikut:
mysql> set global local_infile=true;
Setelah itu silahkan connect ke database dengan parameter local infile
mysql --local_infile=1 -u root -ppassword DB_name
Dan lakukan load data local, seperti:
mysql> load data local infile 'path/file_name.extention' into table table_name;
Misalkan kita memiliki table berikut ini:
mysql> desc temp_user_info_data;
+------------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+------------+------+-----+---------+----------------+
| id | bigint(10) | NO | PRI | NULL | auto_increment |
| userid | bigint(10) | NO | MUL | 0 | |
| fieldid | bigint(10) | NO | | 0 | |
| data | longtext | NO | | NULL | |
| dataformat | tinyint(2) | NO | | 0 | |
+------------+------------+------+-----+---------+----------------+
Catatan: untuk melihat info lebih detail tentang table dan bagaimana table tersebut di buat, Anda dapat menggunakan perintah:
mysql> desc namatable
atau
mysql> show create table namatable;
Kemudian file data kita diletakkan di /root dengan nama file data *.csv: contoh.csv seperti berikut:
5791,23,11
19766,23,11
Lalu lakukan load data:
mysql> load data local infile '/root/contoh.csv' into table temp_user_info_data fields terminated by ',' (userid,fieldid,data);
Query OK, 2 rows affected (0.01 sec)
Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
Jika data Anda memiliki satu baris pertama yang berisi nama kolom, maka berikan ignore 1 lines seperti berikut:
mysql> load data local infile '/root/contoh.csv' into table temp_user_info_data fields terminated by ',' ignore 1 lines (userid,fieldid,data);
Mod_Rewrite memungkinkan Anda membuat URL khusus dan sederhana sesuai kebutuhan.
Tulisan ini akan membahas tentang bagaimana mengaktifkan Mod_Rewrite, Membuat dan Menggunakan halaman .htaccess yang diperlukan, dan menyiapkan penulisan ulang URL.
Before we begin generating the actual URL rewrites, we need to activate the apache mod_rewrite module that controls them.
sudo a2enmod rewrite
Perintah mengaktifkan modul atau—jika sudah diaktifkan, menampilkan kata-kata, “Module rewrite sudah diaktifkan”
Setelah modul diaktifkan, Anda dapat mengatur penulisan ulang URL dengan membuat file .htaccess di direktori situs web Anda.
File .htaccess adalah cara untuk mengonfigurasi detail situs web Anda tanpa perlu mengubah file konfigurasi server. Tanda titik yang meng’awali’ nama file akan membuat file ini tidak tampak secara default di dalam folder.
Selain itu, peletakan file .htaccess juga penting. Konfigurasi dalam file itu akan memengaruhi semua yang ada di direktori dan direktori di bawahnya.
Untuk mengizinkan file .htaccess menimpa konfigurasi situs web standar, kita awali dengan dengan membuka file konfigurasi. Catatan: Anda memerlukan hak sudo untuk langkah ini.
sudo nano /etc/apache2/sites-available/default
Setelah berada di dalam file itu, temukan bagian berikut, dan ubah baris yang mengatakan AllowOverride dari None menjadi All. Bagian tersebut sekarang akan terlihat seperti ini:
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory>
Setelah Anda menyimpan dan keluar dari file itu, restart apache. File .htaccess sekarang akan tersedia untuk semua situs Anda.
sudo service apache2 restart
Refference: Digital Ocean: How To Set Up Mod_Rewrite
Selama bertahun untuk setting nameserver kita cukup mengganti /etc/resolv.conf :
nameserver 8.8.4.4 nameserver 8.8.8.8
selain itu kita dapat merubah di /etc/network/interfaces menjadi
dns-addresses 8.8.4.4, 8.8.8.8
Lalu restart :
sudo systemctl restart networking
atau
sudo /etc/init.d/networking restart
Saat ini versi terbaru ubuntu mulai menggunakan Netplan.
Netplan adalah utilitas baris perintah untuk konfigurasi jaringan pada distribusi Linux tertentu. Netplan menggunakan file deskripsi YAML untuk mengkonfigurasi antarmuka jaringan dan, dari deskripsi tersebut, akan menghasilkan pilihan konfigurasi yang diinginkan untuk alat render (eg. network-manager).
File yang perlu kita setup adalah : /etc/netplan/01-*/yaml.
Sehingga kita perlu meletakkan code seperti berikut di dalamnya:
nameserver: addresses: [8.8.4.4, 8.8.8.8]
Error message containts :
Warning in ./libraries/plugin_interface.lib.php#551
count(): Parameter must be an array or an object that implements Countable
Solution:
You can also fix this by editing the library itself.
Then replace it with “if ($options != null) {”
To search in Nano editor press CTRL and W