Computer Science

Laravel log 的權限問題

[華語, cmn-Hant-TW] 一直以來 Laravel 預設在本機上的 log 是單一檔案 (single),當然也可以用每天產生一個檔案 (daily) 的形式,只要在 config 裡面設好即可,設定方式隨著版本不同而有所不同,不過就以往來講我會儘量還是用 single,然後用系統的工具 (newsyslog 或是 logrotate 不同系統有不同的滾動工具) 去整理成類似 /var/log 下的形式,避免檔案太大 會這樣做主要的原因還是權限,通常來講因為網頁存取產生的 log,會以 www (依系統不同,可能是 httpd 或 www-data) 的權限寫入,使用者本機操作的話,則是用使用者的權限寫入,如果檔案還沒產生的話會自動產生,自動產生的檔案一般情況下預設是 644,也就是只有本人可以存取,假設產生檔案的是本機使用者,那當網頁遇到需要寫入 log 的時候,程式就會直接炸給你看 另外一個原因是檔案要整理,在 5.6 之前的話 daily 要自己手動清太舊的 log,平平都要用程式處理,那直接丟給系統不是比較快,到了 5.6 是可以設定要留幾天份,不過一樣會遇到權限問題 避免權限問題的一般作法是在設定環境的時候先產生一個空的…

APFS 使用心得

[華語, cmn-Hant-TW] 從 10.13 High Sierra 開始,macOS 預設的檔案系統就從 HFS+ 變成 APFS 了,雖然說怕踩地雷所以沒第一時間更新,不過手上幾台更新倒是沒遇到啥問題,更新後用起來順順的也沒特別注意,一直到最近在移虛擬磁碟的時候才發現 APFS 其實是蠻妙的東西,網路上找了些資料,再實測之後的心得大致上有這些: APFS 有類似 zfs snapshot 的 localsnapshot,似乎是一定時間系統就會產生一個,然後把太舊的刪掉,用tmutil listlocalsnapshots / 可以列出目前根目錄下所有的 localsnapshot,還有一些操作例如手動新增或是刪除,也都是透過 tmutil 操作 用 time machine 備份的時候,如果遇到 APFS 卷宗的話,會先產生一個 localsnapshot 再開始備份 (細節不確定,似乎還會比對前一次下的 localsnapshot) 在 Terminal 用 df…

FreeBSD 的 Flavors

[華語, cmn-Hant-TW] FreeBSD 的 ports 在引入 Flavors 之後,比較能清楚的看出套件倒底是相依哪個東西,現在會看是用哪個版本的 php 而加上適當的前綴或後綴,像是以前的 composer 叫 php-composer-1.6.5,相依 php 7.2 的話就會叫 php72-composer-1.6.5,又例如 phpMyAdmin 的話以前叫 phpMyAdmin-4.8.2,相依 php 7.2 的會變成 phpMyAdmin-php72-4.8.2 這樣的好處是在套件安裝的時候可以指定要用哪個版本的 php,要用 php 5.6 的話就下 pkg install php56-composer 安裝即可,以往要使用非預設版本的套件時,只能自己手動從 ports 編譯,現在的話只要支援中的版本都可以透過這樣的方式選擇安裝,方便不少,要注意的是如果套件是在還沒支援 flavors 之前就裝好的話會沒辦法更新,先反安裝再重新選一個需要的版本安裝即可,以 phpMyAdmin 來講,如果要用 php72 的話就是: pkg delete phpmyadmin pkg…

Dovecot 2.3

[華語, cmn-Hant-TW] 雖然說去年底 Dovecot 2.3 就推出了,不過一直都沒時間理他,最近比較有空就來用 FreeBSD ports 升級,然後就卡關了,還好問題都不難處理,首先是升級一定會遇到的外掛程式版本匹配問題 doveconf: Error: Couldn’t load plugin /usr/local/lib/dovecot/settings/libmanagesieve_login_settings.so: Module is for different ABI version 2.2.ABIv35(2.2.35) (we have 2.3.ABIv1(2.3.1)) 所有 dovecot-* 相關套件重編即可 再來要設定 dh.pem,細節可以看這篇說明,不過其實照錯誤訊息提示的方法來設定就可以了 (設定檔在 /usr/local/etc/dovecot/dovecot.conf) doveconf: Warning: please set ssl_dh=</usr/local/etc/dovecot/dh.pem doveconf: Warning: You…

