Background
Basically, you can build a DLNA server just using Raspberry Pi and external hard drive which contains your multimedia contents (movies, music, and pictures). Just plug the external hard drive to the Pi’s USB port, and you can just use Raspbmc OS or install other package which support DLNA server like minidlna.
Tampilkan postingan dengan label Unix. Tampilkan semua postingan
Tampilkan postingan dengan label Unix. Tampilkan semua postingan
Selasa, Desember 02, 2014
Minggu, Oktober 19, 2014
Raspcontrol: Aplikasi monitoring Raspberry Pi berbasis Web
Seperti yang diketahui, Raspberry Pi tidak memiliki tombol untuk restart ataupun switch untuk menyalakan atau mematikan perangkatnya. Solusi untuk melakukan tersebut ya tinggal cabut kabel power yang terhubung ke perangkat ini. Berdasarkan informasi yang aku dapatkan, mematikan/me-restart Raspberry Pi dengan menggunakan cara tersebut tidak aman karena dapat membuat SD Card yang digunakan menjadi corrupt dan ada potensi data-data yang dimiliki bisa hilang. Cara paling aman adalah dengan mematikan perangkat melalui GUI OS yang telah di-install pada perangkat ataupun melalui perintah shutdown ataupun halt yang dijalankan pada terminal baru kemudian cabut kabelnya. Permasalahannya, Raspberry Pi yang aku gunakan jarang sekali aku hubungkan dengan monitor (headless Raspberry Pi). Dalam artian Raspberry Pi tersebut aku seting menjadi sebuah server yang bisa diakses melalui protokol SSH. Memang pada dasarnya aku bisa mematikan atau me-restart Raspberry Pi melalui SSH, namun menurutku cara ini kurang praktis. Ekspektasiku adalah aku bisa mematikan dan me-restart Raspberry Pi melalui akses Web, yang menurutku lebih user friendly.
Selasa, Agustus 26, 2014
How to Recover Seagate Central Data
Few weeks ago I purchased Seagate Central 4TB. My first intention was to store my movie collection so I can watch it wirelessly on my iOS devices and AppleTV. Since my movie collection only consume around 800GB of space, it still has a lot of room to store anything. So I decided to move all of my data from my conventional hard disk to Seagate Central.
It worked perfectly, until several days ago I can not locate this device on my Mac. I just realize that the led indicator kept blinking all the time. On my router, the led indicator for the device is turned off. So it means, the device was not connected to my local network.
It worked perfectly, until several days ago I can not locate this device on my Mac. I just realize that the led indicator kept blinking all the time. On my router, the led indicator for the device is turned off. So it means, the device was not connected to my local network.
Jumat, Desember 03, 2010
How to replace newline "\n" on Unix shell
I want to replace all new line characters on a file using Unix shell. Just found it is quite difficult to do it using sed command because sed operates line by line and never sees the newline endings. Yeah, instead of sed command, tr command is a solution for this.
Let say I want to replace '\n' character on file named sample.log with ' ' (space) character. Instead of using
sed -i 's/\n/ /g'
command which is failed, I use
cat sample.log | tr '\n' ' ' > sample.output
command. The result will be stored in sample.output file.
Let say I want to replace '\n' character on file named sample.log with ' ' (space) character. Instead of using
sed -i 's/\n/ /g'
command which is failed, I use
cat sample.log | tr '\n' ' ' > sample.output
command. The result will be stored in sample.output file.
Sabtu, November 06, 2010
Me-reset Password Windows
Berawal dari PC lama yang dikira sudah rusak ternyata masih bisa digunakan, dan ternyata baru sadar kalau aku lupa password untuk login ke Windows nya. Setelah googling sana sini mencari alternatif untuk menemukan solusi yang tepat, akhirnya aku temukan juga cara yang mudah. Beberapa tools seperti Ophcrack membutuhkan bandwidth yang cukup besar untuk diunduh. Sayang aja nih ngabisin quota internet rumah hanya untuk mengunduh tools seperti ini. Tools yang digunakan pada artikel ini hanya berukuran sekitar 3 MB, sangat kecil dan praktis untuk diunduh. Dalam artikel ini, aku menggunakan VirtualBox agar lebih mudah untuk melakukan screen capture pada setiap langkahnya
Berikut adalah langkah-langkah untuk me-reset password Windows (Sudah dicoba untuk Windows 7 dan Windows XP).
Berikut adalah langkah-langkah untuk me-reset password Windows (Sudah dicoba untuk Windows 7 dan Windows XP).
- Download tools yang berisi file cd080802.zip dari tautan dibawah ini: http://pogostick.net/~pnh/ntpasswd/cd080802.zip
- Burn ISO tersebut ke dalam CD, atau jika merasa sayang dengan ukurannya yang hanya 3 MB, bisa diinstall ke USB Disk. Buka file ISO dengan Virtual Drive (Salah satu tools Virtual Drive yang gratis adalah MagicISO) dan salin semua file yang ada pada ISO tersebut ke USB Disk. Untuk membuat USB Disk nya menjadi bootable, masuk ke dalam Command Prompt (Pastikan anda adalah Administrator. Jika anda menggunakan Windows 7, Cari aplikasi Command Prompt -> Klik kanan -> Run As Administrator).
- Boot PC atau laptop menggunakan CD atau USB Disk yang telah dibuat pada langkah ke-2.
- Selanjutnya akan muncul tampilan seperti berikut:
- Pilih partisi yang akan di-reset password Windows nya.
- Tools ini akan menanyakan lokasi registry pada partisi yang dipilih. Tekan Enter untuk melanjutkan.
- Pilih 1, untuk me-reset password Windows.
- Pilih 1 lagi untuk melanjutkan proses reset.
- Selanjutnya tools akan menampilkan daftar user yang ada pada partisi yang telah dipilih sebelumnya. Pilih user yang akan di-reset passwordnya. (Secara default, tools akan memilih Administrator). Dalam contoh ini aku ingin me-reset user 'Amphie Smiley' dengan kode 0x03eb. Untuk singkatnya ketik kode RID (misal kode RID untuk Amphie Smiley adalah 0x03eb)
- Ketik 1 untuk me-reset password untuk user yang telah dipilih.
- Nah sekarang password sudah di-reset (di set menjadi blank). Tekan ! Untuk keluar dari menu. Dilanjutkan dengan menekan q dan y untuk menyimpan perubahan.
- Reset PC atau laptop anda dengan menekan Ctrl+Alt+Del. Setelah tampilan login Windows dan memilih user yang telah di-reset passwordnya, anda tidak perlu memasukkan password lagi. Selamat mencoba!!
Dengan asumsi USB Disk anda memiliki drive letter X:, ketikkan perintah
X: -> Pindah drive ke X
syslinux -ma X: -> Membuat drive USB Drive X menjadi bootable
Jumat, Oktober 29, 2010
Memindahkan direktori data MySQL pada Ubuntu
Secara default, data MySQL pada Ubuntu terletak pada direktori /var/lib/mysql. Direktori ini berisi semua database mysql termasuk tabel-tabel yang ada di dalamnya. Jika sisa ruang pada partisi /var penuh, tentunya akan mengganggu operasional MySQL ini. Langkah-langkah berikut ini akan menjelaskan bagaimana caranya memindahkan data tersebut ke direktori lain. Semua langkah dibawah akan dijalankan melalui terminal dan menggunakan priveledge root.
Note: Versi Ubuntu yang digunakan adalah 10.10 dengan versi MySQL 5.1.49-1ubuntu8
- Mematikan service Mysql user@ubuntu# sudo /etc/init.d/mysql stop
- Buat direktori tujuan. Dalam contoh ini akan menggunakan /ext/mysql user@ubuntu# sudo mkdir /ext/mysql
- Salin semua isi file pada /var/lib/mysql ke /ext/mysql user@ubuntu# sudo cp -R /var/lib/mysql /* /ext/mysql
- Set ownership dari /ext/mysql user@ubuntu# sudo chown -R mysql:mysql /ext/mysql
- Ubah konfigurasi Mysql pada /etc/mysql/my.cnf user@ubuntu# sudo vi /etc/mysq/my.cnf
- Pada Ubuntu, ada service yang bernama AppArmor. Service ini berfungsi sebagai aplikasi keamanan untuk membatasi akses aplikasi pada area tertentu. Pada kasus ini aplikasi MySql dibatasi aksesnya ke direktori-direktori yang sudah ditentukan. Konfigurasi AppArmor untuk MySQL bisa dilihat di /etc/apparmor.d/usr.sbin.mysqld
- Restart service AppArmor user@ubuntu# sudo /etc/init.d/apparmor restart
- Jalankan service MySql
atau
user@ubuntu# service mysql stop
Cari variable datadir. Variabel ini sebelumnya berisi /var/lib/mysql. Ganti nilai variabel datadir dengan /ext/mysql
datadir = /ext/mysql
Buka file /etc/apparmor.d/usr.sbin.mysqld
user@ubuntu# sudo vi /etc/apparmor.d/usr.sbin.mysqld
Ubah semua nilai /var/lib/mysql menjadi /ext/mysql.
/ext/mysql/ r,
/ext/mysql/** rwk,
Konfigurasi diatas memberikan akses aplikasi MySql untuk membaca direktori /ext/mysql dan memberikan akses baca, tulis, dan lock ke semua file yang berada di direktori tersebut.
atau
user@ubuntu# sudo service apparmor restart
user@ubuntu# sudo /etc/init.d/mysql start
atau
user@ubuntu# service mysql start
Note: Versi Ubuntu yang digunakan adalah 10.10 dengan versi MySQL 5.1.49-1ubuntu8
Jumat, November 27, 2009
Format Partisi di Linux
Karena sudah terbiasa meformat hard disk menggunakan aplikasi GUI di Ubuntu, jadinya nggak pernah ngutak-ngatik gimana caranya memformat menggunakan shell. Dalam kasus kali ini, aku ingin memformat hard disk dengan menggunakan file system ext4 dan memasangnya di PC yang menggunakan Ubuntu Server yang nggak ada Desktop nya alias versi text. Setelah melakukan pencarian di Google (ternyata banyak artikel yang aku temukan tidak berkaitan dengan apa yang aku cari), akhirnya aku menemukan artikel yang cukup relevan. Ternyata hanya diperlukan dua perintah saja: fdisk, dan mkfs.ext4.
Berikut langkah-langkahnya:
Berikut langkah-langkahnya:
- Membuat partisi baru dengan fdisk Dalam kasus ini, hard disk yang aku pasang dikenali sebagai /dev/sdb, dan aku hanya ingin membuat satu partisi saja. Perintahnya adalah sebagai berikut (pastikan menjalankan fdisk dalam priveledge root):
- Format partisi yang sudah dibuat dengan menggunakan perintah mkfs.ext4 (untuk file system ext3 atau ext2 bisa menggunakan perintah mkfs.ext3 dan mkfs.ext2) Partisi yang sudah dibuat sebelumnya, dalam contoh ini dikenali sebagai /dev/sdb1.
- Melakukan mount partisi yang telah dibuat ke dalam sistem Partisi baru yang telah siap digunakan. Untuk melakukan mount ke dalam sistem, bisa dilakukan secara manual atau menambahkan entry baru di /etc/fstab agar bisa di-mount secara otomatis setelah boot up.
root@liley-II# fdisk /dev/sdb
The number of cylinders for this disk is set to 38166.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-38166, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-38166, default 38166):
Using default value 38166
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 83
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
Perintah yang dijalankan adalah seperti berikut:
root@liley-II# mkfs.ext4 /dev/sdb1
mke2fs 1.41.9 (22-Aug-2009)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
2444624 inodes, 9770492 blocks
488524 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
299 block groups
32768 blocks per group, 32768 fragments per group
8176 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 33 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
Dalam contoh ini, aku akan melakukan mount partisi ke direktori /ext (pastikan bahwa direktori /ext telah dibuat).
Untuk melakukan mount secara manual, jalankan perintah berikut:
root@liley-II# mount -t ext4 /dev/sdb1 /ext
Atau bisa juga dengan menambahkan entry di /etc/fstab agar bisa di-mount secara otomatis. Dalam kasus ini, /etc/fstab yang aku miliki berisi:
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
#
proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=2a927340-4561-419a-809a-e48b4925d093 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=bc428fbf-8cbe-4fc6-ba6d-d4d7ec3bb4a1 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
/dev/sdb1 /ext ext4 defaults 0 1
Minggu, September 13, 2009
SSH Tanpa Password
Tulisan ini mungkin sudah masuk kategori ketinggalan jaman banget, secara protokol SSH sudah digunakan dari jaman dulu kala. Namun tak ada salahnya juga sih, siapa tahu ada sebagian orang yang belum mengetahui tekniknya.
Secara konvensional jika seseorang melakukan login menggunakan protokol SSH ke suatu server, akan muncul prompt password. Prompt password ini mungkin akan dirasa cukup merepotkan jika orang tersebut adalah admin yang menangani mesin server yang lumayan banyak. Terlebih lagi jika password dari masing-masing username pada masing-masing mesin tersebut berbeda-beda dan susah untuk diingat.
Dengan menggunakan public/private key, maka memungkinkan untuk login menggunakan protokol SSH tanpa perlu memasukkan password. Agar lebih aman, private key yang dimiliki dapat diatur apakah memiliki passphrase atau tidak. Jika passphrase dikosongkan, maka tidak perlu memasukkan password lagi ketika melakukan login. Jika mekanisme ini diaplikasikan pada kasus diatas, maka admin tidak perlu lagi memasukkan password atau hanya perlu memasukkan passphrase yang sama ketika login ke semua mesin server yang ditangani oleh admin tersebut.
Berikut ini adalah langkah-langkahnya:
Pada proses diatas akan muncul prompt password untuk user username pada mesin targetserver. Masukkan password yang sesuai dan selanjutnya akan muncul keterangan bahwa public key telah ditambahkan kedalam target server.
Sekarang setiap kali login ke mesin server tujuan dengan username yang telah ditentukan, tidak akan muncul prompt password. Login menggunakan protokol SSH tanpa password sudah bisa dilakukan.
Notes tambahan:
- Masing-masing user dapat membuat pasangan public/private keynya sendiri, dan satu private key hanya digunakan oleh satu user. Sementara public key dapat ditambahkan ke user-user lain pada mesin-mesin yang lain. Cara diatas hanya berlaku untuk user tententu pada mesin server tujuan. Untuk memungkinkan akses SSH tanpa password ke user lain di mesin yang sama atau di mesin yang lain, dapat menggunakan perintah ssh-copy-id.
Secara konvensional jika seseorang melakukan login menggunakan protokol SSH ke suatu server, akan muncul prompt password. Prompt password ini mungkin akan dirasa cukup merepotkan jika orang tersebut adalah admin yang menangani mesin server yang lumayan banyak. Terlebih lagi jika password dari masing-masing username pada masing-masing mesin tersebut berbeda-beda dan susah untuk diingat.
Dengan menggunakan public/private key, maka memungkinkan untuk login menggunakan protokol SSH tanpa perlu memasukkan password. Agar lebih aman, private key yang dimiliki dapat diatur apakah memiliki passphrase atau tidak. Jika passphrase dikosongkan, maka tidak perlu memasukkan password lagi ketika melakukan login. Jika mekanisme ini diaplikasikan pada kasus diatas, maka admin tidak perlu lagi memasukkan password atau hanya perlu memasukkan passphrase yang sama ketika login ke semua mesin server yang ditangani oleh admin tersebut.
Berikut ini adalah langkah-langkahnya:
- Login ke client yang akan digunakan untuk login ke mesin server
- Membuat pasangan public/private key yang akan digenerate secara random menggunakan perintah ssh-keygen -t dsa atau ssh-keygen -t rsa tergantung tipe key yang akan digenerate apakah menggunakan protokol RSA atau DSA. Dari info yang aku peroleh, protokol DSA lebih aman. Output dari perintah diatas jika menggunakan perintah ssh-keygen -t dsa akan kira-kira akan seperti berikut:
- Login ke server tujuan dan salin isi public key yang telah digenerate sebelumnya ke dalam file authorized_keys yang ada di folder .ssh pada home directory. Untuk lebih mudahnya dapat dilakukan perintah berikut untuk memudahkan proses penyalinan:
$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/test/.ssh/id_dsa):
Created directory '/home/test/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/test/.ssh/id_dsa.
Your public key has been saved in /home/test/.ssh/id_dsa.pub.
The key fingerprint is:
78:2d:16:3a:72:48:ea:c9:49:2b:2e:86:99:27:b6:b9 test@anwyn
The key's randomart image is:
+--[ DSA 1024]----+
| |
| |
| . . |
| o . o o |
| o o = S . |
| + + o + . |
|oo* |
|B+o |
|+Eo |
+-----------------+
Masukkan nama file untuk menyimpan private key atau kosongkan untuk menyimpannya ke dalam file default (biasanya di $HOME/.ssh/id_dsa). Kosongkan passphrase yang diminta agar tidak muncul prompt ketika sudah digunakan nantinya.
Public key secara default akan disimpan dengan nama id_dsa.pub dan disimpan di folder .ssh pada home directory.
Pada proses diatas akan muncul prompt password untuk user username pada mesin targetserver. Masukkan password yang sesuai dan selanjutnya akan muncul keterangan bahwa public key telah ditambahkan kedalam target server.
Sekarang setiap kali login ke mesin server tujuan dengan username yang telah ditentukan, tidak akan muncul prompt password. Login menggunakan protokol SSH tanpa password sudah bisa dilakukan.
Notes tambahan:
- Masing-masing user dapat membuat pasangan public/private keynya sendiri, dan satu private key hanya digunakan oleh satu user. Sementara public key dapat ditambahkan ke user-user lain pada mesin-mesin yang lain. Cara diatas hanya berlaku untuk user tententu pada mesin server tujuan. Untuk memungkinkan akses SSH tanpa password ke user lain di mesin yang sama atau di mesin yang lain, dapat menggunakan perintah ssh-copy-id.
Langganan:
Postingan (Atom)








