2023-06-29

在Hyper-V上跑ubuntu 22.04 Desktop, 裝完後一登入就凍住

如果你也遇到這情況, 你可以執行以下步驟
按 Ctrl+Alt+F3 進入 virtual console. (按Ctrl+Alt+F1 可以再回到GUI)
登入後執行下面指令 (更新kernel)

* sudo add-apt-repository ppa:cappelikan/ppa -y
* sudo apt update
* sudo apt install mainline
* sudo mainline --install-latest
* sudo reboot

2020-05-13

WSL 重設密碼

前言

一段時間沒開啟 wsl 中的 ubuntu, 結果忘記了密碼, 沒辦法更新...

重設方式


  • 開啟一個 powershell 視窗
  • 輸入 wsl -u root
    • 如果有安裝多個子系統 (我就裝了 Ubuntu 跟 Kali), 則輸入
      wsl -d [子系統名稱] -u root
    • 如果不確定字系統名稱是甚麼, 則可以用下面指令查詢
      wsl -l
    • 不帶參數 -d 的話, 會使用預設的子系統
  • 進入後, 直接透過 passwd 重設密碼


2018-10-12

透過 python 建立 ftp service 跟 SMB service 的方式

前言

在 kali 上做一些測試, 有時需要將 windows 上的資料回傳到 kali 上.

但是又不想要直接安裝 samba 開 share folder 或是直接開個 ftp 的 service.

想要用python 直接開個簡易的服務可以暫時接檔案.


FTP

需先安裝 pyftpdlib

pip install pyftplib

執行方式

python -m pyftpdlib -w -p 21 -d ~/home/foldername

參數說明

-w : 設定允許匿名登入

-p : 指定 port

-d : 指定 ftp 使用的目錄


SMB service (share folder)

這功能需要使用到 impacket (https://github.com/SecureAuthCorp/impacket)

不過在 Kali 上已經有了,

所以直接執行下面指令, (如果沒有的話,直接clone上面的github專案)

python /usr/share/doc/python-impacket/examples/smbserver.py sharename ~/home/foldername

參數說明

sharename : 要顯示的 share folder 名稱

~/home/foldername : 在 Kali 上要分享出來的資料夾

2018-09-19

移除 docker 中沒有 tag 的image


移除有 <none> 字串的 images

docker rmi $(docker images| grep "<none>" | awk '{print $3}')

說明 :

docker images : 列出 images (不包含 intermediate images)

grep "<none>" : 列出包含<none>的

awk '{print $3}' : 取第三欄, 也就是images id

docker rmi $() : 移除指定id的image


移除特定repository名稱,而且沒有tag的 (有<none>字串)

docker rmi $(docker images| grep -E "^test.*<none>" | awk '{print $3}')

說明 :

grep "^test.*<none>" : 列出開頭為test且包含<none>的

2018-05-04

Ubunutu 上安裝python2, 3, pip 跟virtualenv

# 安裝 python2, python3 (ubuntu 17.04已經預設安裝python3, 但沒有python2)

sudo apt install python python-dev python3 python3-dev


# 安裝 pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python get-pip.py

# 安裝 virtualenv
sudo pip install virtualenv

# 檢查版本
python –-version
python3 –-version
pip –-version
virtualenv –-version

# 透過 virtualenv 建立 python3 的開發環境
virtualenv –-python python3 devenv

# "進入"開發環境
source devenv/bin/activate

# "離開"開發環境
deactivate

2018-04-24

vmdk 轉換成 vhd

先下載跟安裝 Microsoft Virtual Machine Converter 3.0 : https://www.microsoft.com/en-us/download/details.aspx?id=42497

安裝完後, 使用管理者權限開啟powershell視窗 (Run as administrator)

然後先載入剛剛安裝的Cmdlet

Import-Module 'C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1'

載入後再執行下列指令執行轉換

ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath d:\VM\VM-disk1.vmdk -VhdType DynamicHardDisk -VhdFormat vhdx –destination d:\VM\

執行完後,可以在指定的資料夾取的同樣名稱的vhd檔


ref: https://blogs.msdn.microsoft.com/timomta/2015/06/11/how-to-convert-a-vmware-vmdk-to-hyper-v-vhd/

2018-04-09

Ubuntu 17.10 使用固定ip

Ubuntu 17.10已經不再使用 /etc/network/interfaces 設定ip了.
取而代之的是netplan
所以要修改網卡設定的話, 開啟 /etc/netplan/01-netcfg.yaml
修改如下

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.8.101/24]
      gateway4: 192.168.8.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

