2017年12月10日 星期日

Win10 電腦關機之後會馬上再次開機

Win10 電腦關機之後會馬上再次開機

發生在我的 AMD飛龍 945 上面,主要就是突然就變得關機之後關不掉,會在自動啟動休眠也是一樣的狀況很困擾。
最後忽然想到筆電關機會一片黑也處理過,是不是也是網卡的問題,安裝了驅動並關閉電源內的快速啟動果然解決問題了。
網卡驅動的部分,必須更新到提供者是廠商,比如說Realtek,提供者是微軟都會出問題。
如果是英特爾的電腦還要補裝IME驅動才會好。
這是之前筆電黑屏的文章,我想應該是一樣的狀況
https://charlottehong.blogspot.tw/2016/08/e5-491g-w10.html
整理一下狀況
  1. EFI才支援快速啟動
  2. 微軟的網卡驅動雷翻了
  3. 微軟的的IME驅動也是雷翻了
解決辦法就是能夠EFI安裝最好就用EFI安裝了,直接裝好都沒事。

通用解法

真的要用MBR裝,或者像我一樣主機板根本就沒EFI可以用QuQ
  1. 必須關閉快速啟動(沒的選)
  2. 網卡驅動一定要裝廠商給的(如realtek)
  3. IME驅動一定要補(AMD不用補)
快速啟動從電源裡面關
把下面那個打勾取消掉
如果還是不行試試看這個,這個我猜測是跟IME有關~應該補好驅動就沒事了
搜尋 msconfig 開啟,然後上面頁簽選到服務頁面,記得點一下名稱讓他用名稱排序
至於快速啟動不想關也有解決辦法,關機的時候按住SIFT然後滑鼠在下關機,再來就可以放開SIFT了,這樣下次就會正常啟動了(要重跑開機檢查一堆有的沒的而不是從硬碟複製檔案);這招也會用來按重新開機進入安全模式,一樣的原理快速啟動是不給你進安全模式的,因為要速度什麼都捨棄了。

2017年12月8日 星期五

Opencv320 Contrib 安裝懶人包

Opencv320 Contrib 安裝懶人包

帶管理員權限,因為需要改環境變數


使用方法

  1. 自行安裝好 VS2017
  2. 開啟安裝後點擊安裝 (不要改變位置否則會失敗)
  3. 自動開啟 VS2017 按F5編譯
  4. 彈出成功信息


開源

製作過程並沒有什麼技術含量,主要是還是debug時間最多,一堆沒想到的奇爬問題一直出現,把它寫出來給我自己看方便之後維護文章,有興趣的話也可以看看是怎麼實現全自動編譯的。
我的實現目的是只要輸入版本號,就可以自動在windwos上編譯完成。
版本號對應的方式如下
rem 設置 OpenCV 版本
set cv_version=4.0.1

rem 下載Opencv
git clone -b %cv_version% https://github.com/opencv/opencv
git clone -b %cv_version% https://github.com/opencv/opencv_contrib
首先條件要先達成安裝最新版的 cmake 跟 git,尤其是cmake的這個必須跟著opencv升級,否則編譯過程會出錯,升級的話麻煩的,最後我是放棄了搞些什麼辦法了,直接附在安裝包一起省事。
下載的網址個別是:
值得注意的是,有些人的電腦上已經安裝過了,解決辦法是下載攜帶版,直接開攜帶版的exe而不直接在命令內使用 git 或 cmke。
對應的辦法像這樣
rem 設置 git 與 cmake 位置 (如已安裝環境變數可略過)
set gitPath=Git\bin
set cmakePath=cmake\bin

%~dp0%gitPath%\git
%~dp0%cmakePath%\cmake
再來就是讓cmake自動產生make檔案,語法跟linux差不多,長這個樣子
rem 設置 cmake 參數
set build_dir=build_contrib
set source_dir=opencv
set modules_dir=opencv_contrib\modules
md %build_dir%
cd %build_dir%