RyZen 的 FreeBSD 支援

[華語, cmn-Hant-TW] 之前在這篇有提到去年 AMD 推出的 RyZen 讓我解一堆任務的過程,其實這顆整體而且還蠻有趣的,有一些東西因為很新所以推出的時候不少 OS 都沒辦法完全支援,FreeBSD 當然也不例外 先不講溫控或是 pstate 之類的東西,一開始連核心長什麼樣子都不是很清楚哩,只知道是一顆 8 核心 16 執行緒的 CPU FreeBSD/SMP: Multiprocessor System Detected: 16 CPUs FreeBSD/SMP: 1 package(s) x 8 core(s) x 2 hardware threads 幾個月之後一堆東西都弄好了,一顆有 2 個 CCX,每個 CCX 有…

RyZen 奇遇記

RyZen 奇遇記

[華語, cmn-Hant-TW] 其實買很久了,Ryzen R7 1700 剛出沒多久就買了,先來張圖 風扇會發光很開心,搭配華碩的 ROG Crosshair IV Hero  X370 晶片組主機板(簡稱 C6H),特色是會發光很開心,還有就是後面板有一大堆的 USB 孔,最好是有那麼多 USB 要同時用啦,然後再搭了兩條 A-DATA 的 DDR4-2400 8GB 剛推出的時候 BIOS 其實不太穩定,雖然有免開機用 USB 隨身碟重刷的功能,不過還是踩到了完全不能開機的地雷,後來是送皇家重刷 BIOS 解決,這個問題不大,寄回來之後就爽用了 (皇家親自送修可以選擇修好後送貨到府) 這段時間都是用預設頻率在跑,後來用一陣子之後手癢小超一下,反正 ROG 要超頻不難,就給他上 3.8G 用了好一陣子也沒都還 OK,然後就再某次 Windows 10 更新重開後,就開始不斷重開了,跑了一下 memtest…

Apple AirPods

[華語, cmn-Hant-TW] 上次買過 BeatsX 還送修 (請參考:BeatsX 耳機使用及送修) ,這次來玩玩真無線的 AirPods 耳機。其實一直對真無線都不是很放心,總覺得會很容易掉,所以就先去台北 101 的 Apple Store 試戴看看,順便確認一下語音通話的效果,隨 iPhone 附的有線耳機在騎腳踏車的時候雜音很大,而且常會收到旁邊的音而不是講話的聲音,大致上試了一下覺得還蠻滿意的,就趁網路上的賣家有打折的時候買了 盒子很小 裡面的包裝就這樣,有看到網路賣家賣更便宜一點,但是沒附 Lightning 線,不是很放心就還是買正規未拆包裝的 牙線盒跟菸屁股 (誤),很有趣的是各有一個型號,所以包裝盒上面是印三個型號,耳機跟充電盒也都有印在隱密的角落,除了型號外還有台版一定會看到的 NCC 標識 買回來在 iPhone 旁邊一打開充電盒蓋子就會跳出配對畫面了,配對完直接可以用,簡單到不行 後來才發現開蓋子是一個很重要的動作,有打開蓋子的話 iPhone 才看得到耳機的電量,重新配對的時候也是要開蓋子來啟動,所以發現運作不正常的話就是把耳機塞回去蓋上打開再重新配對,一種重置的概念 充電盒打開後在通知中心才會顯示耳機的電量,左耳右耳會標示出來,是否正在充電 (也就是在盒子裡) 也會顯示,不過這個畫面是不會顯示盒子本身的電量的,要前面那個畫面,也就是蓋子一打開的提示才會看得到,就實際使用來看確實不太需要擔心盒子的電量,耳機的話倒是還蠻需要的因為只能撐五小時左右,有時候會兩耳交替使用讓電量維持在相對滿的狀況,反正聽 Podcast 之類的不太需要立體聲,是說充電還蠻快的,所以真的聽到沒電再充也還好就是 因為也是 W1 晶片,在不同 Apple…

把 Apple TV 設定成 HomeKit 家庭中樞