修改完後, 執行下列指令測試
sudo netplan --debug generate
沒問題的話, 執行下列指令套用
sudo netplan apply

ref : https://askubuntu.com/questions/967695/ubuntu-17-10-will-not-accept-static-ip?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

2016-08-05

Asp.net URL Rewriting

需求

如果User在網址上輸入特定路徑但是任意檔名的時,皆下載同一個檔案

例如:

http://localhost/Files/zip001.zip 或是 http://localhost/Files/zip002.zip

都是下載 [WebRoot/ZIPFiles/A.zip]

http://localhost/Files/txt001.txt 或是 http://localhost/Files/txt002.txt

都是下載 [WebRoot/TXTFiles/A.txt]

 

解決方式

這樣的需求基本上就是用URL mapping或是URL rewriting就可以了.

下面就是使用 URL Rewriting 的設定方式

 

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="ZIP file handler" stopProcessing="true">
          <match url="^Files/?(.*).zip$" />
          <action type="Rewrite" url="/ZIPFiles/A.zip" redirectType="Permanent"/>
        </rule>
        <rule name="TEXT file handler" stopProcessing="true">
          <match url="^Files/?(.*).txt$" />
          <action type="Rewrite" url="/TextFiles/A.txt" redirectType="Permanent"/>
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

2015-06-08

將 windows live writer 的草稿存在網路磁碟上

一直都是在用 windows live writer 寫部落格.

雖然已經非常久沒有寫甚麼東西了...

不過我還是每台電腦都有裝.桌機或是筆電...

而writer的儲存都是存在 My Documents\My Weblog Posts 下,

如果你想要在每台上都可以編輯,如果不是直接存到server上當草稿,

就是要將local的檔案複製來複製去,

前兩天看到一個修改儲存路徑的方式,

因為可以修改儲存路徑,所以就可以直接將草稿存到網路磁碟上,

像是存在 OneDrive, DropBox 或是 Google drive 上了.

而修改的方式如下:

  1. 開啟regedit
  2. 將左側樹狀結構切換到下面路徑
    HKEY_CURRENT_USER\Software\Microsoft\Windows Live\Writer
  3. 然後在右側內容中按滑鼠右鍵,新增一個字串值(String Value),內容如下
    Name : PostsDirectory
    Data : {你要儲存的路徑}
  4. 關閉regedit, 結束

改完後,當你再開啟windows live writer時, 他就會在你指定的路徑下產生 Drafts 跟 Recent Posts 的資料夾,這樣就完成了...

 

ref. Syncing Windows Live Writer Drafts to the Cloud (Dropbox) and other bug fixes

2015-04-02

asp.net專案使用SignalR

SignalR 到現在也已經到了2.2.0

從 1.x 的時候就偶爾玩一下,

2.0 開始只支援 .net framework 4.5,

所以 1.x 要到 2.0 就要整個專案有個升級.

不然就是停留在 1.x 就好了.

 

但是網站並沒有用 MVC, 所以照網路上的一些教學弄,總是弄不起來…

ref : Upgrading SignalR 1.x Projects to version 2

 

症狀 : "Signalr/hubs" not found

 

2.0後,不需要在 global.asax 中的 Application_Start 設定 RouteTable.Routes.MapHubs() 了.

改成需要加個 Startup.cs 設定.

不過我的專案是一般的 asp.net 專案, 它似乎不認得或是不知道要執行這個檔案

經過 google 後才發現,要在 web.config 中加上一個設定

 

<add key="owin:AutomaticAppStartup" value="true" />

 

另外,如果加了後還是沒有執行,

或許是因為他不知道要執行這個 startup, 所以就在加上下面這個設定.

 

<add key="owin:AppStartup" value="SingalRBase.Startup" />

 

ps. SignalRBase.Startup 是 startup.cs 中的 namespace 跟 class name

在Hyper-V上跑ubuntu 22.04 Desktop, 裝完後一登入就凍住

如果你也遇到這情況, 你可以執行以下步驟 按 Ctrl+Alt+F3 進入 virtual console. (按Ctrl+Alt+F1 可以再回到GUI) 登入後執行下面指令 (更新kernel) * sudo add-apt-repository ppa:capp...