使用 Apple School Manager 與 MDM 管理 大量 IPad

名詞解釋

ASM: Apple School Manager

MDM: Mobile Device Manager 在 macOS Server 上叫做 “描述檔管理程式” profile-manager

VPP: Volume Purchase Program

監管: 將設備納管, 可以對設備進行管理

準備: 讓設備初始化

環境需求

  • 數台 iOS 設備 (廢話)
  • 一台 macOS (安裝 MDM Server 用)
  • 花 $590 買 macOS Server 軟體
  • Apple School Manager 專用 Apple ID (下面說明申請方式)
  • macOS Server 用的對外固定 IP (內部當然也是要固定才能轉喔)

申請 Apple School Manager 帳號

先到 Apple School Manager 網站 申請帳號

Imgur

這個申請有點麻煩, 概念大概是

Read more

GAM: 用 cli 管理 Google G-Suite (apps)

gam

Google g-suite 的管理介面真是出了名的難用
使用者列表是用 js 去讀出來的 最扯的是卷軸向下拉裡面的資料竟然會循環
稱了很久都沒去處理 直到今天才把 GAM 裝起來 以後改用這個管理

安裝步驟是又簡單又麻煩
打這行指令 就安裝完成了 不過這裡面很多步驟

bash <(curl -s -S -L https://raw.githubusercontent.com/jay0lee/GAM/master/src/gam-install.sh)

(debian 沒有 curl 要先 sudo apt-get install curl 一下)

依照步驟說明動作 有很多要用瀏覽器完成 所以要仔細看 貼網址 還有回來按 enter (記得複製不要按 ctrl-c 太爽 就給他中斷掉了)
因為步驟太多 就不貼了 不過都不需要看文件 應該可以完成

補一下參考資料
GAM 官方文件
批次操作文件

debian 安裝 softether VPN server

筆記一下 在 debian 上面安裝 softether VPN Server

很可惜的 softether 並沒有在 debian packages 裡面
必須手動安裝
為了方便追蹤版本 來使用 git 抓官方的 repo 過來安裝
先確認自己系統有沒有 git 沒有的話先去裝一下

首先先安裝 softether 會使用到的套件

sudo apt-get install libreadline6-dev libssl-dev lib32ncurses5-dev

然後用 git 抓官方的 repo 下來

git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git

再來做編譯前的設定

cd SoftEtherVPN
./configure

依照自己的系統選擇

Welcome to the corner-cutting configure script !

Select your operating system below:
1: Linux
2: FreeBSD
3: Solaris
4: Mac OS X
5: OpenBSD

Which is your operating system (1 – 5) ? : 1

Select your CPU bits below:
1: 32-bit
2: 64-bit

Which is the type of your CPU (1 – 2) ? : 2

編譯並安裝

make
make install

寫個 service 檔餵 systemd

vi /etc/systemd/system/softether.service

內容如下

[Unit]
Description=SoftEther VPN Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/bin/vpnserver start
ExecStop=/usr/bin/vpnserver stop

[Install]
WantedBy=multi-user.target

啟動服務

systemctl start softether.service

加入開機自動啟動

systemctl enable softether.service

其他設定就去 官網下載 SoftEther VPN Server Manager 來連線到 剛裝好的 server
第一次 密碼空白 進去後會有密碼變更提示

其他設定就看個人需求 去官方的 Tutorials 找一下設定就好了

批次清除 AD 上使用者的主資料夾

依序測試一下
然後最後一步驟批次下去

查詢 AD 上所有使用者 列出 cn / 登入帳號 / 說明 / 主資料夾

dsquery * domainroot -filter "(&(objectClass=person)(objectClass=user)(!objectClass=computer)(cn=*))" -attr cn sAMAccountName description homeDirectory -uco -limit 0 

測試是否能查到帳號: kerker

dsquery * domainroot -filter "(&(objectClass=person)(objectClass=user)(!objectClass=computer)(sAMAccountName=kerker))" -attr cn sAMAccountName description homeDirectory -uco -limit 0

測試清除 kerker 的主資料夾

dsquery * domainroot -filter "(&(objectClass=person)(objectClass=user)(!objectClass=computer)(sAMAccountName=kerker))"| DSMod user -hmdir "" -hmdrv ""

清除所有主資料夾含有 ftp 的帳號的主資料夾(真饒舌)

dsquery * domainroot -filter "(&(objectClass=person)(objectClass=user)(!objectClass=computer)(homedirectory=*ftp*))" -limit 0 | DSMod user -hmdir "" -hmdrv ""

搞定收工

解決 安裝 win7 鍵盤滑鼠不會動

今天在新電腦安裝 windows 7 的時候 鍵盤滑鼠不會動
可是在 BIOS 時明明會動 開機開到安裝畫面就不會動了
原來是因為 新的主機板是 usb3 控制晶片 win7 的安裝光碟沒辦法支援
所以我們得要把 usb3 的驅動程式 塞進安裝光碟(USB)裡面

以下以 win7 sp1 64bit enterprise 為例

建立 1 個資料夾(例如 c:\users\kerker\desktop\prep)

裡面再建立下列2個資料夾

  • usb3
  • mount

找到安裝光碟的

  • sources\boot.wim
  • sources\install.wim

把這兩個丟進 prep 資料夾 也就是你建的最上層資料夾

然後下載 intel USB3 driver

解開後把

  • USB_3.0_Win7_64_4.0.0.36\Intel USB 3.0 eXtensible Host Controller Driver PV 4.0.0.36\Drivers\Win7\x64
  • USB_3.0_Win7_64_4.0.0.36\Intel USB 3.0 eXtensible Host Controller Driver PV 4.0.0.36\Drivers\HCSwitch\x64

兩個資料夾中所有的資料丟進 自建的 usb3 資料夾

用系統管理員開啟 cmd

切換到你的 perp 資料夾

[code lang=text]
cd c:\users\kerker\desktop\prep
[/code]

掛載 boot.wim 寫入 usb3 的驅動

[code lang=text]
dism /mount-wim /wimfile:boot.wim /index:2 /mountdir:mount
dism /image:mount /add-driver:"usb3" /recurse
dism /unmount-wim /mountdir:mount /commit
[/code]

掛載 install.wim 寫入 usb3 的驅動

[code lang=text]
dism /mount-wim /wimfile:install.wim /index:1 /mountdir:mount
dism /image:mount /add-driver:"usb3" /recurse
dism /unmount-wim /mountdir:mount /commit
[/code]

如果掛載出錯 可用dismGUI查詢 index 掛載的號碼(通常是 install.wim 可能會不同)
如果卸載第一個出錯 掛第二個會掛不上 就自己建一個 mount2 改掛 mount2 就好了

完成後再把 boot.wim 和 install.wim 寫回你的安裝光碟(USB)就可以了


windows 安裝 USB 可用 Rufus 製作

製作 win10 sysprep answer file

安裝 Windows System Image Manager

下載 windows ADK

安裝時勾選部署工具

準備 windows 安裝檔案

把 windows10 iso 檔解開丟到硬碟裡 如:c:\Users\kerker\desktop\win10\
打開裡面 找到 sources 資料夾 確定裡面有一個 install.wim 檔案
先不用動他 等一下會用到

Windows 系統映像管理員

執行 windows 映像管理員
檔案 / 選取 Windows 映像…

選取 先前準備好的 windows 安裝資料夾\sources\install.wim

跳出這個就選是
接著等一陣子
好了之後左下 windows 映像會有一堆東西出現
接著選 左上選單 檔案 / 建立回應檔案
左下 windows 映像

找到 Windows 10 Enterprise\Components\amd64_Microsoft-Windows-Shell-Setup_10.0.14393.0_neutral\OOBE
右鍵 將設定新增至 pass7 oobeSystem(7)
右上方回應檔案區就會出現對應的設定

接著就把 OOBE 裡面的設一設

HideEULAPage
HideLocalAccountScreen
HideOEMRegistrationScreen
HideOnlineAccountScreens
HideWirelessSetupInOOBE

SkipMachineOOBE
SkipUserOOBE

都改為 true
(後來實測好多次發現 其實只需要 SkipMachineOOBE 就可以了)

存檔 檔名隨便 這邊先存在 c:\w10ans.xml

sysprep /generalize /oobe /unattend:c:\w10ans.xml

跑完會自動關機
做映像檔搞定收工

當然裡面還有很多可以設定
例如自動新增使用者之類的
有需要的自己翻吧

延伸閱讀:
OOBE 設定 Microsoft-Windows-Shell-Setup/OOBE
自動加入網域 Microsoft-Windows-UnattendedJoin/Identification/JoinDomain

[Firefox] youtube 部分影片跑不出來

最近看一些 youtube 發現 Firefox 跑不出來 可是 google chrome 可以
真是怪了 後來才發現是 vp9 格式問題

首先 先到 youtube html5 相容性檢查網頁 檢查

螢幕快照 2016-04-14 上午10.26.38

我的 MSE & WebM VP9 是驚嘆號
問題就出在這邊

螢幕快照 2016-04-14 上午10.31.24

要修正他 請進入 firefox 組態設定模式( 網址打 about:config )
找到 media.mediasource.webm.enabled
改為 true 就搞定了

ref: https://forum.moztw.org/viewtopic.php?f=2&t=41887

[Mac] OpenCV + Python

openCV 2.x + Python 2.x on MacOS

brew 安裝 python

$ brew install python

安裝 cmake

$ brew install cmake

安裝 openCV 2.x

$ brew install homebrew/science/opencv

會有警告訊息

Warning: opencv dependency gcc was built with a different C++ standard
library (libstdc++ from clang). This may cause problems at runtime.

不理他 可以用

安裝 numpy

$ pip install numpy

安裝完 /Library/Caches/Homebrew/opencv-2.4.11.tar.gz 有範例

$ mkdir dev
$ cd dev
$ tar xvfz /Library/Caches/Homebrew/opencv-2.4.11.tar.gz
$ cd opencv-2.4.11/sample/python2
$ python demo.py

如果用人臉辨識 特徵在 data/haarcascades