Get available diskspace in ruby

1.use Sys::Filesystem.stat(dir) install:

gem install sys-filesystem

doc:

https://www.rubydoc.info/gems/sys-filesystem/1.1.4/Sys/Filesystem/Stat

example:

 def dir_usuage_percentage
   dir_stat = Sys::Filesystem.stat('/motion')
   dir_stat.bytes_used.to_f*100 / dir_stat.bytes_total.to_f
 end

2. usage percentage

spaceMb_i = `df -BM /dev/sdb1`.split[10].to_i
=> 49

free diskspace(G)

spaceGb_i = `df -BG /dev/sdb1`.split[9].to_i
=> 947

O

分類: ruby | 在〈Get available diskspace in ruby〉中留言功能已關閉

Debian查詢套件版本

apt-cache policy package_name

例如下例可查詢glusterfs-client版本

apt-cache policy glusterfs-client

顯示:

root@d1:~# apt-cache policy glusterfs-client
glusterfs-client:
  已安裝:(無)
  候選: 5.5-3
  版本列表:
     9.0-1 500
        500 http://opensource.nchc.org.tw/debian testing/main amd64 Packages
     5.5-3 990
        990 http://opensource.nchc.org.tw/debian buster/main amd64 Packages

O

分類: 系統管理 | 標籤: | 在〈Debian查詢套件版本〉中留言功能已關閉

Linux更換系統硬碟,系統轉移

最近將轉移一台電腦系統,將傳統硬碟轉到ssd碟,順便記錄一下linux系統轉移的步驟。記得一定要卸載後才能進行,否則會開不了機。所以

1.由別的partition開機

2.掛載source碟和destination碟

 mount /dev/sda /sou
 mount /dev/sdb /des

3.copy全部檔案到目的碟

 cp -af /sou/* /des

4.找出blkid

 blkid

 ls -l /dev/disk/by-uuid/ 

5.編輯/des/etc/fstab,將uuid換成新partition的

6.編輯/des/boot/grub/grub.cfg,將uuid換成新partition的,注意,會有很多筆,用編輯器代換比較方便,或用sed。 ex:將filename中所有A代換為B

 sed -i 's/A/B/g' filename

7.重建grub

 update-grub

8.重開機,若成功,再重建一次grub

O

分類: 系統管理 | 標籤: , | 在〈Linux更換系統硬碟,系統轉移〉中留言功能已關閉