2020-01-30

Windows 10 更新後,開機出現 grub rescue

最近更新 Windows 10 到 1909 版本,但在更新之後重開機卻進入 grub rescue,這個情形已經不是第一次發生了,有必要做個筆記以防之後再次發生。

步驟上跟參考網址的第1篇大致相同,但在 insmod normal 之後還是不能進入作業系統,所以以下按照我的電腦實際狀況寫一遍解決流程:

  1. 利用 ls 指令查詢磁區情形
  2. 逐一以 ls 看能不能查詢,我的是 Linux 磁區是 (hd0,msdos3),輸入 ls (hd0,msdos3) 之後會顯示 filesystem 是 XFS,其餘的磁區則是 unknown。
  3.  
    ls (hd0,msdos3)
     
  4. set 指令查詢現在的 prefix 和 root 設定值
  5. 利用 set 指令將 prefix 和 root 改為正確的磁區
  6.  
    set root=(hd0,msdos3)
    set prefix=(hd0,msdos3)/boot/grub
     
  7. 切換到 normal 模式
  8. insmod normal
    normal
    
  9. 之後開始和參考網址的內容不同,我選擇 Windows 10 和 Linux 都無法進入作業系統。移動光條到 Linux 選項式後,輸入「e」編輯內容,發現其中的 root 磁區和實際的情形不同,將其改為正確的 (hd0,msdos3) 之後即可開機進入 Linux
  10. 安裝 GRUB,我的開機磁碟是 /dev/sda
  11. sudo grub-install /dev/sda
    
  12. 更新 GRUB 選單
  13. sudo grub-update
    

參考網址:
  1. 雙系統升級 Windows 10 後造成 ubuntu 開機進入 grub rescue
  2. 升級Windows 10 grub開機選單修復
  3. [archlinux+win10]win10 更新,進入grub rescue??
  4. ArchWiki GRUB(正體中文)                    

2020-01-16

逐列印出 DataFrame 的內容

for index, row in df.iterrows():
    print(row['Column1'], row['Column2'],……)

參考資料:How to iterate over rows in a DataFrame in Pandas?

2020-01-15

Excel 擇優計算最高的 n 次分數平均

參考資料:Excel-擇優計算平均分數(LARGE,陣列)

最近遇到需要計算前 n 次成績的平均,其中的 n 是可以任意變動的,試過參考資料中 Vincent 的做法,但其中的採計次數是固定的,例如要採計最高的 6 次分數,則公式為:
 =AVERAGE(LARGE(分數範圍,{1,2,3,4,5,6})) 

如果希望採計次數能任意變動,則無法直接使用這個公式,關鍵在於其中的 {1,2,3,4,5,6} 陣列,如果能隨意產生 {1,2,3,…,n} 陣列就好了。後來想到了利用「考試的編號」和「OFFSET」函數來動態產生所需陣列,修改後公式如下:
 {=AVERAGE(LARGE($M6:$BJ6,OFFSET($M$2,0,0,1,$BK$1)))} 


其中 M2:BJ2 是考試的編號,而 M6:BJ6 則是第一位學生的分數,BK1 儲存格則輸入採計次數。請注意這是個陣列公式,最後要同時按下 Ctrl + Shift + Enter 才會生效!

2020-01-07

Manjaro Linux 為 VirtualBox 的 Guest OS 時的調整

安裝 VirtualBox Guest Addition

  1. 在 VM 選單的「裝置」中選取「插入 Guest Additon CD 映像」
  2. 加入映像檔之後會自動執行安裝,如果沒有自動執行那就自己執行 VBoxLinuxAdditions.run
    ./VBoxLinuxAdditions.run
  3. 然後重新開機即可

安裝 VirtualBox Extension Pack

  1. 安裝 VirtualBox Extension Pack,之後可以支援 USB 2.0
    pamac build virtualbox-ext-oracle
    
  2. 將自己的帳號加到 Vboxusers 使用者群組
    sudo gpasswd -a $USER vboxusers
    
  3. 登出後再登入,設定就會生效,如果不想登出,則可以使用下列指令
    sudo modprobe vboxguest vboxvideo vboxsf
    sudo systemctl enable --now vboxservice.service
    


參考資料:Manjaro Wiki - VirtualBox

Manjaro Linux 更新 Mirror list

最近在 VirtualBox 上安裝 Manjaro Linux 時遇到一個問題:pacman 的設定裡沒有更新套件的 Server。

稍微查詢了一下發現 pacman 的設定檔是在 /etc/pacman.conf,可以將套件的 server 位址寫死在 pacman.conf 裡面,也可以從 /etc/pacman.d/mirrorlists 讀入 server 的位址。

但我發現 /etc/pacman.d/mirrorlists 檔案裡沒有任何 server 的位址,於是參考 Pacman-mirrors 裡的說明,執行下列指令就能自動新增 mirror 站的位址。
 sudo pacman-mirrors --country Taiwan && sudo pacman -Syyu

其中 sudo pacman -Syyu 是同步資料庫並且更新系統。

參考資料:Pacman-mirrors

2020-01-06

Windows 10 加入 Quick Launch 工具列

之前在 Windows 7 時,我習慣用兩列工具列,上面一列是快速啟動列,下面一列則是已經開啟的程式,到了 Windows 10 以後沒有辦法很方便的弄出兩列工具列,特別紀錄一下要怎麼弄出來。


  1. 在工具列上按滑鼠右鍵,移到「工具列」之後,選擇「新增工具列」。
  2. 在「資料夾」欄位輸入
     %appdata%\Microsoft\Internet Explorer\Quick Launch 
    後,點擊「選擇資料夾」就新增完成了。
  3. 在工作列上點滑鼠右鍵,取消「鎖定工作列」後拉成兩行的高度,把快速啟動列放在上列。
  4. 在 Quick Launch 工具列上點滑鼠右鍵,取消「顯示標題」只有「顯示文字」,我覺得這樣更好用。
  5. 最後再「鎖定工作列」