[華語, cmn-Hant-TW] 要能夠在外面控制家裡的 HomeKit 裝置的話,需要一台夠新的 iPad 或是夠新的 Apple TV,然後把他設定成「家庭中樞」,這樣就可以遠端控制了,不只自己,共享的使用者也都能控制 (啊我也不知道這樣算好還是不好就是),家裡沒有夠新的 iPad,但是有夠新的 Apple TV,那就用 Apple TV 當中樞啦 官方的教學文件在這,其實寫得算是夠清楚詳細,不過實際上跑下去的話還是有卡到關,所以就來記錄一下了,文件上是這樣子說的 在 iOS 裝置或 Mac 上,設定 Apple ID 雙重認證。然後前往 iCloud,確定您已開啟「iCloud 鑰匙圈」。 在 Apple TV 上,前往「設定」>「帳號」,確定您是以與 iOS 裝置相同的 Apple ID 登入 iCloud。 登入 iCloud 之後,Apple…

Vim 滑鼠複製及移動游標

[華語, cmn-Hant-TW] 不知道是在哪次更新到哪個東西, 在 Mac 下用終端機連到 FreeBSD 上的 Vim 跟變成可以吃滑鼠事件了,好處是可以用滑鼠 (當然,觸控板也可以) 移動 Vim 的游標,副作用就是複製貼上會失效,總之這兩者 (移動與複製) 是沒辦法並存的,而各有各的好處,所以就看怎麼切換比較方便了 切換可分成用 vim 或是用終端機,環境不允許的話那只能用 vim,不然終端機的切換快速鍵用起來會比較順手 用 Vim 切換 (文字可複製) : set mouse= (游標可移動) : set mouse=a 用終端機切換 用 command + r 可以在兩個模式間切來切去 有趣的是在 macOS 的終端機按住…

BeatsX 耳機使用及送修

[華語, cmn-Hant-TW] 其實 BeatsX 耳機 買很久了,當時用大約八折的價錢購買 (現在偶爾還是可以看到八折的方案,要買的話不要買貴了),算是最便宜可以買到內建 W1 晶片的藍牙耳機了。準備要寫心得的時候就壞給我掉 (沒辦法充電),所以等送修完拿回來之後才一起寫心得,首先上使用上的感想是: 附四組大小的耳塞套,還有二組耳鉤套,戴起來算是蠻舒服的,本來擔心容易掉下來所以有上耳鉤,後來發現不太會掉就拔掉了,再加上中段較硬的部份 (稱作 Flex-Form) 掛在脖子上舒服而且穩固,就算雙耳掉下去也只會垂在胸前而已,騎車的時候基本上可以很安心不用擔心掉到地上 耳機是有磁性的,收的時候兩耳自然就會黏在一起,有附一個半開的攜帶盒可以把線整個塞進去,然後把中段硬的部份彎曲然後塞一半…… 這個需要練習一下才會塞的好,然後每次塞都有點擔心會不會把線弄段,真的不是太好塞 藍芽配對很方便,電源鍵按久一點後放開 iPhone 就會自動跳出要不要配對,如果手上有超過一個 Apple 產品的話切來切去超方便,不過如果只有固定一個裝置使用的話,有時候會沒配對到,只能重按開關再配對一次了,配對是不難啦不過還是要按螢幕一下,總是麻煩些,然後開關的指示音到現在我還是記不起來哪個是開哪個是關,如果可以用語音提示的話應該會好一些 電池的話以這種尺寸的耳機能使用 8 小時算是相當不錯,內建的 W1 晶片蠻強的,快沒電的時候電源指示燈會閃紅燈,這時候充 5 分鐘就能撐 2 小時,基本上不用太擔心沒電,充電孔是 lightning 端子,隨耳機也有附一條超短的線,不過這條線我比較拿來充 iPhone 就是,反正共用 不過可能也是因為這樣,電源指示並不是很明顯,以 iPhone 來講狀態列只會顯示耳機圖示,不會像有些藍牙耳機會在耳機圖示旁邊顯示電量 (通知中心還是會顯示電量就是),也不會有語音提示低電量,不過這是一體兩面,多一點提示就是多一點騷擾,我個人是比較喜歡較多的提示就是 按鍵接電話施力要大一點才有效果,這個對我來講要習慣就是,有時候要按好幾下才接起電話 使用上算是滿意,不過用一用就壞掉了,怎麼充都沒辦法充電,剛好 Apple 台北…