發表文章

目前顯示的是有「指引」標籤的文章

在 eeebox 上安裝 linux 之烏龍連連

 Linux 在很多老機器上表現一直不俗,為了榨取老機的最後價值,想在塵封多年的 eeebox 上裝 Linux 讓它做一台 NAS,雖然知道 synology 極好用,也明白它的價值在於它的整合和軟體,以及到處可以存取的好處,但是這 3000 還是想省下來,沒想到的是這麼多年了, Linux 也改進了不少,硬體也更新了,於是,又撞牆了  工作環境:     eeebox     Linux Mint     rufus  首先還是把系統先備一下,雖然不太可能再把 windows 裝回來,還是習慣做一下備份,結果 rufus 做的開機 usb 都開不進去,不管是 redo backup and restore、easeus、clonezilla,後來是看到 clonezilla 的版本不符的訊息才想到, XP 是 32bit 的時代,只好拿出舊 usb 開進 dos(好久不見) ghost(也是好久不見) 系統磁區  想當然爾,原本收錄的 64bit Linux 發行版都不能用,要重新下載 32bit 的,結果用 rufus 做的開機 usb ,硬是開不進去,一直出現類似 stdin: Not a typewriter,之類的訊息;kernal panic;開進 busybox (initramfs);Can not mount /dev/loop0 (cdrom.....);後來是降到 Linux Mint 16 而且用 DD 寫入模式做的開機 usb 才開進 live CD ,居然 1G ram 可以跑 Linux Mint Mate,可能是沒有用 syslinux 的方式做開機 usb 吧,目前已經能開進 liveCD 改天再來試試 syslinux 的方式看看,畢竟那時代沒有 UEFI 這惱人的東東,先求有、閃過 /dev/loop0 的問題先  沒想到搞老機器得要考古軟體    收工!

Mikrotik CCR 無法更新

 新版(7.8) RouterOS 釋出,想要看看有沒有 ROSE storage 可以用,先升級看看,然後就GG了  工作環境:     Mikrotik CCR          firewall DROP all input after some open services  錯誤訊息: can't resolve DNS ,想必是沒開 DNS 進來,看了一下 log 知道從哪個介面來,從哪個 src port 來     /ip firewall filter add action=accept chain=input comment="allow DNS response" in-interface=\     pppoe-out1 log=yes log-prefix="allow DNS response" protocol=udp src-port=\     53  錯誤訊息變了: connection timed out,google之後找到論壇有人討論     /ip firewall filter add action=accept chain=input comment="allow Update allow established connections" in-interface=\add action=accept chain=input comment="Allow Update allow established connections" connection-state=\     established add action=accept chain=input comment="Allow Update2 allow related connections" connection-state=\     related  可以更新了 收工!

無邊框瀏覽器

圖片
 有些網頁,像是今天想做的,監看的網頁,想要放在一個螢幕上,就盯著,看著,不想要其他的工具列、其他視窗、下方的windows啟始程式列干擾... 在久遠的記憶中,可以用無邊框模式,後來,年久失修的記憶果然是不可靠的,雖然可以用指令開啟捷徑,然後加一堆參數來啟動瀏覽器,但是這樣子前置設定很麻煩……而且進入後的操作因為和日常差很多,所以也很麻煩,好在年久失修的記憶還是找到了好小的不常用的圖示  捷徑的指令大致長得像醬子,但是這只能將瀏覽器開到指定網堆並將視窗開到最大,其他的話,就…算了,還是把生命用在更美好的地方吧 "C:\Program Files (x86)\blabla\chrome.exe" -kiosk -fullscreen -overscroll-history-navigation=0 https://somwhere.com  "C:\Program Files\blabla\firefox.exe" --kiosk=https://office.ricky.com -fullscreen chrome 的方式 firefox 的方式 快捷鍵是 [F11]  或是在筆記型電腦上可能要用 [fn] + [F11] 收工!

