2019年1月22日 星期二

Proxmox Mount older CIFS storage from WebUI


設定掛載 CIFS 版本
pvesm set sharefloder -smbversion 2.0
pvesm set sharefolder -smbversion 2.1

相關設定檔
/etc/pve/storage.cfg

2019年1月19日 星期六

Proxmox ZFS DEGRADED 更換硬碟

目標更換硬碟 /dev/sdb

1.複製分割區資訊
sgdisk --replicate=/dev/sdb /dev/sda
sgdisk --randomize-guids /dev/sdb

2.安裝 Grub
grub-install /dev/sdb

3.取代 zpool 錯誤硬碟
zpool replace rpool /dev/sdb2

相關指令
zpool status -v

2019年1月15日 星期二

Proxmox 5.2 使用 sssd windows ad 認證

安裝相關套件
apt install -y adcli realmd krb5-user samba-common-bin samba-libs samba-dsdb-modules sssd sssd-tools libnss-sss libpam-sss packagekit policykit-1


查詢網域資料
sudo realm discover windows-domainname

加入網域
sudo realm join windows-domainname

退出網域
sudo realm leave windows-domainname

設定帳號 存取權限
sudo realm permit -all
sudo realm deny -a
realm permit --groups ‘domain.tld\Linux Admins’
realm permit [email protected]
realm permit DOMAIN\\User2
realm permit User2@DOMAIN

相關工具
pam-auth-update

sssd realm discover: Not authorized to perform this action

Bug 90683 - realmd doesn't authorize root when polkit is not available

安裝 polkit package (packagekit policykit-1 )

2019年1月7日 星期一

LVM Thinpool 筆記

建立 Thinpool
lvcreate -L $Size --thinpool $ThinPool $VG

建立 Logical volume
lvcreate -V $Size --thin -n $LogicalVolume $VG/$ThinPool

2019年1月4日 星期五

GOLANG SQLite3 範例

安裝
go get github.com/mattn/go-sqlite3

sqlite3 建立 測試 table
CREATE TABLE a(id integer primary key autoincrement,a1,a2,a3);


範例
package main

import (
  "database/sql"
  "fmt"
  _ "github.com/mattn/go-sqlite3"
)

func checkErr(err error) {
  if err != nil {
     panic(err)
  }
}

func main() {
  db, err := sql.Open("sqlite3", "./foo.db")

  stmt, err := db.Prepare("INSERT INTO a(a1, a2, a3) values(?,?,?)")
  checkErr(err)

  res, err := stmt.Exec("a1", "a2", "a3")
  checkErr(err)

  id, err := res.LastInsertId()
  checkErr(err)
  fmt.Println("id=", id);

  rows, err := db.Query("SELECT * FROM a")
  checkErr(err)

  var uid int
  var a1,a2,a3 string
  for rows.Next() {
    err = rows.Scan(&uid, &a1, &a2, &a3)
    checkErr(err)
    fmt.Println(uid, a1,a2,a3)
  }
}

GOLANG 出現 cannot refer to unexported name

原因:Package 導出函數必須為大寫,通常出現在自定 Package 函數名稱使用小寫

2019年1月3日 星期四

raspberry pi 無法mount NTFS

訊息:
$MFTMirr does not match $MFT (record 0)

解決方法:
1.apt-get install ntfs-3g
2.ntfsfix /dev/sdb1