Search This Blog

Friday, December 20, 2024

[WSL] Mount ext4 disk/partition

Run power shell as administrator privilege

[Power Shell]

List all disks

 PS C:\Windows\System32> get-cimInstance -query "SELECT * from Win32_DiskDrive"

 DeviceID           Caption                       Partitions Size          Model
--------           -------                       ---------- ----          -----
\\.\PHYSICALDRIVE0 WDC WDS100T2B0A               2          1000202273280 WDC WDS100T2B0A
\\.\PHYSICALDRIVE1 WDC WD40EZRZ-00GXCB0          5          4000784417280 WDC WD40EZRZ-00GXCB0

 Mount disk in WSL

PS C:\Windows\System32> wsl --mount \\.\PHYSICALDRIVE0 --bare

 [WSL-Ubuntu]

 $ lsblk

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda      8:0    0 388.5M  1 disk
sdb      8:16   0     2G  0 disk [SWAP]
sdc      8:32   0     1T  0 disk /snap
                                 /mnt/wslg/distro
                                 /
sdd      8:48   0 931.5G  0 disk
├─sdd1   8:49   0  15.3G  0 part
└─sdd2   8:50   0 916.3G  0 part

$sudo mkdir /mnt/ubuntu_disk

$sudo mount /dev/sdd2 /mnt/ubuntu_disk

Thursday, November 9, 2023

[Ubuntu] Convert mp4 video to aac audio

 

#!/bin/bash

# Define the target directory
directory="."

# Check if the target is not a directory
if [ ! -d "$directory" ]; then
  exit 1
fi