rem 建立 cmake 檔案
%~dp0%cmakePath%\cmake -G %mode% -DOPENCV_EXTRA_MODULES_PATH="%~dp0%modules_dir%" "%~dp0%source_dir%"
最後打開 Visutal Studio 來編譯吧~其實這裡有語法,只是沒查到不知道去哪裡找QuQ就算惹,剩最後一部只是按右鍵編譯。
有人知道怎麼操作指令的話~還請留言教一下XD
具體操作是先按 ctrl+shift+b 編譯,編譯完畢之後檔案其實就已經有了。
要輸出到同一個資料夾可以按,左邊 CMakeTargets -> INSTALL 右鍵 然後 按 J 在案B,自動幫你把全部整理到名為 INSTALL 的資料夾。
然後要上面編譯要做兩次,一次是 debug 模式一次是 release 模式,從VS上方選單切換。

2017年12月2日 星期六

windows powershell 如何安裝 pycrypto

Windows powershell python3 如何安裝 pycrypto

  1. open “x86_x64 Cross-Tools Command Prompt for VS 2017” with administrator privilege in start menu.
  2. set CL=-FI”%VCINSTALLDIR%Tools\MSVC\14.11.25503\include\stdint.h”
  3. pip install pycrypto
第一個是一個捷徑的名字,位置在
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Visual Studio 2017\Visual Studio Tools\VC
地二個其中 VCINSTALLDIR 這麼變量好像沒有,可以手動取代成
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\

參考

2017年12月1日 星期五

Hover Zoom+ chrome 擴充套件,自動放大圖片

Hover Zoom+ chrome 擴充套件,自動放大圖片

效果圖如下,這是把滑鼠移動到圖片上的狀況
他就自己放大了,滑鼠離開就自己消失了很方便瀏覽的,這個在其他網站也可以使用,比如說推特或是FB,如果需要下載圖片可以把滑鼠移動到圖片上放大之後按一下 S 就自動儲存原圖了,是原圖歐不是縮小的圖非常方便。
FB上可能會干擾到這時候可以選擇禁止這個網站就好了,進入設定的網頁
chrome-extension://pccckmaobkjjboncdfnnofkonhgpceea/html/options.html
輸入FB的網站即可
加入之後底下記得按SAVA儲存,然後FB要重新整理一次

隱私問題

這個軟件在之前有被爆料過植入惡意代碼,會回傳你開過的所有網站資料給特定網站,不過這個不是同一個這個有帶+字號。
商店網址進去仔細看說明作者也有提到該軟件是源自於原先Hover zoom 的代碼,然後移除惡意代碼,並且將代碼公開在網路上,可以上github上看代碼。
Hover zoom+ 開源代碼:https://github.com/extesy/hoverzoom/issues page
以下擷取自作者原文
This is an open source version of the original HoverZoom extension which is now overrun by malware and deleted from store. In this version all spyware has been removed, many bugs were fixed and new features were added. It doesn’t collect any statistics by default . The only permission it needs is to access data on all websites (to extract full images), and optional permissions to access browser history or get tab urls for per-site configuration.
Sometimes sites change design and when it happens extension needs to be updated. Please report any issues with zoom not working by using Support tab or https://github.com/extesy/hoverzoom/issues page.
相關文章:

2017年11月28日 星期二

Centos7 配置 Samba 共享資料夾和印表機

Centos7 配置 Samba 共享資料夾和印表機

弄了好久,看了往上好多文章大多數中文的都是那幾篇的變形,照著做還是開不起來,其中中有很多原因,他們只提到一部分而已我猜應該不是全新作業系統去安裝的教程,或者是更新之後變的更安全需要額外開啟權限。
設置完畢之後直接從Windwos上的資料夾打上 \ip 即可連接上,進入網路上的芳鄰是看不到的。

Samba初始化過程

配置完成即可連上,並可見登入使用者的目錄
# 配置smb.conf
vi /etc/samba/smb.conf
[User1]
    read only = No
    guest ok = No
    valid users = user
    browseable = yes

# 新增帳號+重設密碼
smbpasswd -a user
# 刪除帳號
pdbedit -x user

#防火牆允許通過
firewall-cmd --permanent --zone=public --add-service=samba
#SElinux允許通過
setsebool -P samba_enable_home_dirs 1
setsebool -P samba_export_all_ro 1
setsebool -P samba_export_all_rw 1

