Aktiviti memindahkan folder dan fail antara peranti adalah lama dan memenatkan. Kaedah biasa kebanyakan orang sudah tentulah dengan menyalin ke cakera keras luaran terlebih dahulu. Selain itu, mungkin ada yang kongsikan folder pada peranti asal dengan peranti baru (melalui rangkaian) lalu melakukan aktiviti salin dan tampal. Namun saya memilih untuk memanfaatkan Windows Subsystem for Linux (WSL) kerana dengan linux saya boleh gunakan Rsyncd.
Window Subsystem for Linux (WSL)
Pastikan bahawa peranti sudah mempunyai WSL dan sebarang distro linux. Saya biasa menggunakan Ubuntu.
Membolehkan Peranti Baru Capai SSH Peranti Asal
Langkah seterusnya adalah membolehkan peranti baru mengakses WSL pada peranti asal melalui SSH. Berikut adalah langkah-langkah yang perlu diikuti:
1. Pemasangan SSH Server pada WSL Peranti Asal
sudo apt-get update -y
sudo apt-get install openssh-server -y
2. Membolehkan SSH ke WSL peranti asal
Untuk membolehkan capaian server SSH di WSL dari peranti yang berlainan, kita perlu forward port milik window peranti asal kepada WSL peranti asal tersebut. Menggunakan Window Powershell, jalankan arahan netsh berikut (Netsh tidak disokong oleh Window Command Prompt)
a. Forward Port Kepada WSL
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=2222 connectaddress= connectport=22
b. Buka Firewall
netsh advfirewall firewall add rule name='Buka port 2222 untuk WSP' dir=in action=allow protocol=TCP localport=2222
3. Uji Sambungan SSH
Cuba SSH ke WSL peranti asal dari peranti baru.
ssh nama-pengguna@alamat-IP-peranti-asal -p 2222
SSH Tanpa Kata Laluan
Untuk mengelakkan masukkan kata laluan setiap kali membuat sambungan SSH ataupun semasa mengggunakan rsyncd nanti, gunakan SSH Key dan fail SSH Config. Berikut adalah langkah-langkahnya.
1. Cipta SSH Key Pada WSL Peranti Baru
ssh-keygen -t rsa
2. Salin Kandungan Fail Public Key ke WSL Peranti Asal
ssh-copy-id -i ~/.ssh/id_rsa.pub nama-pengguna@alamat-IP-peranti-asal
3. Konfigurasi Fail SSH Config pada WSL Peranti Baru
Menggunakan vi ataupun nano, akses fail '~/.ssh/config' dan masukkan baris berikut.
Host peranti-asal
HostName alamat-IP-peranti-asal
Port 2222
User nama-pengguna
Pemindahan Fail
Pada peranti baru, gunakan rsyncd dan for loop untuk memindahkan fail dengan mudah. Berikut adalah contoh dimana saya senaraikan dahulu folder yang ingin saya pindahkan. Seterusnya, arahan for loop akan menjalankan rsync setiap folder berkenaan.
list="Documents Downloads Desktop Pictures Videos Music kucing"
cd /mnt/c/Users/nama-pengguna
for i in $list; do
rsync -avzh -e ssh peranti-asal:/mnt/c/Users/nama-pengguna/$i
done
Pastikan untuk menggantikan nama pengguna, alamat IP, port dan direktori sesuai dengan konfigurasi anda.
Dengan kaedah yang telah ditunjukkan, anda tidak perlu melekat berjam-jam depan laptop atau pc anda dan boleh melakukan aktiviti-aktiti lain dengan senang hati.
Lain-lain
Terdapat folder-folder yang boleh disalin dari folder AppData (C:\Users\nama_pengguna\AppData) peranti asal ke dalam folder AppData peranti baru. Ia mengandungi data perisian yang digunakan. Contoh, dengan menyalin folder AnyDesk, anda akan dapat semua senarai peranti yang pernah anda akses menggunakan AnyDesk setelah memasang perisian tersebut di peranti baru.