標籤: ubuntu
ubuntu賦予使用者sudo權限
沒什麼整理的Ravada vdi安裝筆記
Ravada vdi 網站資源
- https://ravada.upc.edu/
- https://github.com/UPC/ravada
- https://ravada.readthedocs.io/en/latest/docs/INSTALL.html
- https://ravada.readthedocs.io/en/latest/docs/install_guest_windows10.html
服務器安裝
1. 實體機(or lxc in pve)安裝ubuntu 18.04
CPU需支援虛擬功能 ,
若使用pve的 lxc , 該 lxc container需在options中要啟用nest指令, 並且需修改主機中該lxc container的設定
mkdir -p /dev/net vi /etc/pve/lxc/<lxc_id>.conf 增加 lxc.mount.entry = /dev/kvm dev/kvm none bind,create=file
lxc.cgroup.devices.allow: c 10:232 rwm
啟後,確認權限是否為666,若沒有就要到pve主機(非lxc) 改一下 chmod 666 /dev/kvm
ps. pve的lxc安裝ravada 後來測試還是失敗 (2020/05/04)
且該container確認安裝以下套件 sudo apt-get install virt-manager ssh-askpass-gnome --no-install-recommends sudo apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker
2 安裝mysql
sudo apt-get update sudo apt-get upgrade sudo apt-get install mysql-server sudo mysql_secure_installation sudo mysqladmin -u root -p create ravada sudo mysql -u root -p ravada -e "create user 'rvd_user'@'localhost' identified by 'Pword12345*'" sudo mysql -u root -p ravada -e "grant all on ravada.* to rvd_user@'localhost'"
3 查看mysql設定檔案,可視需要修改使用者密碼,但要搭配上一步驟一起修改
sudo vi /etc/ravada.conf db: user: rvd_user password: Pword12345*
4 安裝相關套件
sudo apt-get install perl libmojolicious-perl mysql-common libauthen-passphrase-perl \ libdbd-mysql-perl libdbi-perl libdbix-connector-perl libipc-run3-perl libnet-ldap-perl \ libproc-pid-file-perl libvirt-bin libsys-virt-perl libxml-libxml-perl libconfig-yaml-perl \ libmoose-perl libjson-xs-perl qemu-utils perlmagick libmoosex-types-netaddr-ip-perl \ libsys-statistics-linux-perl libio-interface-perl libiptables-chainmgr-perl libnet-dns-perl \ wget liblocale-maketext-lexicon-perl libmojolicious-plugin-i18n-perl libdbd-sqlite3-perl \ debconf adduser libdigest-sha-perl qemu-kvm libnet-ssh2-perl libfile-rsync-perl \ libdate-calc-perl libparallel-forkmanager-perl libssh2-1-dev libssh2-1 libdate-calc-perl \ zlib1g-dev libpcre3-dev zlib1g-dev libpcre3-dev make gcc gcc-4.8 \ libdatetime-perl libdatetime-locale-perl libdatetime-timezone-perl libparams-validationcompiler-perl libspecio-perl libio-stringy-perl libpbkdf2-tiny-perl \ libfile-sharedir-perl libclass-singleton-perl libsub-quote-perl libexception-class-perl libref-util-perl libclass-data-inheritable-perl libclass-inspector-perl net-tools
sudo reboot
底下0.10-1_all版本, 可至 http://infoteleco.upc.edu/img/debian/ 確認是否最新
wget http://infoteleco.upc.edu/img/debian/libmojolicious-plugin-renderfile-perl_0.10-1_all.deb sudo dpkg -i libmojolicious-plugin-renderfile-perl_0.10-1_all.deb
sudo perl -MCPAN -we 'install "Net::SSH2"'
5 安裝Ravada
以下ravada版本0.7.0 可上官網確認最新版 http://infoteleco.upc.edu/img/debian/
wget http://infoteleco.upc.edu/img/debian/ravada_0.7.0_ubuntu-18.04_all.deb sudo dpkg -i ravada_0.7.0_ubuntu-18.04_all.deb sudo apt-get update sudo apt-get -f install
6 設定啟動參數
sudo systemctl daemon-reload sudo systemctl enable rvd_back sudo systemctl enable rvd_front sudo systemctl start rvd_back sudo systemctl start rvd_front
7 設定qemu 壓縮
sudo vi /etc/libvirt/qemu.conf 加上以下參數 save_image_format = "bzip2"
8 重開機後,新增使用者,並且同意該使用者為管理員
sudo /usr/sbin/rvd_back --add-user <使用者>
9 使用瀏覽器連線登(上一個步驟新增的使用者登入)
10 登入ravada後, 安裝VM(win 10)
記得要先把win10 安裝檔案放到ravada主機上(/var/lib/libvirt/images), 然後執行以下指令刷新列表
sudo virsh pool-list
ps.安裝win 10會很痛苦, 滑鼠很慢,之後安裝驅動程式就正常了
11 win10安裝完畢,登入win10下載驅動程式並且安裝起來
安裝virtio驅動程式 https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/ 執行qemu-ga-x64.msi (64-bit) or qemu-ga-x86.msi (32-bit)
安裝spice guest tools https://www.spice-space.org/download.html https://www.spice-space.org/download/windows/spice-guest-tools/spice-guest-tools-latest.exe
#安裝win10後關機, 編輯開機設定,讓vm的cpu與本機同步 virsh edit <vm name> 加上host-passthrough(直接使用原本的cpu), 以及核心數4(請依照實際cpu數修改) <cpu mode='host-passthrough'> <topology sockets='1' cores='4' threads='1'/> </cpu>
服務器端安裝完畢,找一台主機,使用spice方式連線
若是 linux,樹梅派,可安裝virt-viewer這套件, 安裝完畢可以執行remote-viewer進行連線 若是windows,請到此下載 https://virt-manager.org/download/
ps 目前不要嘗試docker, 若要嘗試,請切換branch到369_dockers, 但有一些perl 的bug,要自己修正才能執行,可是最後又會出現backend錯誤
virsh備份還原
備份
1. 請參考 https://kafeiou.pw/2020/03/25/2303/ 透過virsh方式備份xml 2. 備份 mysql mysqldump -u root -p ravada domains > domains.sql mysqldump -u root -p ravada networks > networks.sql
還原
1.將/var/lib/libvirt/images 同步到新的主機上 2.同步相關xml 3.資料庫還原
單一vdi還原
除了使用virsh還原外,還需以下指令, 然後再到網頁調整一下硬體設定
rvd_back --import-domain=<machine name>