# 設置文件屬性(好像不用不行再打)
chcon -R -t samba_share_t /home/chg
semanage fcontext -a -t samba_share_t "/home/chg(/.*)?"

# 重新啟動 Samba
systemctl restart smb
# 查看 Samba 是否正確運行中
systemctl status smb

#其他 Samba 指令
systemctl start smb
systemctl enable smb

建立公用資料夾 (大家看的到)

# 新建資料夾
mkdir /var/samba_share
mkdir /var/samba_share/public

# 資料夾更改權限(任何人可見可修改)
chmod 777 /var/samba_share/public
# 資料夾改權限(任人可見僅擁有者可修改)
chmod 755 /var/samba_share/public

# 修改 vi /etc/samba/smb.conf 文件
[public]
    public = yes
    path = /var/samba_share/public
    browseable = yes
    writable = yes
    guest ok = yes

# 重新啟動 Samba
systemctl restart smb

新增其他使用者

如果要新增第二個使用者需要做的步驟有
  1. 加入samba群組 smbpasswd -a user
  2. 配置 smb.conf 文件
  3. 重啟 samba 伺服器 systemctl restart smb

關於SElinux

沒有關閉預設狀態什麼都不能用,必須設置指令開啟才可以使用
他自己從右上角通知跳出來警告,然後警告裡面有教怎麼做
#暫時關閉SElinux(重開機會啟動)
setenforce 0
#確認有無關閉SElinux
getenforce

#開通三個布林值
setsebool -P samba_enable_home_dirs 1
setsebool -P samba_export_all_ro 1
setsebool -P samba_export_all_rw 1

#這兩個警告跳出來的要我按,我不確定要幹嘛的
ausearch -c 'smbd' --raw | audit2allow -M my-smbd
semodule -i my-smbd.pp

windwos端設定

開進去網路芳鄰之後直接點印表機右鍵連線就可以用了。
注意:要記住使用者名稱
如果不記住下一次開機的時候就需要重打,到這邊還不是問題就重就好了;會出問題的是 AdobeReader、Office 這些軟體有列印的功能的,一打開就會偵測印表機這時候因為沒有帳密就偵測不到,結果就是沒有回應整個白白的卡住要等個幾分鐘他才會放棄偵測,此時才正常打開 word 或 pdf。
如果要用指令的方式配置,我查了一些指令設置如下
# 安裝裝驅動
pnputil -a \\driver.inf

# 連線至印表機
rundll32 printui.dll,PrintUIEntry /in /n \\YourIP\dcp7040

# 新增主機名稱
set hostdir=%SystemRoot%\System32\drivers\etc\hosts
echo. >> %hostdir%
echo YourIP ServerName >> %hostdir%
START %SystemRoot%\explorer.exe \\ServerName
上面的方式其實還是要人去點,有嘗試想寫無人職守的方式,不過遇到不少問題,最後我放棄了QuQ

其他

2017年11月26日 星期日

Windows系統 GPT(EFI) 轉 MBR 無損資料可開機不須重灌系統

Windows系統 GPT(EFI) 轉 MBR 無損資料可開機不須重灌系統

如果是反過來 MBR->GPT 的請參考:
http://charlottehong.blogspot.com/2017/11/windows-mbr-gptefi.html

需要一個獨立系統

需要一個獨立系統,這裡建議把硬碟拆下來裝在第二台台電腦上並安裝以下軟體;其他方法可以在USB安裝WindowsRE用USB啟動去做,因為有些複雜就不介紹了,這裡會用第二台電腦做說明。
需要軟體diskgenius:http://www.diskgenius.cn/download.php
出狀況不要擔心也不要緊張亂弄!都可以救回來參考這一篇。
https://charlottehong.blogspot.tw/2018/03/efi-mbr.html

GPT -> MBR

這裡要特別注意!只能在 DOS模式或是PE上轉換,實測在Win10上轉換會失敗!
進入DOS模式
圖中之所以變成灰色的是因為 UEFI 設置須改為 (錯誤的說法是BIOS不過這樣應該比較清楚)
  • 打開 CMS(支援MBR啟動)
  • 關閉快速啟動