firefox 略過 /etc/hosts 的本機設定

 在一次更新之後,firefox 突然翻臉不認人,也不認檔,在 /etc/hosts 裏面的設定突然都失效了,擔然,我們要先求神,經過一番搏鬥,然後, firefox 持續發它的脾氣,任由我們在電腦前嘆氣,一大堆的 ff 設定終究無用,正當要放棄的時侯……最後再一搏! 工作環境:   laragon full 4.0.14 190508 php 7.3.*   windows 10   firefox 83.0 64bit ====================== 誤區,沒時間不想被玩可以跳過  ====================== 試過了一大堆是指哪一大堆呢?   about:support 裏的右上角那些個選項     保養一下 Firefox:重新整理 Firefox     試試安全模式:重新啟動但停用附加元件     嘗試清除啟動快取:清除啟動快取     如果你用完有成功, firefox 會出現帶我前往………,請記得重開機,可能重開後就翻車,不帶你前往……,也不問的喲   about:config     network 相關選項     keyword.enable 改成 false     dns 相關選項     whitelist 相關選項     suffix 相關選項 重開 firefox 、重開機不可計數,重點、別動 firefox 了!至少以上都失敗了(請記得重開機)。如果您有成功的話,歡迎留言告訴大家。  ====================== 誤區  ====================== 解法是什麼呢?解法就是比 laragon 勤勞一點點,laragon 太方便了,它會依據你的本地伺服器設定幫你設好 /etc/hosts 檔案、相對應的 apache/nginx 的 sites-enabled 檔案,所以,只要你在 www 資料夾下,新增了一一個專案資料...

Powershell 設定網路卡 IP

 網卡設定通常設好一次就不會再動了,但是如果你的筆電和你趴趴造,雖然開那個網路設定要按好幾下,才能進去把 DHCP 再開起來,已經讓你無奈地習以為常,那…那…那…有沒有可能,只要按一下就好? 工作環境:   Windows 10 Home   Powershell   Powershell script 當然,不一定要用 Powershell 才能達成這個效果,用傳統的 CMD 指令終端機也是可以,可以參照 這裏 ,大致上用到以下這些指令:   netsh interface ip set address “Network Interface Name” dhcp   netsh interface ip set address name= “Network Interface Name” static [IP address] [Subnet Mask] [Gateway]   net interface ipv4 set dns name="Wi-Fi" static 8.8.8.8 [index=2]   net interface ipv4 set dnsservers name="Wi-Fi" source=dhcp 最常用到的設定模式就是自動取得 IP 了,如果一定要用 Powershell 來完成的話,要找的指令和要調整的參數不少,參考了不少網站,完成後,長得大致上像這樣:   #移除 default-gateway   Remove-NetRoute -Confirm:$false   #移除 IP   Remove-NetIpAddress -Confirm:$false   #移除 DNS servers    Set-DnsClientServerAddress -InterfaceAlias '乙太網路' -ResetServerAddress   #移除 DNS 快取   Clear-DnsClientCache   #設定自動取得 IP 位址   Set-NetIPInterface -InterfaceAlias '乙太網路' -Dhcp Enabl...

今天再來處理 id 顯示 name 的問題

   用 php 抓資料是再簡單不過的事,用上 laravel 抓資料庫裏的資料應該也是,應該……,這次輪到 Show 的資料,使用那個不知為何一直連不上的外鍵,這次還是要處理數值轉出成名稱的問題。 工作環境:   laravel 7.*   dcat-admin 2.0.6-beta Show 資料列表用的是 show 區塊,像是 $show->field('foreign_id'); 再試了一下關係關聯的部份,結果還是撞牆,只能另(另)謀(闢)出(蹊)路(徑),胡搞蝦搞一番了。 $county = \App\Models\County::all()->pluck('name','id')->toArray(); $show->field('single')->using($county); 或是直接傳回 \App\Models\County::all()->pluck('name','id')->toArray() 又過了一關,仰賴 dcat 的 helper 還是得爬爬山。   收工!

