發表文章

Linux - ls 指令按檔案大小排序

-S  (Sort) #ls -Sl   (由大到小排序, 小寫的L) #ls -Slr  (由小到大排序) #ls -h     (human readable format, 檔案大小會以 KB, MB, GB 等顯示) #ls -R     (Recursive, 即顯示子目錄結構) #ls -lt     (從新到舊排序) #ls -ltr    (從舊到新排序)

Linux 為甚麼在系統裡刪除了大檔案, 硬碟容量卻沒有釋放出來?

小弟有些Server使用proftpd. 但proftpd有個壞處是, 隨時日過去, 他在 /var/log/裡的檔案會不斷增加, 總有一天會耗盡disk space. 不過重點不在這裡, 大檔案刪除後, 查 df -ha 卻看到空間沒有釋放. 主要原因是Processy還在使用這些檔案, 縱然這個檔案已經被刪除. 你可以做用以下指令: /usr/sbin/lsof | grep deleted  去查看是否檔案被進程lock住. 如果發現真的被進程Lock住, 可以graceful restart那個進程, 去釋放返被鎖住的檔案. 例如 systemctl restart proftpd. 

Fortigate 只接受特定外網IP 進行PING

圖片
Fortigate 只接受特定外網IP 要設定,讓特定外網IP Ping Fortigate,在執行上比較麻煩,意思是你不能特別關閉PING,再讓PING端口開啟給一個指定IP。 求其次,你只能設置讓特定IP能訪問Fortigate Firewall,順便能PING。 一般來說,Interfaces裡的Restricted Access功能,大家都很熟悉,裡面能讓WAN開啟HTTPS,SSH,PING服務去做管理,而這個Restricted Access部份,是設計給”Administrator”使用的。意思是指 System>Administrators 裡面的Users。 所以,只要修改Administrators>admin,裡面Enable “Restrict login to trust hosts” ,並加入管理者的常用外網IP,就能讓Fortigate只接受特定IP訪問,包括HTTPS和PING。 但有種情況,我只想要某IP,只能PING,而不能做其他訪問,要如何做? 以下解說: 1. 在System>Admin Profiles 新增一個Admin設置,老外都喜歡叫no_logon,Access Control設成全部None。 2. 在System>Administrators 新增一個User,例如ping_only, Administrator Profile設成剛剛的no_logon。 3. 把剛剛新增的User的Restrict login to trusted hosts. 並設置指定外網IP。 4. 單是限制這個User並不足夠,「所有」其他Admin帳戶都要設置Restrict login to trusted hosts. 並設置成管理者常用的外網IP。 增加no_logon的Admin Profile,設置為「無權限」 為ping_only新增一個trust host 結論可想而見, ping_only的trusted hosts可以PING到該Fortigate Firewall,但不能登錄。 而admin帳戶的Trust hosts就可以Ping可以登錄。 後記,有些...

SYN_FLOOD Apache 的 SYN_RECV數 最大只有 256 ?

圖片
環境 CentOS 7,Apache 2.4 新安裝的Server,的確如遭遇SYN_FLOOD時,很容易就達到預設的SYN上限256。Google了很多,很多文章都教直接修改 net.ipv4.tcp_max_syn_backlog=128 ,去一個更大的值例如 1024。 但在Kernel2.6之後呢,有些文章指出,Apache的Backlog是依據另一個參數 net.core.somaxconn=128去做Backlog。因為兩個值的預設值都是128,所以可能比較容易混淆。兩個值都設到1024或以上(視乎RAM)是比較好。  我的機器設置了兩個IP,同一個Apache服務器,當其中一個IP受到SYN_FLOOD攻擊時,另一個IP的Virtual Host居然沒受到影響,可見系統資源是遊刃有餘,可是因為SYN_RECV的上限是256,所以過長的隊列讓Virtual Host變得不穩定。 正題,設置 sysctl -w net.core.somaxconn=1024    #修改 httpd.conf vi httpd.conf 增加 ListenBacklog 800  #註: 如果沒加這句,預設值是511,因為ListenBacklog是mpm類,所以我是加到mpm中。如果不設置,他的值就是511,所以不設置也是OK的。 #重啟Apache systemctl stop httpd.service systemctl start httpd.service #測試 輸入指令 ss -lti '( sport = :http )' 得出以下類似結果,注意Send-Q的Listen有你剛剛設置的數值 State      Recv-Q Send-Q Local Address:Port                 Peer Address:Port    LISTEN     0      800       :::http...

記事: 在MAC OSX裡,輕鬆查檔案的MD5 SHA-1 SHA256

圖片
首先都打開Terminal 計算file.iso檔案的md5,輸入 $md5 file.iso 計算file.iso檔案的sha-1,輸入 $shasum -a 1 file.iso 計算file.iso檔案的sha-256,輸入 $shasum -a 256 file.iso 希望能幫上忙

Linksys USB3GIG 與 MAC 10.11 EI Captain 不兼容

圖片
Linksys USB3GIG 與 MAC 10.11 EI Captain 不兼容,但對下與10.10 YOSITEMITE 就還不錯。 Linksys官網提供的 Driver是Version 1.0 並不兼容 Mac 10.11,官方貌似也不打算作出更新,所以要購買的人就要三思了。 好在有人發現替代方案,就是安裝 Realtek的Adapter driver. http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=13&PFid=56&Level=5&Conn=4&DownTypeID=3&GetDown=false 測試過十分適合。

Mac Air Late 2013 安裝 Bootcamp Windows 7 64bits 手記

這篇文章不是技術文件,是記錄下來我安裝 Windows 7 64 bits 於 Mac Air Late 2013所遇到的一些問題。 照舊時經驗,準備一隻16GB大小的USB手指,使用Mac Air Bootcamp去 選第1 2 項,去完整地做一隻WININSTALL USB Disc。 第一次安裝後,要進入Windows 介面時,出現 AppleSSD.sys 數位認證錯誤的訊息,是完全無法子消除或忽略。 Google後有大人建議以下方法... 1. 裝 Paragon NTFS 試用版,這東西可讓用家在Mac OS下,把資料寫入NTFS的系統,所以可以存取BOOTCAMP Partition裡面的東西。 2. 刪除 Bootcamp\Windows\System32\drivers\AppleSSD.sys 3. Reboot 繼續 Windows的安裝。 真的跳過了AppleSSD.sys錯誤的訊息,可是進入到設置使用者帳戶時,鍵盤滑鼠都動不了,一樣是因為你剛剛做的USB是不支援Native 的 USB 3.0 Driver。 此題無解,零分重作。 第二次,我進入Bootcamp以舊法再試一次,看看是不是運氣差所以裝不起來,進到Windows 分Partition介面就出現錯誤了,應該說是系統 Partition衝突,又無解。重啟回到 Mac OS,使用Disk Utility 打算Recover Patition,還不讓我Recover,結果Bootcamp整大塊Partion就死在那邊。 很好, 我制出重起 Command + R大法,把整片 Harddisk 刪除掉,重新安裝Mac OS....唉。 第三次,我Google到,為了解決Keyboard和 Mouse都沒反應問題,應該事前先置換掉USB Disc裡面的Driver。 流程為甚麼我會知道我是忘了,但我需要下載 Bootcamp 5.1.5640這個Driver Pack。 (較舊的機器,請下載 5.1.5621,至於那款才叫舊,請參考  https://support.apple.com/kb/DL1721?locale=en_US) 下載回來的是ZIP檔案,解壓後把裡面的 $WinPEDriver$ AutoUnattend.xml Boot...