遊走於MacOS與ubuntu的檔案系統
我已經很久沒有把windows當作主機的開機作業系統,並不是windows不好用,反而是windows很常用,常用到若要重新安裝,會非常頭痛.
因此主機開機作業系統就改成ubuntu 18.04, 然後使用virtualbox掛載windows 10 虛擬主機, 這種方式最方便.
後來因為需要開發iOS app, 決定將原本的pc重灌成黑蘋果Mojave(10.14.x) , 期間遇到的問題就是檔案格式要如何滿足MacOS與ubuntu.
網路上大家都建議使用extFAT的方式, 這樣windows與mac 都可以相容, 但是效能不彰, 也嘗試過讓黑蘋果下載外掛讓ntfs變成可以寫入的狀態, 但是不穩定.
最後突然發現HFS+(Mac Extended,no journaled)的格式可以相容MacOS與ubuntu, 雖說windows不相容, 不過沒關係, 我的目標是資料硬碟相容於MacOS以及Linux就好了, 只要讓這兩個作業系統透過分享目錄的方式,windows就可以存取資料了.
格式化HFS+的方式有兩種, 一種是ubuntu開機直接硬碟格式化成HFS+, 另一種是MacOS開機, 格式化成HFS+.
ubuntu格式化直接就是no journaled, 但是MacOS居然只能選with journaled的格式, 後來發現MacOS可以下指令改成no journaled.
sudo diskutil disableJournal /dev/diskXXX
ps. diskXXX是磁碟分割代號,可由Disk Utitity取得
ubuntu 移除有問題的套件
linux防毒軟體clamav啟用google Safe Browsing
偶的郵件伺服器使用postfix + amavisd-new+clamav
最近很不好意思的發現 clamav 很早以前就支援google Safe Browsing , 除了防毒外,還可以過濾掉一些不正當的連結, 作法如下:
1. 修改/etc/freshclam.conf , 加上:
SafeBrowsing yes
2. 重啟clamav service, 或是postfix 透過amavisd不需要重啟service, 只要執行freshclam這個指令即可
查詢linux上相關的服務
openfire企業內部即時通訊
若公司內部的訊息溝通, 須要考量資訊安全, 通常建議安裝一套企業內部即時通訊軟體,
在這裡介紹一款偶用了至少10以上的老牌開源即時通訊伺服器 – openfire
openfire支援XMPP標準通訊協定, 支援linux , window , 與 mac , 安裝也非常簡便,
能支援AD (LDAP) , 只要搭配支援 XMPP 的用戶端軟體 如 pidgin(洋涇浜) , jitsi desktop(神燈巨人) , 與 spark
咖啡偶在此強烈建議用戶端使用 jitsi desktop , 能撥打電話, 進行視訊會議, 或是分享桌面給IT人員, 非常適合小公司使用,
例如兩岸三地需要視訊會議(又不想使用 wechat , skype , line ) , 就可以自架設openfire + jitsti, 再 加上適當的攝像頭, 高感度麥克風, 就能輕鬆完成視訊需求.
,
clonezilla再生龍超好用
自從決定要捨棄vmware esxi 改用 proxmox ve之後 , 連帶思考 vmware converter 的替代方案,
剛好想起clonezilla 再生龍 , 使用後讓我很驚訝, 很棒的一個備份解決方案, 最重要是免費.
再生龍真的是台灣之光, 由台灣的國家高速網路與計算中心所開發.
我試用了兩個作法, 包括:
1. p2p 異機還原(筆電轉桌機)
我的筆電lenovo x230安裝win10, 再由再生龍備份到隨身硬碟, 然後再由隨身硬碟還原到桌機,
還原完畢之後,桌機的win10出現裝置重新設定的訊息,過一陣子再改一下網路設定就能正常使用了.
我想若原機備份還原, 應該就不會出現重新設定訊息,有點類似早期的norton ghost方式.
2. p2v 筆電轉virtualbox vm
筆電已安裝virtualbox , 然後新增一個win10 vm, 該vm含一個虛擬硬碟(還原用途),
vm啟動時, 使用再生龍開機, 掛載隨身硬碟(含x230的備份檔案), 再將隨身硬碟中的x230還原到vm的虛擬硬碟中,
還原成功後, 讓vm重新啟動, win10 一樣會出現裝這重新設定的訊息, 最後完成開機, 成功實現實體主機轉換成虛擬的作法.
再生龍開機後能提供很多功能, 也能連上網路, 掛載網路磁碟機, 再將網路備份的系統還原至新裝置, 非常方便, 剛好偶有一個512MB的隨身碟, 拿來再利用, 非常合適!
Linux上如何將資料夾同步到另一個資料夾(rsync)
rsync 很好用,搭配ssh, 可再加密的情況下, 拿來同步遠端資料到本地端,
另一個用途就是複製本地端目錄,到另外一個目錄上
/usr/bin/rsync -avhW --no-compress --progress "來源目錄" "目標目錄"