今天還是要處理 id 轉換成 name

 用 php 抓資料是再簡單不過的事,用上 laravel 抓資料庫裏的資料應該也是,應該……,這次輪到 List 的資料,使用那個不知為何一直連不上的外鍵,這次還是要處理數值轉出成名稱的問題。 工作環境:   laravel 7.*   dcat-admin 2.0.6-beta List 資料列表用的是 grid 區塊,像是 $grid->column('foreign_id'); 再試了一下關係關聯的部份,結果還是撞牆,只能另(另)謀(闢)出(蹊)路(徑),胡搞蝦搞一番了。 $grid->column('foreign_id')->display(function($foreign_id){     $counties = \App\Models\County::all()->pluck('name','id');     $output = $counties[$foreign_id];     return $output; }); 或是直接 \App\Models\County::find($foreign_id)->name;  不論是哪一種 scaffold 都有崁,只希望 dcat 的崎嶇少一點,畢竟目前為止,它的介面最好用啊。   收工!

就只是想把 name id 抓出來倒到 selection 裏

用 php 抓資料是再簡單不過的事,用上 laravel 抓資料庫裏的資料應該也是,應該…… 工作環境:   laravel 7.*   dcat-admin 2.0.6-beta $form->selction('field_name')->options($options); 就是為了那個 $options 看文件,又要設關聯,又要改 new 啟始的條件,要加 ::with(['foreign_table']),奈何,不是路徑不對,不然 get() 時少了變數,要不就找不到 Controller, Model, object, method, variable ...........,啊不是說很簡單 )(*^%$%*()_)(*&^(*&^&(_)*& 結果還真的很簡單,跳過以上那些個說明,直接: $options = \App\Models\ModelName::all()->pluck('name','id'); //記得那個一開始的 \ 不能少了! 結果這個 options 的產出,官網文檔、演示站就是沒有,可能太低小下,略了! 青春也略了!   收工!

如果想架個自有的私人的 git 伺服器

開發程式的過程就是一直摸索撞牆和一直撞牆和想辦法爬牆的過程,期待或許有一天可以不用撞牆,甚至直接能把穿牆的過程。現在這個過程中,免不了要包括架個自有的、私人的 git 伺服器,最好的狀況是這個牆不用自已撞,MMMMM,一直以來試圖繞過這牆,如果你看到這牆了,mmmm 我撞過了,正要爬過,好在,畢竟躲得夠久了,很多人爬過了,還早就知道這不是牆,是個好城堡。 git 的免費服務通常必需公開工作成果給大眾取用的,然而有些工作可以見光,見了光,別人就看見你                                               的工作成果,有些工作不能見光,才做到一半的工作見了光,就得換工作了。這次說的未必是不能見光,有時是不想見光,所以想要架個自有的、私人的 git 伺服器(own private git server)。 工作環境:   windows 8+   openssh server   gogs   git/git-bash   putty     sourcetree   MySQL或是SQLite   官網有說要架個私有 git 伺服器,最重要的就是在伺服器你要存檔的地方 $git --bare init ,然後就是透過開放網頁或是 ssh 來存專案的檔案,這樣當然就涉及網頁和 ssh 伺服器,如果你剛好又想不用 linux ,想在 windows 下完成這些工作,MMMMMMMM 話說 windows 10 之後,終於把 openssh server 放進應用程式裏面,讓你新增選用功能,然後再搞好 git server,之後再管理一下憑證、把使用者的權限開一下,接著搞清楚 git CLI ...

Windows 10 之前的作業系統安裝 openssh server

希望之後能發現更簡單的解法,先用這個了,Windows 10 可以在程式裏面新增這個服務,就不需要這個了。 工作環境:   Windows 8   openssh 8.1.0.0 p1 beta 參考這篇內容 或是中文附圖的 : 下載 OpenSSH server 解壓縮到 c:\Program Files\OpenSSH 的資料夾下 以管理者身份 以管理者身份 以管理者身份 開啟命令終端執行以下指令 powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1 如果出現權限不足之類的紅字,表示沒有用管理員身份/權限執行 在 Powershell 下執行以下指令以註冊服務到作業系統 New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH SSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22 -Program "C:\Program Files\OpenSSH\sshd.exe"  到防火牆下設定 OpenSSH 的權限,允許使用 port22 連入本機 到服務中將 OpenSSH 啟用 使用 putty 之類的程式試著連到本機 完成! 收工!

安裝 voyager

拿起我那斬到快斷的手(誤),來安裝夢裏看到也會笑的 voyager 以便展開我的新旅程,之前做的那麼多,都是為了要在 laravel 裝上之後來裝 voyager ,雖然現在 voyager 不是維一的選擇,但是它也持續發展了一段時間,而且 UI 越來越完整,應該還是不錯的選擇,希望它可以撐得比 XOOPS 長。 工作環境:   Windwos 10 + virtualbox   guest: Ubuntu 18 server 現在的 voyager 不但已經有了使用者界面,而且現在官網上也有教學,當然,要學功夫,就學正宗,看著官網做,總是不會錯。 安裝一個新的 laravel 專案就叫 voyager 這樣會在你的家目錄底下新增一個 voyager 的 laravel 開發環境 $ laravel new voyager 記得要修正程式用來儲存檔案的資料夾的權限,像是 storage 以下的資料夾就是預設儲存檔案的地方 $ sudo chown -R $USER.www-data storage $ chmod -R 775 storage $ sudo chown -R $USER.www-data hook $ chmod -R 775 hook 導入 voyager 的套件的設定和指令,並且修改相關的參數 $ cd /voyager $ composer require tcg/voyager$ vim .env ------------------------- APP_URL=http://laravel.test:8080 DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=voyager DB_USERNAME=voyager DB_PASSWORD=your_voyager_password ------------------------- 完成修改的 voyager 相關設定大概會長成這個樣子,記得如果你的網址和你的 apache 設定要一樣,網址和埠號準確地寫在設定檔裏面,沒有設好的話,像是 media 中頭像、檔案這種和路徑相關密切相關的資料,就無法正確地顯示,導致網頁中圖片的部份沒有顯示或...

voyager 的中文界面設定

多語系支援的需求雖然一開始不會浮現,但是早晚還是得要面對的事情, voyager 事先就實作了,需要的就是一點翻譯的工作。 作業環境:   Windows 10 + virtualbox   guest: Ubuntu server 18 設定所需的檔案位置在這裏: /your_app_path/vendor/tcg/voyager/publishable/lang預設只有 zh_CN 自已轉了內容存到 zh_TW 就可以用了。 之後登入使用者的編輯介面中 local 有新的 zh_TW 可以選用,再次登入的時侯就會看到中文的介面了,用詞當然不是全部和我們的習慣一樣,再自已去語系檔裏改一下嚕。 收工!

php composer 的安裝方式更新

印象中 composer 很好裝的,怎麼官網的說明變得多了,卻也感覺讓一個簡單的安裝變得複雜,做為開源工具的使用者,又要開始游牧了,這種生態好像就像是開源工具使用者的 DNA ,自然就難以擺脫游魂一般的命運了 如果直覺的依據官網提供的裝法其實很簡單:把這裏的4行複製貼上到終端機的命令列中: https://getcomposer.org/download/ $cd --------- $php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" $php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" $php composer-setup.php $php -r "unlink('composer-setup.php');" --------- 又參考這個:https://www.digitalocean.com/community/tutorials/how-to-install-and-use-composer-on-ubuntu-18-04 一步一步跟著作也可以裝好 But, 人就是懶又貪,還看到官網寫著,可以用程式來安裝,在這裏: https://getcomposer.org/doc/faqs/how-to-install-composer-programmatically.md  得再多試幾次,我真是愛自找麻煩的傢伙 工作環境: Windows 10 ...

laravel 的 apache2 伺服器和 VM 相關設定

除了要把 laravel 的網頁伺服器帶起來以外,還想在連線的時侯不要用記不起來的 ip 而用網址名稱來連線,所以調整 apache 的設定,以及網址的對應。 工作環境:   Windows 10 + virtualbox   guest: Ubuntu 18 server   Windows IP: 192.168.ooo.xxx laravel 安裝在   /home/your_name/your_laravel_path/public 網址與 IP 的對應檔案   C:\Windows\System32\drivers\etc\hosts 其中 apache 使用以名稱對應的虛擬網頁,ServerName 要和網址對應檔的名稱對應   ServerName      laravel.test    <====>    127.0.0.1    laravel.test 加上 virtualbox 的埠號對應(8080)   Windows 10 host 瀏覽器 > laravel.test:8080 > VM > 127.0.0.1:8080  laravel.test.conf NameVirtualHost *:8080 Listen  8080 <VirtualHost *:8080>     ServerName      laravel.test     ServerAlias     www.laravel.test     # The location of our projects public directory.     DocumentRoot    /home/your_name/yo...

laravel 剛剛裝好無法進入

時至今日,真的很能體會關先生當初過五關、斬六將的辛苦,為了要把 laravel 裝起來,已經不知道過了幾關,斬的手都骨折了。好不容易,到了可以連到 laravel 的時侯了,帶著期待的心情,開啟瀏覽器,連到 laravel.test:8080,登!登!登!登! MMMMMMMMMmmmm......... 不是那個白底的 Laravel 的 welcome page 是那個俗稱亂碼的&^%$^&*(*&^%%&* 工作環境:   Windows 10 + virtualbox   guest: Ubuntu 18 server 好在左上方的訊息很清楚,長得像這樣子的 The stream or file "/path_to_laravel/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied ... 又是權限問題,那就簡單一些,谷溝大神說已經有人遇過了:   sudo chown -R $USER:www-data storage   chmod -R 775 storage 再連一次 laravel.test:8080 總算是還給我白皙首頁 開心 收工!

設定 laravel 執行檔的路徑 以便日後使用

安裝完成 laravel 之後,laravel 的執行檔會在家目錄下的 .composer/vender/bin/ 的資料夾裏,所以,預設要執行 laravel 時,就要 .composer/vender/bin/laravel 才能執行,當然不能搞到這麼麻煩,所以,再來調整一下。 工作環境:   Windows 10 + virtualbox   guest: ubuntu 18 server   composer global   laravel global $vim .bashrc 在檔案最後方加上一行,真正的路徑請依你的實際狀況調整 export PATH="$PATH:$HOME/.composer/vendor/bin" $source .bashrc 此時 $laravel 會輸出 Laravel Installer 2.0.1 Usage:   command [options] [arguments] Options:   -h, --help            Display this help message   -q, --quiet           Do not output any message   -V, --version         Display this application version       --ansi            Force ANSI output       --no-ansi       ...

Mikrotik routerOS 的通透模式 transparent mode

人不是機器,一定得休息,網路設備,鐵打的,日以繼夜,吃電不喝水,難道真打不死?不是不是!撐得久點就是,時間到了,人該花的錢、人該做的工,跑不掉。 話說這次等著用電郵信箱,還等了很久的是 老 闆 本 人 ( 驚! ),這麼巧,偏偏機器老死在手邊一堆工作在趕的時侯,一開始還以為是伺服器的空間滿了,任務結束之後立馬去看了機器,不是空間滿了耶!!!奈啊捏!!暗暗叫( 罵 了 好 幾 聲 髒 話 )苦!那就不是一時半刻可以解決的了,查了查,辛勤工作10年以上的防火牆腦子燒了(CPU使用率100%),雖然看起來還能幫你指路,但是指的不好,還會放空(登入沒作幾個動作就給你一片空白的操作頁面),囧,「科技,始終沒有人性」,總在你最需要它的時侯拋棄你。一下子搞不定,先找高手,廠商的工程師人很好,登進去看了下,原來已經是前2代的機器,早就停產(順便表揚了一下勞苦功高的機器),閻王沒放手的,妙手果然還是留不住,還好手上有台新機,平時除了 NAT 用不到進階的功能,雖然有處置的方向,這新朋友和我也不是很熟啊~~(其實網路的東東和我都不熟啊~~嗚嗚嗚、哈哈哈),想讓新機上線還得先做些實驗,想就苦手,反正死馬當活馬醫,救得回來可以少花很多錢,這攤生意穩賺不賠,試試唄,萬分感謝老闆的耐性。 工作環境:   Mikrotik 路由器(routerOS)   應用伺服器 變動最少、最好的設定方式是以不變應萬變,設一台一般般、一模模一樣樣的防火牆來代替原本已經 RIP 的機器就是我的方針,依舊採用通透模式讓伺服器繼續服務。 拜了好一下股溝大神,還真難找到相符的文件,很難就表示得花很多時間找,再加很多時間拜讀不能達成目標的資料,總算找著好心人放了文件在網站上,圖說都有,超感動。 routerOS 上通透模式就是橋接( bridge ),再加上封包過濾( filter )。 特別的是橋接的時候不能用預設的 NAT 橋接設定,所以用了最後2個介面(eth4, eth5),我搞不懂,但是我懂得抄別人成功的。 在防火牆上把要提供的服務開放,透過封包過濾把服務的埠開通。 先在自已的桌上設好,試過,可以通,調成機器所在的環境設定,放到機櫃裏, Mmmmmmm……………………,連不上。最遠的距離莫過於機器就在面前卻怎麼也連不上。 讓設定生效: 只記得之前來裝...

UEFI 開機時啟用新的硬體 及 USB 設備

這次還有個大魔王,UEFI 這種新型的 BIOS , 大致上來說,它擴充了傳統 BIOS 的功能(號稱),阻絕了,阻絕了,阻絕了一般的使用者透過 BIOS 來對電腦做一些進階的操作,但是也把原本很容易的維護工作,像是備份和還原系統變得很複雜。 調 BIOS 很煩,大致上來說只是為了要加入硬碟,要開 Boot -> BBS 把新的硬碟加進去,才能在 Boot -> Secure Boot -> 開機設備中選取新的硬碟,這裏可以定開機設備的順序。 如果 BIOS 還要從 USB 開機,要關閉 Boot -> Secure Boot ,Boot -> CSM(compability Support Module) 開啟相容支援模組,Boot -> CSM(compability Support Module) 其下的 可開機裝置控制 -> UEFI 和傳統韌體(legacy),之後其他的可以改成 傳統韌體優先,在 進階 -> USB configuration -> Legacy USB 支援 -> 開啟。 僥倖逃過大魔王的魔掌。 收工! 參考小弟過程中的血淚 和 網址: http://a7432186.pixnet.net/blog/post/343355806-asus-%E4%B8%BB%E6%A9%9F%E6%9D%BF-bios-uefi-%E9%96%8B%E6%A9%9F-%E6%94%B9%E5%82%B3%E7%B5%B1%E9%96%8B%E6%A9%9F-legacy

ubuntu 安裝了 docker 套件之後出現 docker is currently not installed

情境: 使用 apt-get 安裝 docker 之後,要確認 docker (docker -v)是否已經安裝完成,出現 docker is currently not installed 作業環境: windows 10  virtualbox host: ubuntu 14 解決: 裝 docker.io : sudo apt-get install docker.io   測試是否安裝完成: docker -v ,不再出現 docker is currently not installed 的訊息 網站上也有說直接用 docker 的來源安裝: sudo curl -sSL https://get.docker.com/ | sh 這個方法是原生的方式,大概是什麼版本的 linux 都行的吧,但是先跳過這個了。(未測) 收工

在 virtualbox 裏掛載分享的資料夾

不知道怎麼搞的,在 windows 上要安裝 filezilla 硬是被防毒軟體擋了下來,所以只好繞個小路,用分享資料夾(shared folder)的方式,在虛擬機器和本機端之間傳遞檔案。那知道… 作業環境: windows 10 Virtualbox 5.2.2 Linux Ubuntu guest ○○xx: 一開始裝好的 Linux 在 virtualbox 裏面要掛載(mount)分享資料夾( mount -t vboxsf share /mnt/share )是辦不到的,會出現類似( unknown type 'vboxsf' ) 的錯誤訊息。 所以聽說要裝 VBoxGuestAdditions.iso 裏的應用程式,裝的時侯需要先裝 gcc make perl 這3個東東。 但是呢,不好笑的是裝完了之後,重開機之後還是不能掛載。   相關指令:   $sudo mount /dev/cdrom /mnt/cdrom   $sudo apt-get install gcc make perl   $sudo ./VBoxLinuxAdditions.run   $sudo init 6   $sudo mount share /mnt/share YES: 其實是要裝 virtualbox-guest-dkms 裝了就能掛載了   相關指令:   $sudo apt-get install virtualbox-guest-dkms   $sudo mount share /mnt/share   $ls /mnt/share   可以了! 收工!