1.分割調整至4個以內,EFI分區可直接移除
2.直接轉成MBR -> 然後重啟系統或拔掉重插

3.將啟動分區標記為”啟動”
4.下面指令重新寫入BIOS引導文件
這時候系統MBR是沒有開機引導的,必須手動
  • [1]. 標記啟動分區 (剛剛做了)
  • [2]. 修復 MBR 開機引導 (導入bootmgr 文件)
  • [3]. 重建 BCD 選單
打入下面 cmd 指令即可(包含 [2][3]),也可以寫成bat批次檔,做批處理
# C是你的系統曹,第二個C是啟動磁區(如果有分開這裡要改)
bcdboot C:\windows /f BIOS /s C:\ /l zh-tw
分開指的是向 Win7 重灌的的時候多出 100M 的空間用來放
  • 標記啟動磁區
  • bootmgr 文件
  • bcd 選單
這時候系統曹可以是邏輯分區~實現單MBR硬盤安裝超過4個系統,之所以大家多不可以是因為非主分區不可以被標記成啟動
原理就是標記100M啟動這個100M內的bcd選單,再來由bdc選單決定開起哪個系統核心 x:\windows\system32\winload.exe

前面那一小段也可以切成啟動磁區,就是安裝Win7會跑出來的那個100M(Win10是300M),格式不限NTFS或者是FAT都可以,唯一條件就是必須標記為啟動。
因為也不大,100M~500M不痛不癢建議留著之後方便
如果要求完美軟體內可以合併空間。不過之後反悔也可以無損切回來啦~

Windows系統 MBR 轉 GPT(EFI) 無損資料可開機不須重灌系統

Windows系統 MBR 轉 GPT(EFI) 無損資料可開機不須重灌系統

重新寫一篇比較簡潔的文章,有影片操作過程,建議直接看這篇
- [圖/影] 升級 Windsows11 不用重灌 MBR 轉 GPT
   https://charlottehong.blogspot.com/2022/02/windsows11-mbr-gpt.html
- 如果是反過來的 GPT -> MBR 請參考:

快速轉換 mbr2gpt

這個是微軟內建的轉換工具,可以安心使用。
這個有條件限制,必須是三個主分區以內才能轉,其他任何狀況都會出問題。
操作前要注意主機板有沒有支持EFI啟動。(英特爾第二代開始H61以後都有)
使用方式比較簡單,不用第二台電腦,直接在需要轉換的電腦操作下面步驟:
  1. 開啟 RE or PE 中的 命令提示符
    (按住SIFT->再按重新開機->疑難排解->命令提示字元)
  2. 重啟之後會需要選擇帳號,並輸入密碼再來會開啟終端機
  3. 輸入 mbr2gpt /validate 檢查是否可轉
  4. 輸入 mbr2gpt /convert 轉換完畢
  5. 重新啟動

關於 [1] 還有另一種是PE,光碟在安裝的時候按SIFT+F6,會跳出命令提示字。
關於 [5] 一般有支持EFI啟動的主機板,預設狀態都是同時支援EFI與MBR的;可以先重開看看,不能再去設置調整,不知道怎麼調整就直接重設也可以~

上圖找不到命令提示符
是因為救援系統RE分區被砍掉了,可以從以下站內文重新開啟
https://charlottehong.blogspot.tw/2018/02/windows-re.html
有遇過 [2] 的時候明明有系統管理員帳號卻是顯示空白的狀況;
遇到的話從光碟或USB開啟吧~或參考下面手動設置說明。
詳細的 mbr2gpt.exe 說明可以參考微軟網站:
https://docs.microsoft.com/zh-cn/windows/deployment/mbr-to-gpt









以下是舊文,上面介紹的工具比較簡單也無風險,但是有一些條件限制。
如果遇到條件限制轉不過去才需要做下面的步驟。


前言

