IT 工程師必需!Linux 快速入門實戰手冊 - 從命令列、系統設定到開發環境建置, 實體機、虛擬機
★ Linux 系列書累計銷售 16 萬冊 ★ ★ 最全方位、最親民的 Linux 入門指引 ★ & 「學習」可以說是工程師的工作之一, 各種有機會用到的開發工具、軟體框架、程式語言, 都需要廣泛涉獵。但是 Linux 這個 IT 界無人不知的作業系統, 又總是令人卻步, 不知從何入門。為什麼高手好像用命令列就能做到任何事?實務上常用的功能又有哪些? 確實, Linux的純文字介面如魔法一般難懂, 一行一行像咒語的指令, 讓 Linux 的學習難度成為一座陡峭高山。 然而 Linux 絕對不是高不可攀的, 想攀登 Linux 的學習陡坡, 就讓本書做您的階梯, 與您一同前進! & 【IT 工程師的必經之路, 既然躲不掉、就一次把它搞懂!】 雖然 Linux 看似很少人使用, 其實在網路伺服器、企業工作機台、嵌入式系統...等應用上處處可見, 我們的生活早已不能沒有 Linux! Linux 無所不在, 問世至今三十年來, 用途只增不減, 只要從事 IT 工作就一定會遇到。永不過時的技術, 怎麼能不學會? 零基礎也不用擔心, 現在學一定來得及! & 【入門到進階, 逐行指令實戰演練】 學了指令卻不知道怎麼用、遇到狀況又不知道該用什麼指令, 學習 Linux 總是出現這樣的瓶頸嗎? 本書內容涵蓋基礎指令、帳號管理、檔案系統、工作排程、套件安裝、shell script ..等主題, 每章都精心設計常見情境, 詳盡列出完整輸入指令與真實系統回應, 讓您一一比對、循序漸進, 親手掌握 Linux 系統的大小事。 & 【系統到應用, 全方位涵蓋實務需求】 終於在 Linux 學會輸入指令、管理檔案、編輯文件了, 但這樣真的算是 &用 Linux 開發的工程師& 嗎? 時下最需要的各種技術:版本控制、虛擬環境、容器化應用、機器學習套件...等, 在 Linux 上不會沒得用, 只會更好用! 各種開發工具, 從環境建置到範例操作, 本書一應俱全, 完整發揮 Linux 的潛力, 讓您成為真正的 Linux 居民。 本書特色: & ●以 Ubuntu 的文字模式為主軸, 適用各種 Unix-like 的應用場合。 ●手把手操作 Linux 指令, 搭配逐行詳盡解說, 零基礎也能無痛入門。 ●針對開發人員提供 Git版本控制、Python 虛擬環境、Docker、Anaconda、CUDA等開發環境的建置教學。 ●不只適用實體機器, 也收錄虛擬機、WSL、雲端平台的 Linux 操作指引, 用手邊電腦就能立刻開始。 ●最有經驗的 Linux 寫作團隊執筆, 系列書累計銷售 16 萬冊。
鳥哥的Linux私房菜:基礎學習篇(第四版)
附DVD一片 Linux經典學習書! 本書前三版均蟬聯電腦專業書籍Linux暢銷排行榜Top1,為地表上最暢銷的Linux中文書籍! 您是有意學習Linux的小菜鳥,卻不知如何下手? 您是遨遊Linux的老鳥,想要一本資料豐富的工具書? 《鳥哥的Linux私房菜基礎學習篇》絕對是最佳選擇! ※鳥哥傾囊相授,內容由淺入深 書中包含了鳥哥從完全不懂Linux到現在的所有歷程,鳥哥將這幾年來的所知所學傾囊相授,以最淺顯易懂的文字帶領您進入Linux的世界。 ※按部就班,打好基礎的第一步 本書劃分為五大部分,每個部分都有相關性的特色,涵蓋:Linux的規劃與安裝,認識Linux檔案、目錄與磁碟格式,學習Shell與Shell Scripts,Linux使用者管理與Linux系統管理員,依序學習,讓您奠定Linux的基礎,跨出成功的第一步。 ※用心改版,提供您更新的技術 《鳥哥的Linux私房菜基礎學習篇-第四版》提供近期更新的技術,包括:核心版本的升級建議、虛擬系統的操作、GPT 分割表格式處理、XFS 檔案系統的實際操作使用、systemd 服務的管理、日誌格式的更新、grub2 開機管理程式的說明、nmcli文字指令操作網路參數的方式等等,內容更加精彩!
最佳拍檔完全體:Linux和晶片開發強強出擊
https://youtu.be/A76olfT7dLI 本書橫跨軟體與硬體兩個領域,強調系統性理解與模組化設計的實踐應用,對於驅動開發工程師、BSP 工程師、SoC 架構設計者及核心開發者皆提供可立即落地的技術框架。★ Linux Kernel 6.6 深度解析★ SoC 系統級晶片開發實戰★ 處理程序管理與記憶體調度★ 中斷控制器與裝置模型剖析★ 裝置樹原理與驅動開發指南★ 電源管理與 runtime PM 實作★ 時鐘控制與 Clock Subsystem 探究★ 高解析度計時器與時序同步★ bootloader 啟動流程詳解(U-Boot/SPL/ATF)★ SMP 負載平衡與行程排程機制★ IOMUX 與 GPIO Pin 控制模組★ 系統呼叫流程與核心態交互★ 記憶體碎片化與夥伴系統管理★ 心模組與 SoC 模組整合實戰透過對 Linux 與 SoC 結構的雙向深入,本書不僅能提升底層功力,也能有效幫助從業者突破視野與技術瓶頸!【章節介紹】本書共分為十三章,內容涵蓋Linux核心與SoC開發的核心知識。第一章 介紹記憶體管理,說明分頁機制、memblock初始化與分配器原理。第二章 講解處理程序管理,包含程序建立、do_fork實作與SMP排程策略。第三章 說明同步機制,包括自旋鎖、互斥鎖、RCU等常用方法。第四章 聚焦檔案系統,介紹ext4與VFS運作方式。第五章 探討系統呼叫,解析從使用者態到核心態的呼叫流程。第六章 說明SoC啟動過程,包含SPL、ATF、U-Boot及Kernel初始化。第七章 介紹裝置模型,講解匯流排、裝置與驅動的配對關係。第八章 解析裝置樹語法與裝置匹配流程。第九章 說明電源模組,涵蓋power domain與runtime PM設計。第十章 講解時鐘模組,包含時鐘框架與驅動實作。第十一章 介紹接腳模組,說明IOMUX控制與pinctrl驅動配置。第十二章 分析時間模組與計時器架構。第十三章 聚焦中斷模組,包含GIC硬體原理與IRQ處理邏輯,完整呈現Linux與SoC整合的技術全貌。
真正了解核心: Linux後端工程開發實作
https://youtu.be/ubvfFJ_KayI◆從零建置:Linux基礎與環境設定◆Shell腳本:變數、流程控制、偵錯◆編譯連結:掌握程式轉化機制◆Git版控:版本管理與分支協作◆網路基礎:TCP/IP、socket通訊◆高併發:多程式、多執行緒、I/O多工◆後端架構:守護程式、日誌、啟停◆協定設計:序列化與應用層格式◆MyRPC框架:事件分發與併發模型◆微服務叢集:Redis、User/Auth整合◆工具集:壓力測試、介面測試、生成◆思維養成:跨語言、動手實踐、工匠魂【內容簡介】本書從內容上可分為三大部分:基礎部分、進階部分和高級部分。基礎部分(第1~6章)的內容主要包括Linux後端開發概述、開發環境架設、伺服器運行維護、shell程式設計簡介、實現簡易shell以及使用Git管理程式等方面的知識。進階部分(第7~10章)的內容主要包括C/C++程式的編譯、連結、執行與偵錯,後端服務撰寫,網路通訊基礎以及I/O模型與併發等方面的知識。高級部分(第11~14章)的內容主要包括公共程式提煉、應用層協定設計與實現、MyRPC框架設計與實現以及微服務叢集等方面的知識。這些內容將幫助讀者更深入地了解Linux C/C++後端開發的高級技術。【目標讀者】• C/C++ 開發人員。• Linux 後端開發人員。• 大專院校電腦相關專業的師生及教育訓練學校的學員。• 對Linux 後端開發感興趣,或希望從事Linux 後端開發的人員。
Linux系統管理達人養成實務攻略:高效掌握Linux指令技巧×快速部署環境(iThome鐵人賽系列書)
用21世紀的技術掌握Linux,輕鬆駕馭IT的無限可能!突破技術極限的實戰指南,用技術駕馭技術,讓Linux成為你的超能力!兼具Linux核心知識與進階實戰應用,全面掌握從基礎邁向專業管理者的學習路徑!【專業推薦】「作者憑藉多年實戰經驗,從基礎操作到進階管理,全面剖析Linux系統管理的核心要素,為初學者提供了易於上手的指引,也為進階讀者帶來了豐富的實戰技巧,本書將成為你學習和工作上的得力助手。」─ 楊進雄,國立臺北商業大學 資訊管理系教授「本書涵蓋Linux系統管理的核心議題,每一章節都蘊含豐富的知識與操作技巧。本書是不可多得的學習與實踐Linux指南,它以全面、精準且實用的方式,為讀者搭建了前往Linux精通之路的橋梁。」─ 陳瑋弘,致理科大資管系 助理教授「本書能夠快速掌握重點從基礎到進階,特別適合開發者學習。連Linux新手工程師也能秒懂核心概念、立即上手,更適合技術人員的內部培訓,可以用最短的時間找到解決Linux管理上的各種疑難雜症。」─賴彥甫,創創數位科技執行長「作者透過實務經驗,引領從業人員使用Linux相關應用為志業,將他20年的經驗彙整一次分享,引導Linux系統管理新手快速成為專家。 」─李彥廷,第一金證券【內容簡介】♚由淺入深切入:系統化學習Linux,建立堅實基礎概念♚實戰導向學習:結合真實操作案例,快速提升應用效率♚複雜技術攻略:理解技術背後邏輯,降低知識學習門檻♚全面提升技能:涵蓋系統管理重點,邁向專業級管理者本書內容改編自第15屆iThome鐵人賽IT管理組佳作系列文章《Linux昇華:從初學者的探索到專家的洞察》。全書將理論與實務操作結合,摒棄傳統技術手冊中常見的枯燥與抽象,透過實際情境幫助讀者理解「為什麼這麼做」,進一步加深印象與應用能力。作者憑藉多年Linux實務經驗,整理出11個主題的完整學習路徑,內容由淺入深,從系統安裝、指令入門到進階管理技巧皆一應俱全。透過本書的學習,讀者不僅能掌握系統操作,更能將所學技能靈活應用於雲端、程式設計與AI等領域,為進階專業應用打下堅實基礎。本書是一部從入門到精通的實用指南,也是開啟Linux高階應用的大門。【目標讀者】✪想要認識Linux核心知識、循序漸進學習的初學者。✪希望聚焦進階應用、快速掌握實用管理技巧的系統管理人員。✪目標透過實務案例與應用技巧,精準解決工作挑戰的IT專業人士。✪想要完善技術能力、穩固Linux系統管理基礎的讀者。【本書特色】✪從基礎指令到企業級部署,全面掌握操作與管理技巧。✪專注於解決實際問題,讓學習不僅是理論,更能在工作中直接應用。✪搭配清楚的步驟解釋,幫助讀者理解技術邏輯,降低學習門檻。✪從系統安裝、磁碟管理到網路配置,含括Linux系統管理的各大重點。
Linux核心除錯實務
藉由實用工具與進階技術,對Linux kernel與kernel模組進行有效除錯! Linux kernel是世界公認最好的作業系統核心。但是要對kernel進行除錯,則是一件相當複雜的工作。本書是學習一切高階kernel除錯的全面性指南。深入涵蓋許多領域,例如基於工具的除錯(debug)技術(printk與動態除錯框架),並展示如何使用Kprobes。涉及記憶體的bug往往是一場惡夢,我們用兩個章節的篇幅來講解針對記憶體除錯的工具與技術。當kernel賞你一個Oops時,該如何準確地解讀才能解開最根本的問題呢?這本書提供了解答。 並行性(concurrency)往往是一個複雜的主題,本書能幫助你確切地了解何謂資料競爭(data race),包括使用KCSAN來檢測這類問題。還有一些棘手的問題,無論是在除錯還是效能方面,都需要詳細的kernel層級追蹤;你將學習到如何使用Ftrace及其前端(frontend)的強大功能,還將會知道如何在kernel內部的GDB工具(KGDB)與許多其他工具,用於處理kernel lockup、hangs與可怕的kernel panic。 讀完本書,你將能掌握各種強大的kernel debug工具與技術,以及具有在何時間點使用適當工具和技術的敏銳能力。 你將學到的內容: *探索基於工具的printk,以及功能強大的動態除錯框架(dynamic debug framework) *使用靜態與動態的Kprobes,trap kernel/module 的函式 *使用KASAN、UBSAN、SLUB debug 和kmemleak捕捉kernel 的記憶體問題 *深入解譯Oops,並精準識別程式碼的行號位置 *了解資料競爭,並使用KCSAN捕捉難以捉摸的並行性(concurrency)問題 *利用Ftrace與trace-cmd詳細追蹤kernel流程 *撰寫自訂的kernel panic handler(處理常式),並檢測kernel lockup與hands *使用 KGDB 單步執行,以及 debug kernel/module 的原始碼
你的第一本Linux入門書:使用WSL建立Linux軟體開發與部署環境,一次學會Docker、版本控制、建立AI
新手的第一本Linux入門手冊! 帶你學會操作Docker容器,輕鬆建立多種開發環境 & 本書是一本Linux作業系統和Docker技術的入門書,也是一本探討虛擬化技術的書,可以讓初學者輕鬆在Windows作業系統學習Linux和Docker技術,並且教你如何使用Linux作業系統來建構專案所需開發環境的書。 & 本書首先會詳細說明Linux作業系統的命令,接著實際建構PHP、Node.js和Python開發環境,最後進入Docker主題,讓讀者擁有足夠的Linux能力,可以自行打造Docker容器的開發環境,並且透過Visual Studio Code進行專案開發。 & 讀完本書,你除了能學會基本Linux作業系統的使用,在Linux作業系統架設伺服器、建立Node.js、Python和Keras深度學習開發環境,還可以進一步學習如何使用Docker容器化技術,透過Docker命令來建立、啟動、停止、暫停和移除容器。最後,你還能使用ChatGPT提問模板來建立Dockerfile,建構部署專案所需的DevOps開發與運維環境。 & ▍你將學會 ◆ 理解虛擬機與容器的原理與差異 ◆ 利用WSL 2在Windows中安裝Linux虛擬環境 ◆ 建構PHP、Node.js和Python開發環境 ◆ 搭配Visual Studio Code進行專案開發 ◆ 使用Gradio介面快速部署AI預訓練模型 ◆ 介紹Docker映像檔、容器和倉庫的基本操作 ◆ 使用Docker技術來建立軟體開發與部署環境 &
圖解Linux核心工作原理|透過實作與圖解學習OS與硬體的基礎知識【增訂版】
📌 全彩印刷、圖解詳盡,快速學會關鍵知識 📌 將Go與Python程式的實驗與結果視覺化透過實作與豐富的精緻圖解,對OS與硬體相關的工作原理是如何運作,進行淺顯易懂的解說,讓您對OS的運作,有更加具體而清晰的了解。 不論是新手還是老手,都很容易陷入「OS是個充滿神秘與困難的東西」的困境。為了要改善這個狀況,本書不會探討艱深的理論,而是以Linux為中心,在進入實作階段前就對Linux的工作原理進行解說,讀者只需要對Linux基本的命令有所瞭解便可輕鬆閱讀。 本書可以幫助你: .當OS或硬體相關故障產生時,能夠冷靜處理 .開發出有考慮到硬體特性的優良軟體 .瞭解該依據什麼樣的指標來設計系統
高性能程式密技:Linux網路核心技術大公開
★高性能網路程式設計基本功 ★Linux底層的基礎及網路結構 ★實體機及虛擬機架設Linux ★Linux網路伺服器設計 ★Libevent為基礎的FTP伺服器設計 ★Epoll為基礎的併發聊天伺服器 ★Nginx高性能伺服器架構詳解 ★DPDK開發環境架設及實戰應用範例 ★P2P高性能遊戲伺服器設計 本書全面探討高性能網路程式設計,首章強調Linux內核的限制和DPDK的重要性,深入分析高性能伺服器框架,包括C/S和P2P模型及伺服器架構。第二章聚焦Linux基礎知識及網路應用,涵蓋系統啟動、關機、性能最佳化命令,以及KVM虛擬機器和Qemu的應用。第三章介紹Linux網路開發環境搭建,包括虛擬機器配置和C/C++開發環境。第四章專注於網路伺服器設計,探討I/O模型及不同類型伺服器設計。第五章講述基於libevent的FTP伺服器開發,包括Reactor模式和客戶端設計。第六章涵蓋基於epoll的高併發聊天伺服器的設計與實施。第七章深入剖析Nginx架構,包括設計原則和資料結構。第八章描述DPDK開發環境的架設,第九章展示DPDK應用案例,而第十章探討基於P2P的高性能遊戲伺服器設計。 &
高效率Linux命令列學習手冊
提升指令操作技巧 「本書保證讓讀者能更有效率地與Linux互動,而非僅僅做資料的輸入。我強烈推薦讀者閱讀並使用其中技巧,每天都將會從中獲益。」 —Michael Hausenblas, AWS解決方案工程主管 「這本實用的書籍,其中充滿了命令列的智慧,讀者可以從現在就開始使用,並在往後的職業生涯中延續下去。第一章本身的價值,就超過這本書的價錢。」 —Ken Hess, 系統管理員 這本書將我們的Linux技巧提升到另一個新的水平!其中的內容相當實用,一步一步幫助大家快速、聰明、更有效率地完成工作,因此無論是系統管理員、軟體開發人員、網站可靠性工程師,還是狂熱的愛好者,都很適合閱讀。我們將學習如何建立、執行解決實際的工作問題,處理、檢索相關資訊,以及自動執行一般手動的複雜命令任務。 此外還將分析在shell提示符號背後,真正發生的事情,因此無論我們執行哪些命令,都可以在日常Linux使用中獲得更大的成效,並在就業市場中更具競爭力。 在建構中級到進階命令列技巧的過程中,我們將學習如何: ‧選擇或建構快速完成工作的命令 ‧高效執行命令並輕鬆瀏覽Linux檔案系統 ‧從簡單的命令到建構強大、複雜的命令 ‧轉換文字檔案,並如同資料庫一樣操作查詢,達成任務目標 ‧從命令列來控制Linux的點選功能
內嵌作業系統:ARM Linux驅動程式開發動手做
【豐富實驗內容】 【完整Linux系統燒錄】 嵌入式Linux開發環境架設、CortexA7架構及ARM組合語言 MX6U、STM32之LED燈、啟動方式 C語言版本LED燈、STM32驅動開發 SDK移植、BSP專案管理、蜂嗚器、按鍵輸入實驗 主頻和時脈設定、GPI中斷實驗、EPIT計時、高精度延遲時間 UART及序列埠格式移植、DDR3實驗 RGB LCD顯示、RTC即時時脈、I2C實驗、SPI實驗 多點電容觸控式螢實驗,LCD背光調節、ADC實驗 u-boot使用、Makefile詳解、啟動流程、u-boot移植、圖形化原理 Linux Makefile詳解、核心啟動流程、核心移植 Linux root檔案系統建置(BusyBox) 本書一共分兩篇,每篇對應一個不同的階段。第一篇主要是基本常識及最重要的裸機開發,從本篇正式開始開發板的學習。透過數十個裸機常式來幫助讀者了解I.MX6ULL這顆CPU,為以後的Linux驅動開發做準備。讀者可以掌握在Ubuntu下進行ARM開發的方法。第二篇則是系統移植,講解如何將uboot、Linux和root檔案系統移植到開發板上,為後面的Linux驅動開發做準備。把uboot、Linux核心和root檔案系統都在開發板上移植好以後,就可以開始Linux驅動開發了。 Linux最重要的三大類驅動程式,包括字元裝置驅動、區塊裝置驅動和網路裝置驅動,本書都有完整的範例說明,是從事內嵌式Linux開發者最想看到的內容。 &
現在學正是時候 : Ubuntu Linux無痛全面零基礎上手玩
◆ 帶領你走進Linux世界,熟悉使用Linux,玩轉Shell程式設計, 掌握企業主流Web架構,學會部署業界實用服務!◆ Ubuntu Linux 作為開放原始碼的作業系統,目前已廣泛應用於各種場景,如桌面電腦、伺服器、嵌入式裝置等。本書作者根據多年Linux系統實戰經驗,以實用高效為原則,帶領讀者一同走進Linux的世界,內容包含詳細講解了Linux作業系統的安裝、命令、許可權和軟體管理,進一步說明到資料庫、防火牆、文本處理、Shell腳本程式設計,最後則是Web伺服器架構以及如何應用至常見的企業服務等內容。 全書共23章,每一章皆包含大量企業實戰演示案例,以利於企業實戰工作接軌、提高系統操作效率以及解決在專案中常遇到的疑難問題。內容說明清晰易懂,並搭配豐富圖片講解說明,相當適合初學者閱讀,亦可供Linux開發工程師、行業從業人員和對程式設計感興趣的讀者作為參考指引。 ▌精彩收錄 ✪ Linux是什麼?為什麼要用最流行的Ubuntu? ✪ 什麼是虛擬機,什麼是VMware? ✪ 在VMware中安裝Ubuntu Linux。 ✪ 磁碟分割,shell,檔案及裝置驅動。 ✪ 基本指令、檔案管理、vim、使用者及群組權限,檔案權限。 ✪ dpkg、apt的檔案管理。 ✪ 防火牆firewalld,iptables。 ✪ 三劍客grep、sed、awk及正規表示法。 ✪ Shell Script開發大全。 ✪ Cron job定時執行程式管理。 ✪ LAMP/LNMP之Nginx、Apache、Tomcat、PHP、MySQL/MariaDB之詳解。 ✪ NoSQL之Redis詳解。 ✪ FTP、DNS、DHCP伺服器完整安裝及設定詳解。
精通嵌入式Linux程式設計(第三版)(上)
精通嵌入式Linux程式設計(第三版)(上) Mastering Embedded Linux Programming - Third Edition 首版熱銷數千本,佳評如潮! 理解嵌入式Linux的必備之書! 《Mastering Embedded Linux Programming》的最新加強版 我們日常生活中的許多電子裝置,都可以看見嵌入式Linux系統的蹤影:智慧型電視、Wi-Fi路由器、工業控制器及各種測試設備,所有這些裝置的核心都是Linux。Linux作業系統可以說是當今物聯網(IoT)的關鍵基礎技術之一。 本書將帶領你遍覽開發週期的每個環節,並深入環節中的每個階段,說明階段中的元件以及可利用的工具。從工具鏈、啟動載入器、Linux內核等基礎知識入手,逐步探索如何建立一個根目錄檔案系統,並學習使用Buildroot與Yocto Project這兩款在開發社群中最常見的組建系統,加速並自動化你的開發流程。 在此基礎之上,我們將一同探討如何妥善運用NAND/NOR以及管理型eMMC的快閃記憶體特性,以便延長裝置的使用壽命與建立可靠的線上更新機制。我們也會探討嵌入式Linux程式設計的種種議題,像是如何從應用程式存取硬體、如何開發多執行緒的程式、如何有效率地管理記憶體空間等。最後,我們將示範如何針對應用程式與內核進行除錯。我們將一起學習perf、Ftrace、LTTng、BPF等工具的使用方式,了解針對應用程式與內核進行剖析和追蹤的方法,迅速找到系統的效能瓶頸。 讀完本書,我們將能夠駕馭Linux系統,隨心所欲創造出靈活又穩健的嵌入式裝置。 本書特色 ・利用Yocto Project與Buildroot建立嵌入式Linux系統 ・處理組建過程中BitBake的異常問題,了解Yocto的組成與工作流程 ・使用Mender或balena建立既安全又可靠的IoT裝置更新機制 ・讀懂電路圖、修改硬體結構樹、熟悉針腳擴充板(breakout board)的焊錫作業,以此連接週邊裝置,並利用邏輯分析儀探查問題原因,快速打造出產品原型 ・不用編寫內核驅動程式也可以和硬體互動 ・利用BusyBox runit啟動系統常駐服務並進行監控 ・透過GDB對裝置進行遠端除錯,利用perf、Ftrace、eBPF、Callgrind等工具量測系統效能 ・上冊包含本書前15章,下冊包含第16章到第21章 &
精通嵌入式Linux程式設計(第三版)(下)
精通嵌入式Linux程式設計(第三版)(下) Mastering Embedded Linux Programming - Third Edition 首版熱銷數千本,佳評如潮! 理解嵌入式Linux的必備之書! 《Mastering Embedded Linux Programming》的最新加強版 我們日常生活中的許多電子裝置,都可以看見嵌入式Linux系統的蹤影:智慧型電視、Wi-Fi路由器、工業控制器及各種測試設備,所有這些裝置的核心都是Linux。Linux作業系統可以說是當今物聯網(IoT)的關鍵基礎技術之一。 本書將帶領你遍覽開發週期的每個環節,並深入環節中的每個階段,說明階段中的元件以及可利用的工具。從工具鏈、啟動載入器、Linux內核等基礎知識入手,逐步探索如何建立一個根目錄檔案系統,並學習使用Buildroot與Yocto Project這兩款在開發社群中最常見的組建系統,加速並自動化你的開發流程。 在此基礎之上,我們將一同探討如何妥善運用NAND/NOR以及管理型eMMC的快閃記憶體特性,以便延長裝置的使用壽命與建立可靠的線上更新機制。我們也會探討嵌入式Linux程式設計的種種議題,像是如何從應用程式存取硬體、如何開發多執行緒的程式、如何有效率地管理記憶體空間等。最後,我們將示範如何針對應用程式與內核進行除錯。我們將一起學習perf、Ftrace、LTTng、BPF等工具的使用方式,了解針對應用程式與內核進行剖析和追蹤的方法,迅速找到系統的效能瓶頸。 讀完本書,我們將能夠駕馭Linux系統,隨心所欲創造出靈活又穩健的嵌入式裝置。 本書特色 ・利用Yocto Project與Buildroot建立嵌入式Linux系統 ・處理組建過程中BitBake的異常問題,了解Yocto的組成與工作流程 ・使用Mender或balena建立既安全又可靠的IoT裝置更新機制 ・讀懂電路圖、修改硬體結構樹、熟悉針腳擴充板(breakout board)的焊錫作業,以此連接週邊裝置,並利用邏輯分析儀探查問題原因,快速打造出產品原型 ・不用編寫內核驅動程式也可以和硬體互動 ・利用BusyBox runit啟動系統常駐服務並進行監控 ・透過GDB對裝置進行遠端除錯,利用perf、Ftrace、eBPF、Callgrind等工具量測系統效能 ・上冊包含本書前15章,下冊包含第16章到第21章 &
現代Linux學習手冊
雲端從業人員的參考指南! 「身為早年老派Linux發行版的維護人員,我可以證明,雲端原生技術的興起,改變了大部份開發人員面對Linux系統的方式。我鄭重推薦Michael帶領開發人員走過的這條道路,學習現代Linux的來龍去脈,從容器到eBPF等等。」 -Chris Aniszczyk Cloud Native Computing Foundation(CNCF)執行長 如果你的工作需要用到Linux,並需要一個結構化的方法來幫助你深入研究,這本書就很適合做為參考。本書提供了各種使用這個開源作業系統改善工作流程的技巧和竅門。無論你是開發者、軟體架構師還是網站可靠性工程師,這本書都可以協助您完成從開發到辦公室相關的任務。 你將獲得現代Linux終端和shells的實踐經驗,並學習如何管理你的工作負載。你將瞭解如何透過使用容器、systemd、現代檔案系統和不可改變的發行版(如Flatcar和Bottlerocket)運行Linux應用程序。 ‧將Linux作為一個現代工作環境,而不僅僅是從管理的角度出發 ‧學習關鍵組件,如Linux內核、終端機多工器、更友善的shell、以及撰寫可攜的shell指令碼等 ‧熟悉從檔案權限到capabilities等存取控制方式,並理解以檔案系統作為基礎建置區塊的角色 ‧學習應用程式依存關係管理和容器 ‧取得Linux網路功能堆疊和工具的動手作經驗,包括DNS ‧運用現代化的作業系統可觀測性來管理工作負載 ‧熟悉程序間通訊、虛擬機器,以及特定的安全性題材
邁向Linux工程師之路:Superuser一定要懂的技術與運用 (第三版)
『如果你對Linux有興趣,那麼這本書絕對該在你的書單中。』 ─ LinuxInsider 『這本書充分介紹了Linux架構的每一個面向。』 ─ Everyday Linux User SYSTEMD 靈活運用 | SUPERUSER 必讀之作 ★全新收錄★ ✔LVM、journald日誌系統和IPv6的實作 ✔新增「第17章」,專門討論虛擬化、容器和cgroup ✔systemd的延伸討論 Linux不像其他的作業系統,它不會對使用者隱瞞重要的資訊。反之,它讓你可以完全控制你的電腦──Linux會讓它的使用者掌控一切。但要真正掌握Linux,就必須理解這個作業系統的工作機制與內部結構,包括「系統是如何啟動(boot)的」、「網路是如何運作的」,以及「Linux的核心(kernel)實際上都做了些什麼」。 本書是暢銷書《How Linux Works》的第三版。作者Brian Ward再次深入這個深受喜愛的作業系統,對各個層面進行更詳盡、更深度的探討。任何對Linux內部運作感到好奇的讀者,都可以從中獲益。本書是作者多年專業知識的累積,第三版更新並強化許多知識,亦新增LVM(邏輯卷冊管理程式)、虛擬化、容器等內容。透過這本書,你將學到: ・Linux是如何啟動的,從開機載入程式(boot loader)到init (systemd) ・核心如何管理設備、設備驅動程式和程序 ・網路、介面、防火牆和伺服器的運作概念 ・開發工具的工作原理,以及它們與共享函式庫之間的關係 ・如何編寫出色的shell script 你還能探索Linux的核心,並檢查使用者空間程序中的關鍵系統任務,包括系統呼叫、輸入和輸出以及檔案系統維護。結合背景、理論、實際範例和詳盡的解釋,本書將教你「控制作業系統」所需的全部知識。 &
高速伺服器應用開發:Linux上使用C/C++
本書提供多則跨平台網路程式設計實用案例,馬上提升您的即戰力! ★由基礎知識到高級開發技術,詳解Linux網路程式設計 ★HTTP伺服器程式的開發設計 ★FTP程式的開發設計 ★併發聊天伺服器(多人聊天室)開發設計 ★多人使用CS、P2P聯合遊戲架構伺服器設計開發 本書涵蓋Linux網路程式設計從基礎到高級開發的基礎知識,重點講解技術性較強的TCP程式設計、UDP程式設計和I/O模型程式設計,同時對每個基礎知識,都從原始概念和基本原理,進行詳細和透徹的分析,並對比較複雜和難度較高的內容,繪製原理圖進行講解。書中的範例程式,大多是從實例總結歸納而來,因此具有很強的實用性。 本書從五大伺服器程式設計基礎技術開始,逐步深入到四大專案案例進行開發實踐,融合基礎知識和一些資料庫、跨平台介面程式設計知識,使得案例系統完整,且包含用戶端,如最後一章的併發遊戲伺服器,只要稍微修改,就可以升級做為商用軟體使用。 通常網路程式設計書只會講解一個綜合案例,而本書提供了HTTP伺服器、FTP伺服器、併發聊天伺服器與C/S和P2P聯合架構的併發遊戲伺服器四大專案案例,亦可以作為課程設計和學生畢業設計的素材。 &
Ubuntu22系統管理與網路服務實務應用:晉升專業網管工程師×物聯網工程師實戰攻略
以實作範例說明指令用法,輕鬆進入Ubuntu的世界 掌握Ubuntu的管理及應用,建立更安全的Linux平台及專屬的物聯網平台 【精彩內容】 ✔採用Ubuntu 22.04 LTS 版本,讓之後的學習可以獲得最新的支援及穩定的更新。 ✔內容涵蓋Ubuntu桌面版及伺服版作業系統的操作、設定及管理。 ✔從指令操作至Shell Script 程式設計漸進式學習,零基礎起步,說明深入淺出。 ✔詳細介紹使用者管理及防火牆建置等主題,可建立更安全的Linux平台。 ✔建立及應用Node-RED 伺服器、MQTT伺服器及Docker容器。 ✔建立專屬自己的物聯網平台,實現智慧物聯網的應用。 【本書簡介】 Linux是一款廣泛應用的作業系統,從網站開發到物聯網應用,都可以看到Linux的蹤跡。由於Linux作業系統的開放性,讓Linux擁有許多的發行版本,其中Ubuntu作業系統的安裝過程簡單,桌面環境友善,終端功能強大,非常適合初學者入門學習。 本書從基礎開始,透過由淺入深的Ubuntu作業系統教學內容安排,你將學習Linux的常用指令,並且本書提供許多的實作範例,可讓你輕鬆掌握指令的用法,快速進入Ubuntu的世界。本書還介紹了使用者管理和防火牆建置等主題,透過這些內容,可讓你對Linux的安全性問題有更深一層的認識,進而建立更安全的Linux平台。此外,本書也教導你如何建立及應用Node-RED伺服器、MQTT伺服器、Docker容器等技術,使你可以輕鬆建立專屬的物聯網平台。本書內容提供完整的Ubuntu作業系統知識,徹底了解Ubuntu的管理,你將可在實際應用中得心應手。 【目標讀者】 ☛對Ubuntu作業系統有興趣的初學者,可兼顧理論與實作。 ☛適用於大專院校「Linux作業系統」課程的學生,可作為教師授課之用。 ☛專案設計者、網管工程師、物聯網工程師也很適合閱讀本書。 &
精通 vi 與 Vim 第八版
強大與敏捷的編輯器 「在本書的所有新技巧中,學習Vim的大綱和折疊模式最終給了我停止使用Emacs的藉口。僅此一項就值得了。」 Robert P.J.Day 專業開放原始碼培訓師,自Slackware 1.00版出現於24張磁片以來的Linux長期使用者 文字編輯器在程式領域中廣泛的使用,尤其是vi與它延伸家族更為顯著。在這本更新版中,Unix和Linux使用者將學習到vi與Vim的基礎編輯功能,以及更進階的編輯工具。作者Arnold Robbins和Elbert Hannah將介紹Vim最主要的新版本,包含8.0和8.2版。 如果你是程式設計師、計算機系統分析師,或是使用瀏覽器、命令列介面來工作,那麼利用Vim能夠提升你的工作效率並且更容易完成複雜的任務。你將會看到多個視窗(multiwindow)、全域搜尋(global search)和代換(replacement)和更有利於程式設計師的工具,以及學習撰寫互動巨集(macros)和指令稿(scripts)來延伸編輯器。所有內容都以通俗易懂的風格來使本書成為經典。 ‧超越那些基礎vi命令,滿足讀者的特定需求 ‧學習進階vi工具,將繁瑣的編輯工作轉交給電腦 ‧探索那些對vi改進的Vim工具 ‧練習Vim多重視窗編輯的特點,更是對vi的顯著升級 ‧運用Vim腳本客製化並量身打造你的需求 ‧介紹一些圖形化(GUI)版本的Vim(gvim) ‧看見更廣泛的程式編輯整合環境(IDE)
Linux實務:以Ubuntu為例
本書適合初踏入Linux領域且希望使用Linux進行較進階、較大型程式開發之讀者。本書選擇最多人使用的Linux發行版Ubuntu,由淺入深解說程式之基本編譯、函式庫製作與使用、大型專案的編譯、Linux核心模組以及嵌入式系統軟體開發。本書亦清楚解說作業系統的重要主題:訊號處理函式、程序優先權和友善值、掛載卸載檔案系統、inode、檔案權限、檔案鎖定等。Linux的網路功能強大,本書特別深入介紹其路由、防火牆、NFS,以及DNS如何影響收發E-mail等觀念和技術。
Linux Shell 程式設計與管理實務 (第三版)]【暢銷回饋版】
☝ 博碩嚴選!系統管理者必備的經典工具書! ☝ 好評再上市,熱銷回饋發行中! 主機管理的上乘之道,就在於能夠把工作予以自動化;凡是可以交給電腦做的事,就不要由人來做。工作自動化的關鍵,就在於管理者是否具備 Shell 程式設計的能力。我們可以說:對 Shell 的操控能力以及 Shell 程式設計的能力,是每一位主機管理者應具備的基本知能,欲進階主機管理者,不可不熟 Shell! 本書由淺入深,帶領讀者由入門到精通,徹底把 Shell 程式設計一次弄通,書中並含有許多實務方面的應用知識,可快速提升讀者的管理能力。 本書特色 1. 完整涵蓋 Bash Shell 4.x 的各項功能介紹,是目前最詳實的中文書籍。 2. 本書循序漸進,解說 Bash Shell 的各項觀念,讓讀者能在最短的時間內,打通 Shell 程式設計的任督二脈。 3. 書中含有豐富的範例,展示各式 Shell 技法,是您進階 Shell 程式設計的最佳範本。 4. 包含許多網路管理的實務經驗,提升讀者主機管理的能力。 5. 本書含有許多自動化管理主機的技巧,讓您輕輕鬆鬆就能成為一位有創意、高生產力的管理者。 &
實戰Linux系統數位鑑識
這是一本深入探討如何分析遭受破壞之Linux系統的書籍。你可以藉由本書瞭解如何鑑識Linux桌面、伺服器與物聯網裝置上的數位證據,並在犯罪或安全事件發生後重建事件的時間線。 在對Linux操作系統進行概述之後,你將學習如何分析儲存、火力系統和安裝的軟體,以及各種發行版的軟體套件系統。你將研究系統日誌、systemd日誌、核心和稽核日誌,以及守護程序和應用程序日誌。此外,你將檢查網路架構,包括接口、位址、網路管理員、DNS、無線裝置、VPN、防火牆和Proxy設定。 .如何鑑識時間、地點、語言與鍵盤的設定,以及時間軸與地理位置 .重構Linux的開機過程,從系統啟動與核心初始化一直到登入畫面 .分析分割表、卷冊管理、檔案系統、目錄結構、已安裝軟體與與網路設定 .對電源、溫度和物理環境,以及關機、重新開機和當機進行歷史分析 - 調查用戶登錄會話,並識別連結周邊裝置痕跡,包括外接硬碟、印表機等 這本綜合指南是專為需要理解Linux的調查人員所編寫的。從這裡開始你的數位鑑證之旅。
Linux指令大全:工程師活用命令列技巧的常備工具書(全新升級版)
Linux指令大全:工程師活用命令列技巧的常備工具書(全新升級版) The Linux Command Line, 2nd Edition: A Complete Introduction William Shotts 著✍.邱世華 譯✍ BANISH YOUR MOUSE 銷售超過100,000本 體驗過Linux電腦系統光鮮亮麗的點擊式介面之後,現在,讓我們一起展開Linux命令列的深度探索之旅吧!我們將逐步引導你,從最初在終端機畫面上按下鍵盤開始,一直到在bash(最普及的Linux shell)中開發出完整的程式──我們將帶領你徜徉Linux命令列的世界! 《The Linux Command Line》是Linux工程師必讀的現代經典。在這本全球暢銷書的最新編譯版中,包含了許多bash 4.x的功能,例如重新導向運算子和shell擴展。我們也更新了諸多範例,提供更現代、更強健的shell script實踐,並說明多種避免常見潛在危險的做法。 在探索Linux命令列的過程中,你將學習由一代又一代經驗豐富的滑鼠迴避大師所傳承下來的永恆技能:檔案導覽、環境設置、指令鏈、使用正規表示法比對模式等等。你將深入了解眾多命令列工具背後的哲學,以及桌上型Linux系統從昔日Unix超級電腦那裡承襲而來的豐富遺產。本書的編排循序漸進,章節簡短且容易消化。透過這本書,你將學到: ・建立和刪除檔案、目錄與符號連結 ・管理你的系統,包括網路、套件安裝和程序管理 ・使用標準輸入和輸出、重新導向與管線 ・使用Vi編輯檔案,這是最熱門的文字編輯器 ・開發shell script,讓常用或無聊的工作自動化 ・使用cut、paste、grep、patch與sed來切割文字檔案 如果你是一位剛入行的新手,嚮往和老鳥一樣在Linux系統內飛快地用鍵盤和電腦溝通,那其實一點也不難,一旦你克服了最初的「shell衝擊」,你會發現,命令列是一種與電腦溝通時,既自然且富有表現力的方式。如果讓你的滑鼠開始堆積灰塵,也不要感到太驚訝! &
Linux錦囊妙計 第二版|基礎操作x系統與網路管理
這本隨翻即查的錦囊妙計,為所有從新手到中階的Linux用戶提供了管理一套Linux系統所需的基本技能,兼顧圖形化及命令列工具。無論你的Linux是嵌入式系統、桌上型系統、伺服器、抑或是雲端甚至虛擬環境,這些基本技能都是一體適用的。本書的目的在於協助讀者們,只需照著書中內容依樣畫葫蘆,便能儘快上手。 Carla Schroder提供了涵蓋特定問題的諸多妙招,同時附上簡單扼要的探討文字,說明各種招式的運作原理,以及可供事後鑽研的參考資料。 您可以從本書學到: .使用新型的全面服務管理工具systemd .以firewalld建構簡易或複雜的防火牆 .為Linux系統及行動裝置設立安全的網路連線 .拯救無法開機的系統 .重設遺忘的Linux和Windows密碼 .使用dnsmasq簡化區域網路上的名稱解譯服務館立 .管理使用者和群組並控制檔案存取 .偵測電腦硬體並監看硬體健康程度 .管理GRUB開機程式並設置Linux和Windows的多重開機環境 .以最新式的工具保持網路間的時間同步 .在樹莓派上建置網際網路路由器/防火牆 .管理檔案系統與分割區 “學習Linux的必讀之書。Carla Schroder以最淺顯的方式,為讀者們導覽Linux作業系統的各種層面。”- Jack Wallen, TechRepublic、The New Stack等媒體知名獲獎作者 “厲害的工程師都會了解手中的工具、並加以善用。但Carla Schroder的專業將令你眼界大開,讓你學到自己從未深究的Linux另一面。”- Jonathan Johnson, Dijure獨立軟體顧問兼講師
你終究要學會Linux:Shell指令完整使用精解
你終究有一天要回到Linux shell的, 為何不現在就開始? 被Windows和MacOS帶壞的你,想當個稱職的工程師,終究還是得回到Command Line。自動化固定性的工作、玩弄作業系統於股掌之間、用編輯器之神vim、宗師級的oh-my-zsh,別再牽拖,現在就開始用! 類Linux系列是全世界被最多人使用的作業系統(不是Windows哦,如果算上Android、MacOS和iOS的核心),他最強大的功能不是不會中毒,更不會是醜醜的GUI(你也可以讓他很漂亮!),一定就是那通殺每個工程師的shell指令。 這本書將會是你踏入專業領域最重要的一本工具書。 本書特色 ◎針對初學者 這本書簡單易學,絕不在一開始就堆砌專業術語,而是注重趣味性和參與感,學習的過程就像你一邊敲鍵盤,我們一邊在你身旁聊一聊那些讓你疑惑的點,聊著聊著你就學會了。除了帶大家一步步操作,書中還會重點講解想法與方法,說明不同部分之間的內在關聯和區別,以便大家建立知識網,知其然亦知其所以然。 ◎強調實用性 書中每個概念、工具都儘量配合程式範例,方便各位自學。隨書程式開放原始碼a,以容器形式提供完整的作業環境,大家既可以手動架設環境,也可以先體驗效果,再決定要不要深入了解。除了介紹應用的使用方法,書中還包含安裝和移除方法—裝卸自如,大家可以根據個人情況靈活取捨。 ◎注重準確性 網路資源浩如煙海,但準確性參差不齊,大家篩選的過程需要耗費大量精力。而我們經過多年的學習,本身已經掌握了大量互動列知識並閱讀消化了不少資料,因此,我們在寫作本書的過程中遵循了一個原則:儘量使用第一手資料,避免大家被不可靠的轉述帶著走冤枉路。 ◎針對多種作業系統 本書以Linux 使用者為主,兼顧macOS 和Windows 使用者:介紹了在3種平台上架設互動列環境的方法,範例程式在Linux Mint 20、macOS 和Windows(WSL:Ubuntu 20.04 LTS)下通過測試。另外,還需要強調一點,這本書的寫作離不開開放原始碼工具和社區,期待讀者也能以開放的心態閱讀本書,學成之後可以積極參與開放原始碼活動,力爭為開放原始碼技術貢獻一份力量。 &
Raspberry Pi 樹莓派:12 道開胃菜打造 Linux 核心肌群(iT邦幫忙鐵人賽系列書)
「Ok,你買了幾本 Linux 驅動程式的書,然後呢?」 在學習一個新技術時,往往會期待先從一些簡單的例子出發,再逐漸延伸。 不過,如果這個新技術跟 Linux 核心相關,「一些簡單的例子」可能沒那麼簡單。 如果直接從核心改起,從一些作業系統課常見的名詞出發:行程管理、同步機制、記憶體等,往往會因為更動帶來的影響遍佈整個作業系統,而不知該如何下手。而如果從裝置驅動程式開始,個人電腦的硬體往往缺乏彈性,嵌入式系統則需要另外準備軟、硬體實驗環境、交叉編譯工具鏈等等,也很有可能需要另外使用 QEMU 之類的模擬器除錯。 要開始寫程式,才能驗證所學。但似乎很難找到簡單實驗環境與例子,那該怎麼辦呢? 別擔心!這本書就是來回答這個問題! 本書內容改編自第12屆iT邦幫忙鐵人賽IoT組冠軍系列文章──《Modern Maker : 從那些 Maker 的大小事看 Linux 核心》。本書旨在替理解 Linux 內部提供一個略為不同的切入點,使用創客手邊的 Raspberry Pi 與 Arduino,搭配最普遍使用的 Ubuntu,作為實驗 Linux 核心功能的環境。除此之外,本書援引近五年來的諸多研討會作為第一手材料。手上拿著這本書的你,不用買更多材料,今天回家就可以立刻實驗! 本書內容 Chapter 1:Ftrace 與 eBPF ,介紹 Linux 中的兩個動態追蹤機制:由「即時」分支來的 ftrace ,與近幾年討論度極高的 eBPF。這些工具使得讀者僅使用命令列,就能觀察 Linux 內部的運作。這樣做也容易有「外溢」的效果:如果你在追蹤結果中一直看到某些東西重複出現,自然會好奇這是什麼。於是你就有了一個學新東西的好情境。 Chapter 2:裝置樹與 Linux 裝置框架,介紹裝置樹與 Linux 裝置模型。一方面是更貼近 Maker 的經驗:Maker 們可能常 常在一些感測器、ADC、觸控螢幕的硬體供應商提供說明中,看到疊加裝置樹的指示。介紹裝置樹對於 Maker 來說,可以更深入理解這件事的目的,是非常有幫助的知識。另一方面,核心模組也可以因為結合裝置模型,許多函式可以使用自動資源管理的版本,也有助於讓程式更精簡。 Chapter 3:GPIO ,介紹如何在核心中使用 GPIO 。有了 GPIO 之後,就能在 Chapter 4:IRQ 中使用 GPIO 觸發各種 IRQ,搭配 Chapter 1 的動態追蹤工具,讓讀者可以親自實驗中斷上半部與下半部機制的執行機制、執行前後文、發生時機等等。本書涵蓋的下半部機制包含了 workqueue、softirq、tasklet 與 threaded IRQ。在理解 IRQ 之後,相信讀者在閱讀核心文件時,碰到如「該函式無法在不能休眠的情境使用」之類的敘述時,就不會容易感到困惑。 Chatper 5:I2C ,在介紹核心與使用者空間的 I2C 相關功能之後,Chatper 6:與使用者交換資料中,介紹了字元驅動程式,並且把前述的 I2C 的傳輸包裝成字元驅動程式。 最後則是介紹了專為感測器設計的 IIO 子系統。多數的 ADC、加速規、距離感測器等,有不少可以在 IIO 子系統中找到驅動程式。 本書使用的硬體 這本書使用 Raspberry 4B 與 Arduino Uno。當然,還需要幾條杜邦線。除此之外,為了不讓使用 3.3V 邏輯電壓的 Raspberry Pi 4B 被使用 5V 邏輯電壓的 Arduino Uno 破壞,部分實驗需要使用到邏輯準位轉換器(logic level shifter)。以及在最後的 IIO 實驗中,還需要一個 TCRT5000 紅外線距離感測器,但實際上也可以 Arduino Uno 替代。除此之外,你不需要更多硬體了。 Ok,準備好了,我們就直接開始吧!
大師功力再昇華:實作Linux核心偵錯及實戰演練
Linux大師才讀核心,5.0最新版,適用X86及ARM64,洗禮一次,位列神人之境! & 會操作Linux不算什麼,看懂核心,並針對核心進行深入的研究,解決維護運行時所出現的難題,並且在了解核心後,針對整個系統進最佳化,這才是當代Linux大師該有的高度。 & 本書特色 & ■深入說明Linux核心模組 本書主要講解Linux核心中核心模組的實現,因此以Linux 5.0核心為研究對象,主要針對ARM64架構講解,也提及了x86_64架構方面的部分內容。 & ■未來的趨勢Linux核心 近幾年,作業系統和開放原始碼軟體的研究氣氛越來越濃厚,大公司開始以Linux核心打造自己的作業系統,包括手機作業系統、伺服器作業系統、IoT(物聯網)嵌入式系統等。另外,很多公司開始探索使用ARM64架構來建構自己的硬體生態系統,包括手機晶片、伺服器晶片等。 & ■實戰出擊,溫故知新 本書以實戰案例出發點,對讀者提升實戰能力有非常大的幫助。另外也新增了解決當機難題的實戰案例。在實際專案中,我們常常會遇到系統當機(如手機當機、伺服器當機等),因此本書複習了多個當機案例,最精彩的就是利用Kdump+Crash工具來詳細分析如何解決當機難題,相當深入核心內部了。 &
大師養成起手式:從核心真正了解Linux運作原理
是該好好開始學Linux了!從最紅的Ubuntu Linux動手。 高手不學操作和使用,直接從核心開始,本書甚至教你自己開發一個Linux OS。 想成為真正的作業系統大師,充分了解系統底層的架構,在封閉的Microsoft Windows系統中是無法完成的。只有真正深入Linux中,弄髒你的手,不斷撞牆,不斷打怪,你才能越來越強。但在這看似困難的路途上,如果有一本攻略,幫你避開地雷,讓你能走捷徑,把試誤的時間節省下來,這樣效率才高。 & 本書就是這樣的一本書,本書將Linux系統方面的基礎原理與實驗相互融合,有助讀者深入瞭解Linux系統的原理和精髓,掌握核心技術和方法,提高分析問題與解決問題的能力。 本書特色突出、內容新穎,除了從核心講解之外,更搭配了完整的實驗環境,並且還兼顧了x86和ARM架構,更可以讓你用樹莓派實作一個完整的OS,在玩樂中學Linux,不但有成就感,更讓你在談笑之間,回頭一看,自己已成為Linux大師! 本書特色 .循序漸進地說明 Linux 核心入門知識 Linux 核心龐大而複雜,任何一本厚厚的Linux 核心書都可能會讓人看得昏昏欲睡。因此,對初學者來說,Linux 核心的入門需要循序漸進,一步一個腳印。初學者可以從如何編譯Linux 核心開始入門,學習如何偵錯Linux 核心,動手編寫簡單的核心模組,逐步深入Linux核心的核心模組。 .反映 Linux 核心社區新發展 除了介紹Linux 核心的基本理論之外,本書還介紹了當前Linux 社區中新的開發工具和社區運作方式,比如如何使用Vim 8 閱讀Linux 核心程式,如何使用git 工具進行社區開發,如何參與社區開發等。 .結合 QEMU 偵錯環境說明,並列出大量核心偵錯技巧 在學習Linux 核心時,大多數人希望使用功能全面且好用的圖形化介面來單步偵錯核心。本書會介紹一種單步偵錯核心的方法—基於Eclipse + QEMU + GDB。另外,本書提供首個採用&-O0& 編譯和偵錯Linux 核心的實驗,可以解決偵錯時出現的游標亂跳和 等問題。本書也會介紹實際工程中很實用的核心偵錯技巧,例如ftrace、systemtap、記憶體檢測、鎖死檢測、動態輸出技術等,這些都可以在QEMU + ARM64 實驗平台上驗證。
Ubuntu 20管理入門與實作
●採用Ubuntu 20.04 LTS版本,讓以後的學習可以獲得最新的支持及穩定的更新。 ●內容涵蓋Ubuntu桌面版及伺服版作業系統的操作、配置及管理。 ●零基礎起步,從指令操作至Shell Script程式設計,講解深入淺出。& ●詳細說明使用者管理及防火牆建置等主題,建構更安全的Linux平台。 & 本書特色 & Linux是一款廣泛應用的作業系統,從網站開發到物聯網應用,都可以看到Linux的蹤跡。由於Linux作業系統的開放性,讓Linux擁有許多的發行版本,其中,Ubuntu作業系統的安裝過程簡單、桌面環境友善、終端功能強大,非常適合初學者入門學習。 & 本書適用於大專院校【Linux作業系統】課程,可提供老師教學、學生研習之用。若您是專案設計者、網管工程師、物聯網工程師,也很適合閱讀本書。 & 本書內容的安排由淺入深,對Ubuntu作業系統進行系統性的說明,希望可以協助讀者輕鬆入門Ubuntu的管理。書中說明了Linux的常用指令,並安排22個實習,可有效幫助讀者的學習,經由實作的過程中進入Ubuntu的世界。 &
練核心從裡強到外:全面了解Linux基礎架構
最硬的Linux核心 + Arm、x86架構的核心說明 看懂本書,直接成為個人電腦及手機CPU的頂薪全才! ► 基於 Linux 5.0和ARM64/x86_64架構 ► 新增ARM64 架構等方面的內容 ► 涵蓋實戰案例,提供面試題 ► 提供核心偵錯和最佳化技巧 本書基於Linux 5.0核心的原始程式碼,說明Linux核心中核心模組的實現。 全書共9章,主要內容包括處理器架構、ARM64在Linux核心中的實現、記憶體管理之預備知識、實體記憶體與虛擬記憶體、記憶體管理等高級主題、記憶體管理之實戰案例、處理程式管理之基本概念、處理程式管理之排程和負載平衡、處理程式管理之偵錯與案例分析。 ■ 第 1 章簡單介紹 ARM64 架構、ARMv8 暫存器、A64 指令集等。 ■ 第 2 章介紹 ARM64 記憶體管理、快取記憶體管理、TLB 管理、記憶體屏障並分析Linux 核心的組合語言程式碼等。 ■ 第 3 章說明如何從硬體角度看記憶體管理、從軟體角度看記憶體管理以及實體記憶體管理之預備知識等內容。 ■ 第 4 章討論頁面分配之快速路徑、slab 分配器、vmalloc()、虛擬記憶體管理之處理程序位址空間、malloc()、mmap 以及缺頁異常處理等內容。 ■ 第 5 章探討 page、RMAP、頁面回收、匿名頁面生命週期、頁面遷移、記憶體規整、KSM、頁面分配之慢速路徑以及記憶體碎片化管理等內容。 ■ 第 6 章探討記憶體管理記錄檔資訊和偵錯資訊、記憶體管理最佳化參數、記憶體管理實戰案例等內容。 ■ 第 7 章說明處理程序的基本概念、處理程序的建立和終止、處理程序排程基本操作等內容。 ■ 第 8 章說明 CFS、負載計算、SMP 負載平衡、綠色節能排程器、即時排程等內容。 ■ 第 9 章介紹處理程序管理中的偵錯、綜合案例等內容。 本書適合Linux系統開發人員、嵌入式系統開發人員及Android開發人員閱讀。 另外還有針對大型企業最常見的面試題,讓你快快樂樂學習,輕輕鬆鬆找工作,喜歡極硬派Linux及CPU原理的讀者千萬不要錯過。 適合讀者群:Linux系統開發人員、嵌入式系統開發人員及Android開發人員
使用AWS在雲端建置Linux伺服器的20堂課
實際動手做,了解如何運用AWS架設伺服器 這是一本告訴大家如何運用AWS在雲端上從零開始建構伺服器的書籍,藉由本書的指引,您可以了解如何在雲端建構伺服器,以及管理雲端上的伺服器。本書將從如何申請AWS帳戶開始,一步步帶領您利用AWS的EC2建構Linux伺服器,並在其上進行管理與各種伺服器的建置作業。 .如何申請AWS帳戶 .如何使用AWS的EC2來建構Linux伺服器 .如何安裝與管理Linux套件 .Linux的基礎指令操作 .Linux的權限管理 .vim的基礎操作方式 .如何監控Linux伺服器的工作狀況 .Git的基礎操作 .如何建立並使用Docker .如何在雲端建構WordPress
Linux運行維護實作大全:高效管理所有主流服務
◎ 集結大量經典易懂的實例與技巧 ◎ 全面涵蓋Linux系統管理的相關知識 ◎ Linux技術專家多年實作經驗精華總結& & 隨著大數據、雲端運算、容器化應用的落實,基於Linux的運行維護也面臨新的挑戰:業務越來越複雜、使用者需求越來越多樣化、伺服器的數量越來越龐大。面對這些挑戰,建構標準化、自動化、穩定性高、可靠性強的運行維護體系迫在眉睫。& & 本書以實際生產環境為背景,以實作為主,有系統、全面性地講解Linux運行維護人員必須掌握的運行維護知識。透過本書,讀者不僅可以掌握必需的專業知識,還可具備實際解決問題的能力。 & 全書分為5篇,共有15章。& & ►第1篇 Web、資料庫運行維護篇(1∼3章) 介紹Web 運行維護和資料庫運行維護的實戰技能 & ►第2篇 運行維護監控篇(4∼5章) 介紹企業常用的運行維護監控工具,Zabbix、Nginx、Apache、Tomcat、PHP-FPM、Redis 、Ganglia & ►第3篇 叢集架構篇(6∼8章) 介紹3款開放原始碼叢集軟體,Keepalived、LVS、HAProxy & ►第4篇 線上伺服器安全、最佳化、自動化運行維護篇(9∼11章) 主要說明對生產環境中伺服器的運行維護、最佳化和安全防範技巧,屬於 全實戰性質的案例介紹,最後介紹一款流行的自動化運行維護工具Ansible & ►第5篇 虛擬化、大數據運行維護篇(12∼15章) 介紹虛擬化工具KVM的使用方法、ELK大規模記錄檔即時處理系統、 Hadoop大數據平台的運行維護,並透過實際的案例介紹如何透過ELK 收集Apache、Nginx、Tomcat、Redis 等系統的記錄檔並進行清洗和分析。 & 適合讀者群 Linux系統運行維護工程師、大數據運行維護工程師、運行維護開發工程師、想要學習Linux運行維護技術者。 & 本書特色 & 終於有一本書能徹底地把Linux上所有主流系統、基本操作、安全實戰,說明的這麼清楚,一氣呵成。 透過實戰操作、理論與實作相結合的方式來介紹每個運行維護基礎知識。不讀不快,所有Linux IT人員必備工具書。 &
圖解LINUX指令操作與網路設定
看圖就能了解Linux的操作,學習無負擔 本書的宗旨為「看圖就了解Linux的操作」。您只要看看漫畫、插圖圖解與Point的內容,就能了解這些命令或操作會有什麼結果。 本書特色 .透過漫畫詮釋Linux的抽象概念 .以指示線或圖案進一步解說難懂的命令 .「冷知識」單元,用簡單易懂的說法解釋術語 .每章最後均有練習問題,即時驗收學習成效
CentOS Linux 8實務管理應用
傳授最新的CentOS改版攻略,讓你成為CentOS的實務達人 本書彙整作者多年的教學與開發經驗,從基礎知識直搗核心應用,立刻就能學習到各種伺服器架設與管理的方式,是想從新手變成網管人員所不容錯過的工具書 Linux發展迄今已經二十餘年,歷經了多次大小改版延伸至今,已經是一個成熟穩定的作業系統。Linux可以運作於一般的PC或是大型伺服器平台之上,成為許多中小型企業及學校最常使用的系統之一。從2014年CentOS 7發布以來,一直是一個穩定且頗獲好評的發行版本,至2019年CentOS 8的發布,更具有跨越混合雲部署的新特性及功能。 雖然Linux已經是二十多年的作業系統,但要真正認識該系統的架構及其在各種應用場合的部署,並不是一件容易的事情。而本書正是以實務應用為出發點,內容共分為18章,涵蓋了安裝、操作、系統、網路、安全與伺服器的設定,除了指令及設定之外,還提供完整的架構與整合,期許本書可帶給讀者一個完整的概念,並透過本書內容來解決常碰到的問題。 拿起這本書,你將學到: ☛Shell指令操作。 ☛檔案系統架構。 ☛系統初始化與程序訊號。 ☛帳號與權限。 ☛記錄和排程管理。 ☛新版防火牆firewalld與指令nft。 ☛遠端管理服務。 ☛NAT閘道伺服器。 ☛Proxy代理伺服器。 ☛DHCP動態位址伺服器。 ☛DNS域名伺服器。 ☛WWW網頁伺服器。 ☛Email電子郵件伺服器。 ☛FTP檔案傳輸服務。 ☛Samba檔案傳輸服務。 ☛NFS檔案傳輸服務。 ☛Mariadb與LNMP。 本書特色 ◎徹底詳解:內容涵蓋安裝、操作、系統、網路、安全與伺服器的完全解決方案。 ◎專業分享:實務案例與疑難雜症的經驗傳承。
嵌入式Linux系統實作:初心者開發設計專業方略
超廣度/自由/穩定/高效應用開發系統◆ 嵌入式Linux系統軟體介紹及開發技巧。◆ 多工程式設計、網路通訊、裝置驅動等重點開發。◆ 強調各類工具使用,不僅限軟體開發,亦能發揮利用於其他場域。本書分為兩大部分:第1部分-基礎篇(第1~8章):包括Linux系統基本使用方法與其主要開發工具、檔案讀寫、多工機制、網路通訊端程式設計、模組與裝置驅動、嵌入式Linux系統的軟體結構、GUI程式設計初步等。第2部分-實驗篇(第9~21章):以美國德州儀器公司的卡片式電腦Beagle Bone為實驗物件,在此基礎上進行嵌入式Linux開發,按照從底層基本系統建立到上層應用軟體的移植和撰寫。內容包括實驗系統介紹、嵌入式系統開發實驗環境架設、BootLoader 的編譯和啟動裝置的製作、核心設定和編譯、root 檔案系統的建置、圖形使用者介面、音訊介面程式設計、嵌入式系統中的I/O介面驅動、觸控式螢幕移植、Qt/Embedded移植、MPlayer移植、GTK+移植、即時作業系統RTEMS。適用:可作為電子資訊、通訊、自動化等專業相關課程教材,也可供相關領域工程技術人員學習參考。※ 本書範例程式及各章練習參考解答請至深石數位網站下載:http://www.deepstone.com.tw/
精通嵌入式Linux程式設計(暢銷回饋版)
☛☛博碩嚴選!首版熱銷數千本,佳評如潮!回饋發行!☛☛ ♛Yocto Project開發者兼Linux Foundation成員~~Richard Purdie推薦 ♛駕馭Linux系統,隨心所欲創造出靈活又穩健的嵌入式裝置 本書的內容將帶領你遍覽開發週期的每個環節,並深入環節中的每個階段,說明階段中的元件以及可利用的工具。本書將一路從工具鏈、啟動載入器、Linux內核,再到如何設置一個根目錄檔案系統,以及學習使用Buildroot與Yocto Project這兩款在開發社群中最常見的組建系統,加速並簡化你的開發流程。在此基礎之上,我們將一同探討如何妥善運用NAND/NOR以及管理型eMMC的快閃記憶體特性,以便延長裝置的使用生命與建立可靠的線上更新機制。接著,會討論執行緒的使用情境,這些議題將大大影響成品的效能與回應能力。最後,我們將一同學習perf與ftrace的使用方式,了解對應用程式與內核進行剖析和追蹤的方法。 【你能夠從本書學習到】 ◎了解Linux內核所扮演的角色,對應用程式的定位有所認知。 ◎利用Buildroot與Yocto Project,快速有效率地建立出嵌入式Linux系統。 ◎使用U-Boot創造出客製化的啟動載入器。 ◎透過perf與ftrace來找出效能上的瓶頸。 ◎熟悉硬體結構樹的使用,替設備添加新的硬體裝置。 ◎開發出可與Linux裝置驅動程式互動的應用程式。 ◎利用POSIX標準,設計多執行緒的應用程式。 ◎在即時系統中進行量測,修改Linux內核降低延遲。
LINUX FIREWALLS 中文版(4th Edition):善用NFTABLES 等超強工具捍衛LINUX防火牆的安全性
本書是運用iptables和nftables建構Linux防火牆的傑出指南 伴隨著Linux系統和網路管理員面臨的安全挑戰漸漸增多,他們能夠使用的安全工具和技術也得到顯著改善。傑出的Linux安全專家Steve Suehring,在本書先前版本上進行了全新的修訂,全面涵蓋了Linux安全中的重要改進。 作為關注Linux安全性的所有管理員來說,本書是不可或缺的資源,它全面講解了iptable和nftable的所有內容。本書還在之前版本的網路和防火牆基礎之上,添加了檢測漏洞和入侵的現代工具和技術。 本書針對當今的Linux核心進行了全面更新,所囊括的程式碼範例和支援腳本,可用於Red Hat/Fedora、Ubuntu和Debian。如果您是一名Linux從業人員,本書可以幫助您全面理解任何Linux系統的安全,以及從家庭網路到企業網路在內,各種規模的網路安全。 本書涵蓋你所需要的內容: ▶針對執行iptables或nftables的Linux防火牆,進行安裝、設定以及更新 ▶遷移到nftables,或者使用新的iptables增強機制 ▶管理複雜的多重防火牆設定 ▶建立、除錯和最佳化防火牆規則 ▶使用Samhain和其他工具來保護文件系統的完整性,以及監控網路和檢測入侵 ▶增強系統以防禦埠掃描和其他攻擊 ▶使用chkrootkit檢測惡意軟體rootkit和後門等漏洞
物聯網之作業系統:嵌入式Linux開發實作
本書分為兩大部分 第1部分-基礎篇(第1~8章): 包括Linux系統基本使用方法與其主要開發工具、檔案讀寫、多工機制、網路通訊端程式設計、模組與裝置驅動、嵌入式Linux系統的軟體結構、GUI程式設計初步等。 第2部分-實驗篇(第9~21章): 以美國德州儀器公司的卡片式電腦Beagle Bone為實驗物件,在此基礎上進行嵌入式Linux開發,按照從底層基本系統建立到上層應用軟體的移植和撰寫。 內容包括實驗系統介紹、嵌入式系統開發實驗環境架設、BootLoader 的編譯和啟動裝置的製作、核心設定和編譯、root 檔案系統的建置、圖形使用者介面、音訊介面程式設計、嵌入式系統中的I/O介面驅動、觸控式螢幕移植、Qt/Embedded移植、MPlayer移植、GTK+移植、即時作業系統RTEMS。 & 適用於: 可作為電子資訊、通訊、自動化等專業相關課程教材,也可供相關領域工程技術人員學習參考。 & ※本書範例程式及各章練習參考解答 請至上奇資訊網站下載http://www.grandtech.info
Linux動手打造企業E化環境(第2版)
由於雲端運算世代的來臨,因此現今無論是企業、公務部門還是校園皆已吹起了社群應用風,然而對於廣泛的IT單位而言,如今市面上卻沒有一本參考書,來告訴它們該如何在以Linux平台為主的架構中,來著手建置私有雲端上的社群網路平台,以全面提升團隊協同合作的生產力。透過本書的實戰指引,將讓您學習到如何以私有雲的基礎虛擬化平台(VMware vSphere Hypervisor)實作為出發點,透過整合Active Directory網域環境運作下,進一步部署出完整的社群網路之協同作業環境,這些應用包含了訊息協同平台、語音通訊平台、影音社群網站平台等等。此外本書還將指引讀者們,如何簡單學習使用Linux平台上最夯視訊剪輯軟體,輕鬆自製社群網路中所需要的各種商務或校園精彩微電影,並發佈至社群網站上進行分享。本書特色:‧輕鬆建置企業級免費虛擬化平台‧輕鬆打造免費資訊化基礎建設‧網路閘道與主機防毒實戰講解‧高效能語音通訊平台建置實戰‧協同合作訊息平台建置實戰‧完美搭建絕佳社群網路平台‧影音社群網站平台建置詳解‧六款免費開機掃毒系統剖析
精通嵌入式Linux程式設計
Yocto Project開發者兼Linux Foundation成員~~Richard Purdie推薦 駕馭Linux系統 隨心所欲創造出靈活又穩健的嵌入式裝置 本書的內容將帶領你遍覽開發週期的每個環節,並深入環節中的每個階段,說明階段中的元件以及可利用的工具。本書將一路從工具鏈、啟動載入器、Linux內核,再到如何設置一個根目錄檔案系統,以及學習使用Buildroot與Yocto Project這兩款在開發社群中最常見的組建系統,加速並簡化你的開發流程。在此基礎之上,我們將一同探討如何妥善運用NAND/NOR以及管理型eMMC的快閃記憶體特性,以便延長裝置的使用生命與建立可靠的線上更新機制。接著,會討論執行緒的使用情境,這些議題將大大影響成品的效能與回應能力。最後,我們將一同學習perf與ftrace的使用方式,了解對應用程式與內核進行剖析和追蹤的方法。 【適用讀者】 本書的內容適合那些在嵌入式系統領域上已經有所發展的Linux開發者與系統工程師,幫助他們進一步建立出最佳化的裝置。閱讀本書之前,需要具備基礎的C程式語言開發能力,以及對系統程式設計的相關經驗。 【你能夠從本書學習到】 ◎了解Linux內核所扮演的角色,對應用程式的定位有所認知。 ◎利用Buildroot與Yocto Project,快速有效率地建立出嵌入式Linux系統。 ◎使用U-Boot創造出客製化的啟動載入器。 ◎透過perf與ftrace來找出效能上的瓶頸。 ◎熟悉硬體結構樹的使用,替設備添加新的硬體裝置。 ◎開發出可與Linux裝置驅動程式互動的應用程式。 ◎利用POSIX標準,設計多執行緒的應用程式。 ◎在即時系統中進行量測,修改Linux內核降低延遲。
Fedora Linux系統管理與架站實務(第二版)(書+光碟不分售)
從【基本操作】、【系統管理】到【伺服器架設】,全方位學習 Linux 實務技能! Linux 是很多公司使用的系統,本書是您取得 Linux 職場新技能的最佳選擇! 想學會 Linux 系統管理、架站,不一定要挑戰艱澀的指令!使用最受歡迎的 Linux 發行版,以親切的視窗環境降低學習門檻、建立信心,學習 Linux 可以輕鬆、紮實,又有效率! 【系統安裝設定詳解】 ‧Windows/Linux 多重開機選單設定 ‧GNOME 桌面環境操作與個人化設定 ‧文字/圖形介面登入、遠端登入 ‧有線、無線上網設定 【系統管理技巧】 ‧ 群組與帳號管理、權限設定、系統行程 ‧ 磁碟空間、定時工作排程管控 ‧ Linux 常用指令範例教學 ‧ Shell Script 程式設計,簡化繁複的系統管理工作 【伺服器架設】 ‧WWW、FTP、Mail、Samba、DNS、DHCP、NAT… ‧各類伺服器運作原理及管理技能解析 本書特色 ◆ 專為初學者設計,完整實測、逐步示範講解 ◆ 不怕弄壞系統,Live CD 免安裝開機立即體驗,馬上學習 ◆ Windows/Linux 雙系統並存,輕鬆切換使用環境 ◆ 從操作、管理到架站,正確觀念詳實解析 ◆ 統整 Linux 系統管理經驗,分享實用技巧
Linux創始人-極客之王Linus Torvalds
有些人生來就具有統帥百萬人的領導風範; 另一些人則是為顛覆軟體而生; 而唯一能同時做到這兩者的人,就是Linus Torvalds。 「言辭是廉價的,我要看的是程式。」 Talk is cheap. Show me the code. 20世紀90年代,當林納斯還是一個其貌不揚的大學生時,他憑著自己的電腦天賦開發出一款後來叫作Linux 的自由作業系統。之後來自全球各地的Geek 們完全不計報酬,自動自發地為這個開放原始碼的系統進行增補和修改,使之變得越來越強大。 在《時代》週刊根據讀者投票評選出的20世紀100位最重要的人物中,林納斯排到了第15名,比在20世紀最後幾年蟬聯全球首富的比爾・蓋茲(第17名)還高。
硬漢之路:UNIX完美淬鍊
UNIX和Linux究竟難不難學? 怎樣才能學郝甚至精通UNIX和Linux呢? 這些正是本書要解答的問題。 本書以目前最為流行的UNIX衍生版Solaris11和FreeBSD為基礎,針對在UNIX系統維護過程中最容易遇到的各種問題,依次展開論述,全面介紹UNIX作業系統的使用。 無論是初學者,還是具有一定經驗的UNIX從業人員,都可以從中獲得有用的知識。因為Linux和UNIX以同樣為基礎的核心系統,很多操作指令都是通用的,所以本賺寫作時特別兼顧了二者的區別和關聯,這使得本書也可以通用於Linux學習人員。
深入理解Linux程式設計:從應用到核心
‧應用程式設計與核心實作相互結合 ‧幫助開發人員深入核心,解析Linux介面工作原理,掌握Linux系統運行機制 《Advanced Programming Unix Environment》(簡稱APUE)幾乎是Linux領域程式師人手必備的一本書,但在掌握和理解APUE的內容後,又該如何繼續提升自己的技能,如何更深入地理解Linux環境程式設計及其背後的工作機制呢?本書將從全新角度帶領讀者重新進入Linux環境程式設計,從應用出發,深入核心原始碼,研究Linux各介面的工作機制和原理,讓讀者不僅知其然,亦知其所以然。作為Linux開發工程師,若能掌握Linux應用層開發,同時熟悉Linux核心原始碼,在Linux環境下設計開發任何產品都將游刃有餘,穩定且高效。 本書是二位Linux技術專家多年開發經驗的總結和分享,是將Linux應用層與核心層結合的技術圖書,選擇這種寫作方式是為了向APUE作者致敬。本書涵蓋APUE中大部分章節的內容,並針對Linux環境,根據作者多年經驗,詳細解析Linux常用介面的使用方法和陷阱。為了讓讀者更清楚地理解介面的工作原理,對於絕大部分介面,作者都深入C函式庫或核心原始碼進行全面分析。希望本書可以幫助讀者打通Linux環境的應用和核心兩條脈絡,使兩條線融會貫通,進一步提高開發水準。
MIS的安全防禦:Linux系統與網路安全
175個實務技巧觀念Step by step快速實作 提供實務技術 立即做到網路環境的安全維護 ★入門與歷史介紹:說明安全的發展與基本安全概念 ★洞察攻擊:了解常見的攻擊手法以及我們常忽略的細節 ★安全防禦:在Linux上架設防火牆與建立更安全的環境 ★追蹤與復原:尋找問題的發生原因,並對問題進行判斷、預防與修復 安全性的問題一直是重要的課題,從最基本的人身安全、詐騙行為、住家安全、金融交易等,到目前因網際網路的發達而產生網路與系統的安全問題。 Linux目前多為應用伺服器的作業系統,包括閘道伺服器、網站伺服器、郵件伺服器等,是面對網際網路最前線的戰場,因此其安全與穩定更顯得格外的重要。 本書規劃175個技巧觀念,可獨立閱讀,讓你易於掌握概念與操作設定。內容以常見的Red Hat系列(含Red Hat Enterprise、CentOS與Fedora)與Ubuntu系列(Debian與Ubuntu)為基礎系統,分為4篇共16章來討論安全實務技術。 透過本書175個技巧觀念,您將掌握: ★常見的欺騙行為 ★安全資訊的收集 ★構思並撰寫後門程式 ★消耗與管理系統資源 ★猜測密碼與監聽封包 ★主機前的問題與管理對策 ★跳過認證登入與救援模式的使用 ★有效的管理帳號與檔案權限 ★管理記錄與排程 ★使用內建工具過濾封包 ★網路連線的限制與管理 ★有效地使用防火牆工具 ★自製陷阱誘捕入侵者 ★基本軟硬體與安全問題的處理
成為Linux大師的第一步
嵌入式Linux 在各行各業中已被廣泛應用,在物聯網、通訊企業、航太、消費電子、汽車電子等企業中,都急需掌握嵌入式Linux 軟體開發的研發人員。 本書特色 ◎第一線研發實戰經驗累積,所有技巧及說明使用的工具都可以直接應用到實際開發工作中。 ◎採用範本的方式對分散的各種驅動程式基礎知識說明,所有範本都可以直接參考。 ◎對每個基礎知識都提供實際案例,從模組的原理介紹,到系統每次的分析,圖文並茂,力求分析透徹。 ◎提供大量的驅動程式,可以快速應用在實際開發中,讀者可直接執行偵錯。
Linux資訊安全聖經
本書作者有多年的全球前500大企業的資訊安全管理工作經驗,深諳前500大企業資訊安全建設、規劃、實施和管理的細節、困難和重點問題;對於資訊安全在建設、規劃、實施和管理等方面都有其獨到之處,可作為其他中小型和大型企業的參考。 全書以作者在全球前500大企業中,使用企業級開放原始碼作業系統Linux在資訊安全中的部署和使用方法為切入點,來介紹如何做好資訊安全工作。 針對企業實際需求,對如何使用企業開放原始碼Linux作業系統來進行資訊安全建設進行全面、深入和系統的分析,並透過大量的威脅分析、解決想法、解決技術及實現實例來介紹。
解析Linux 驅動程式設計
本書涵蓋 Linux 核心及模組的編譯流程,接著說明其檔案系統、資料結構、事件管理及 IRQ 等概念。並分門別類陳述諸如網路、輸入、I2C、PCI、USB 等領域之驅動程式設計。