# Loop through files in the target directory
for file in "$directory"/*; do
  if [ -f "$file" ]; then
    if [ "${file##*.}" == "mp4" ]; then
        echo "${file%.*}.aac"
        ffmpeg -i "$file" -c:a aac -b:a 128k -vn "${file%.*}.aac"
    fi
  fi
done

 

Wednesday, April 12, 2023

[Ubuntu] find command with grep

 find -name "*.java" -exec grep "foo" -Hn {} \;

 

-H Display filesname

-n Display line number

Monday, March 27, 2023

[Ubuntu] Create tar file exclude specified directory

Tar foo directory, and exclude "foo/.repo"  directory

─foo

   ├─.repo

   │     └─ example

   └─ 1.txt

$ tar -cvf foo.tar --exclude='foo/.repo' foo


Remove directory "foo/.repo" from tar file

$ tar --delete foo/.repo -f foo.tar

Monday, November 14, 2022

[Ubuntu] Split large file into smaller pieces

Split file into per file 1024MB

split -b 1024M -d foo.tar.xz foo.tar.xz-

foo.tar.xz-00    1024MB

foo.tar.xz-01    1024MB

...


Merge pieces to large file

cat foo.tar.xz-* > foo.tar.xz


Wednesday, November 9, 2022

[Mac OS] React Native - Environment Setting

 Trouble Shooting:

% bundle install

Your Ruby version is 2.6.3, but your Gemfile specified 2.7.4

or 

Your Ruby version is 2.6.8, but your Gemfile specified 2.7.5


Saturday, September 17, 2022

[Firefox] Youtube video decoding with hardware acceleration (GPU)

 Windows下使用Firefox看Youtube影片時,用工作管理員觀察,發現GPU的使用率都為0,但如果用Chrome則會使用到GPU。最後發現以about:config進行修改,就可以讓Firefox使用GPU 加速影片decoding。


Thursday, February 17, 2022

[7zip] 壓縮及分割檔案

壓縮比例

-mx=5

可填入數值0(封存),1,3,5(預設),7,9(最大壓縮比)

壓縮檔案分割大小

-v650m

可填入單位b(bytes),k(KB),m(MB),g(GB)

範例:

封存Source目錄,以650MB分割壓縮檔,以aaa.7z為壓縮檔名

 7z a -mx=0 -v650m aaa.7z Source

 


Friday, November 5, 2021

[Visual Studio] 下載NuGet套件(Restore NuGet packages)

在命令列模式下使用MSBuild下載Nuget套件(Restore NuGet packages in command line)

msbuild version > 16.5

專案中有packages.config檔案

在有.sln檔案的路徑,執行以下命令即可

msbuild -t:restore -p:RestorePackagesConfig=true


Reference:

https://docs.microsoft.com/en-us/nuget/consume-packages/package-restore#restore-using-the-nugetexe-cli

Thursday, September 23, 2021

[Ubunut] Firefox 字型顯示問題修正

Firefox 顯示Serif字型時,英文粗體會出現直線/豎線/pipeline,影響觀看


 以下列方式確認字型對應後,發現"Serif"會對應為"AR PL UMing TW" "Light"

$ fc-match serif
uming.ttc: "AR PL UMing TW" "Light"

修正方式如下:

建立~/.config/fontconfig/conf.d/50_priority.conf

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig> 
  <match target="pattern">
    <test name="family" qual="any">
      <string>serif</string>
    </test>
    <edit binding="strong" mode="prepend" name="family">
      <string>DejaVu Serif</string>
    </edit>
  </match>
</fontconfig>
 

 關閉Firefox再重開,即可修正Serif字型顯示問題

Wednesday, September 1, 2021

[Ubuntu]查詢Windows AD Server的IP Address(Find out IP Address of Windows AD Server)

$ nslookup

> server YOUR_LOCAL_DNS_SERVER_IP (EX: 192.168.1.1)

Default server: 192.168.1.1
Address: 192.168.1.1#53
 

> set type=any

> _ldap._tcp.dc._msdcs.DOMAIN_NAME (EX:abc.com.local)

Server:        192.168.1.1
Address:    192.168.1.1#53

_ldap._tcp.dc._msdcs.abc.com.local    service = 0 100 389 ad02.abc.com.local.
 

> ad02.abc.com.local

Server:        192.168.1.1
Address:    192.168.1.1#53

Name:    ad02.abc.com.local
Address: 192.168.1.30

Reference:https://www.tecknowledgebase.com/6383/how-you-can-find-out-the-name-and-ip-address-of-the-ad-domain-controller-on-your-network/

Wednesday, June 30, 2021

[Ubuntu] qemu設定Host only網路(qemu set host only network on Windows guest)

[Host] Ubuntu 18.04

qemu/kvm

設定Host網路介面

# sudo ip link add dev bridge00 type bridge
#
sudo ip tuntap add tap00 mode tap user $USER group kvm
#
sudo ip link set tap00 master bridge00
#
sudo ip link set dev bridge00 up
#
sudo ip link set dev tap00 up

# sudo ip addr add 192.168.100.1/24 broadcast 192.168.100.255 dev bridge00

VM的網路要設定為bridge00

 


[Guest] Windows 10

ipv4

設定固定ip: 192.168.100.2 netmask: 255.255.255.0


Reference:

https://plkt.io/2021/01/15/manually-setting-up-host-only-networking-with-qemu-guest/

Tuesday, November 3, 2020

ATOM IDE - Useful packages

 ATOM IDE是免費又可高度客制化的程式開發工具,提供很多套件提高你的程式開發效率,以下介紹幾個C語言好用的套件

1.  函式列表(Function/Variant symbol list view)

symbols-navigator

2.搜尋變數/函式宣告及被使用的清單 (Find Symbol/Text)

atom-cscope

使用前需建立cscope之db檔案,可點選按鈕產生。


 

3.變數/函式提示清單 (Provide advice of function/variable)

autocomplete-clang

4. 語法檢查 (Check error)

linter-clang

Wednesday, June 10, 2020

[Ubuntu]帳號從sudo群組誤刪(Recover user to sudo group)

如果只有一個sudo權限的帳號,又不小心從sudo群組中誤刪掉,導致完全不行執行sudo權限的動作,可以由以下程序救回sudo權限

1. 重開機後,開機時按著"Shift"鍵等grub選單出現,選擇"Advance"
2. 選擇"drop to root"
3. usermod -a -G sudo username

Thursday, April 9, 2020

[ffmpeg]convert video without audio

video codec: H.264
video bitrate: 8000K
audio: none

ffmpeg -i input.avi -c:v libx264 -b:v 8000K -an output.avi

Tuesday, July 23, 2019

[Ubuntu]Off line install packages via apt-offline

使用apt-offline離線安裝軟體,以下以Ubuntu 18.04版為例

Step 1.下載apt-offline至未上網機器安裝
[可上網Ubuntu]
apt-offline.deb
https://ubuntu.pkgs.org/18.04/ubuntu-universe-amd64/apt-offline_1.8.1_all.deb.html
python3-magic
https://ubuntu.pkgs.org/18.04/ubuntu-main-amd64/python3-magic_0.4.15-1_all.deb.html

[未上網Ubuntu]
安裝
sudo dpkg -i python3-magic_0.4.15-1_all.deb
sudo dpkg -i apt-offline_1.8.1_all.deb

新安裝之Ubuntu未曾連線更新過Repository需進行第2歩驟,以避免有些軟體會有找不到的狀況,若無此狀況,則可以跳過第2歩驟

Step 2. 更新Repository
[未上網Ubuntu]
sudo apt-offline set --update -- update.sig
複製update.sig至"可上網Ubuntu"

[可上網Ubuntu]
將更新資訊存放至update.zip中
sudo apt-offline get update.sig --bundle update.zip
複製update.zip至"未上網Ubuntu"

[未上網Ubuntu]
sudo apt-offline install update.zip

Step 3. 下載所有deb檔案
安裝apache2, ffmpeg
[未上網Ubuntu]
sudo apt-offline set --install-packages apache2 ffmpeg -- packages.sig
複製packages.sig至"可上網Ubuntu"

[可上網Ubuntu]
下載所有相關deb檔案
sudo apt-offline get packages.sig --bundle packages.zip

Step 4. 安裝軟體
複製packages.zip至"未上網Ubuntu"
[未上網Ubuntu]
安裝方式1
sudo apt-offline install packages.zip

安裝方式2
- 解壓縮packages.zip至目錄中(ex: package_folder)
- sudo dpkg -i *.deb


Thursday, February 14, 2019

[Lubuntu]18.04顯示字型不清晰/Lubuntu blurry font rendering

Lubuntu 16.04使用者介面顯示字型看起來調校的不錯,清晰度很好,但更新到18.04後就覺得字好像看起來都糊糊的,後來發現經由調整可以改善。

Preference->Customize Look and Feel->Font
偏好設定->自訂外觀風格->字型

修飾風格(Hinting style):Full
次像素配置(Sub-pixel geometry): VBGR




Reference:https://humdi.net/wiki/tips/how-to-fix-blurry-font-rendering-in-ubuntu

Tuesday, February 12, 2019

[Ubuntu]How to install Mate Desktop in Ubuntu


reference :https://linuxconfig.org/how-to-install-mate-desktop-on-ubuntu-18-04-bionic-beaver-linux

[Ubuntu]設定系統Proxy/System Proxy Setting

sudo nano /etc/apt/apt.conf.d/95proxies
Acquire::http::proxy "http://192.168.0.114:3128";
Acquire::ftp::proxy "ftp://192.168.0.114:3128";
Acquire::https::proxy "https://192.168.0.114:3128";
sudo nano /etc/environment
http_proxy=http://192.168.0.114:3128/
https_proxy=http://192.168.0.114:3128/
ftp_proxy=http://192.168.0.114:3128/
HTTP_PROXY=http://192.168.0.114:3128/
HTTPS_PROXY=http://192.168.0.114:3128/
FTP_PROXY=http://192.168.0.114:3128/

Monday, January 1, 2018

[Ubuntu]fcitx行列輸入法

Ubuntu中之fcitx行列輸入法預設的字碼表和Windows下的排列方式差很多,在輸入上會不太習慣,因此從行列輸入法官方下載gcin的字碼表老刀所製做的gcin字碼修改成fcitx的字碼表。加入w0~w9的符號輸入。

安裝fcitx行列輸入法
sudo apt install fcitx-table-array30

下載字碼表
原始檔
fcitx字碼表

如果下載原始檔,則要進行下列兩個動作,如果是下載字碼表,則直接進行更新字碼表動作
安裝fcitx工具
sudo apt install fcitx-tools

由原始文字檔產生字碼表
txt2mb array30.txt array30.mb

更新字碼表位置
/usr/share/fcitx/table/array30.mb

修改候選字數由5改為10,在選字上與windows一樣