大概補一下前言知識GPT跟MBR是磁碟格式,以前的主機板內的韌體叫做BIOS他是16位元的,後來出了EFI大概一年就淘汰換UEFI。
BIOS基於16位元的關係磁碟最多就只能切2T,所以你如果裝1顆3T的硬碟,要麼你切1T+2T要麼就只能換GPT。
MBR 最多切4個分區,擴展分區全部和算算一個,如果要在同一顆硬碟安裝4個以上的系統需要一些技巧。
UEFI可以支援傳統MBR模式開機,這個選項叫做CSM開啟之後也可以讀到,不過今年開始新版的UEFI拿掉了CSM,XP已經成為歷史沒辦法在新主機板安裝了。
UEFI多了安全開機,系統必須有被他檢測過才可以開機,這導致linux安裝稍微麻煩了點(是能裝的)。
UEFI 多了快速啟動開機可以神速開到桌面,不過啟動條件比較多需要 1.系統本身支持並啟用 2.安裝系統的時候選用EFI安裝 3.主機板支持並且啟用該功能 4.其他周邊硬件:如顯示卡。
此外IDE跟AHCI是另一回事,這個也可以無損轉要補驅動但是建議重灌保險;轉了之後比較容易發生衝突問題變得怪怪的。

開機引導

UEFI的開機管理比較特別一點,可以由BIOS裡面決定要開哪一個系統,對就是選系統(也就是EFI內的哪一個啟動文件),有趣的是這個選擇完畢開進去之後也會啟動grub或bcd,然後又可以再選一次系統。
以往MBR的硬碟BIOS只能決定開哪一個硬碟的grub或bcd無權決定開誰,之後再由grub或bcd決定開哪一個系統(這時候也可以開別的硬碟的系統)。
Linux比較特別的EFI啟動的時候會有兩個EFI文件檔,就是BIOS裡面會看到兩個系統,一個是沒過驗證的grub這個如果安全啟動沒開不能開機,另一個是有過安全啟動驗證的,如果你沒關閉安全啟動記得要選否則預設是grub會黑屏不能開機。
某些筆電設計成必須設置密碼才能選擇載入其他EFI文件選擇第二個系統開機,詳細可以蒐一下參考站內文。


確認你有滿足條件

確定一下你有滿足上面所提的條件,一般就是進入BIOS看一下有沒有一項 Secure Boot安全啟動,這個最好找,有的話就可以啟動EFI了。
顯示卡在自己爬文一下有沒有支持,沒支持也可以拉只是 超級啟動 不能用。

需要一個獨立系統

需要一個獨立系統,這裡建議把硬碟拆下來裝在第二台台電腦上並安裝以下軟體;其他方法可以在USB安裝WindowsPE用USB啟動去做,因為有些複雜就不介紹了,這裡會用第二台電腦做說明。
需要軟體diskgenius:http://www.diskgenius.cn/download.php

轉換流程

記得備份重要資料,避免操作失誤資料遺失
分區如果不見了左上角有個搜尋分割可以救回來

MBR -> GPT

首先擴展分區無法保存資料,請先轉為主分區或備份再重新寫入
某些情況會導致不能讓擴展分區轉為主分區,MBR最多切4個分區(擴展分區則是全部合只算1個),所以如果你切了3個主分區+2個或以上的擴展分區(1個好像也不行),那就沒辦法在同一顆無損轉了,因為轉完之後就超出4個了。
這種情況處理方式建議就拿另一顆來複製資料了。
1.有擴展分區要先處理掉只留主分區
2.直接轉換成GPT -> 然後左上角保存
3.C曹壓縮讓前面空出500M以上的區間
並將其格式調整成EFI,然後保存
再來是新增盤符,需要重開機才可以新增不然會跳錯
(如果是非原生sata的主機板可以熱拔插,拔掉sata線重接就好)
4.下面指令重新寫入EFI引導文件
這時候系統是沒有開機引導的,必須手動
  • 修復EFI開機引導
  • 重建BCD選單
打入下面 cmd 指令即可,也可以寫成bat批次檔,做批處理
# C = 系統槽, Z = EFI槽
bcdboot C:\windows /f UEFI /s Z:\ /l zh-tw

選用::壓縮系統

在效能影響不大的情況下,有效壓縮系統空間
這個隨時都可以[壓縮\解壓縮],開進系統再執行即可。
Windows10 如何啟用 壓縮系統 compactos 霍夫曼壓縮:
http://charlottehong.blogspot.com/2018/03/windows10-compactos.html