دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: نویسندگان: Kameron Hussain, Frahaan Hussain سری: ناشر: Sonar Publishing سال نشر: 2024 تعداد صفحات: 370 زبان: English فرمت فایل : EPUB (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 2 Mb
در صورت تبدیل فایل کتاب Linux Unveiled: From Novice to Guru به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب لینوکس رونمایی کرد: از تازه کار تا گورو نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Chapter 1: The Genesis of Linux 1.1. The Birth of a Penguin: Origins of Linux 1.2. Open Source Revolution: The Philosophy of Linux Open Source Principles The GNU GPL and Linux Collaboration and Community Advantages of Open Source The Legacy of Open Source in Linux 1.3. Distributions Galore: Understanding Different Flavors Diversity of Linux Distributions Popular Linux Distributions Specialized Distributions Package Management Systems 1.4. Community and Culture: The Heart of Linux The Open Source Community Linux User Groups (LUGs) Distribution Communities Licensing and Freedom The Linux Culture The Global Impact 1.5. Linux vs. Other Operating Systems: A Comparative Study Open Source vs. Closed Source Licensing Hardware Compatibility Software Ecosystem Command Line Interface (CLI) System Updates and Security Cost Considerations User Community and Support Use Cases Conclusion Chapter 2: Setting the Stage 2.1. Choosing the Right Distribution Distributions and Their Varieties Consider Your Use Case Community and Documentation Conclusion 2.2. Installation Essentials: A Step-by-Step Guide Backup Your Data Create Installation Media Boot from Installation Media Begin the Installation Installation Progress Complete the Installation First Boot and Post-Installation Tasks 2.3. Navigating the Linux Desktop Environment Common Desktop Environments Desktop Elements Keyboard Shortcuts Customization Conclusion 2.4. Basic Terminal Commands: The First Steps Opening a Terminal Understanding the Terminal Prompt Basic Terminal Commands Automation and Scripting System Administration Remote Access Flexibility and Customization Troubleshooting and Diagnostics Learning the Command Line Conclusion 3.2. Essential Command Line Operations Command Syntax Navigating the File System File and Directory Manipulation Viewing and Editing Files Working with Permissions Process Management 3.3. File Management and Navigation Listing Files and Directories Navigating Directories Creating and Removing Files and Directories Copying and Moving Files Finding Files Conclusion 3.4. Users and Permissions: A Security Primer User Accounts User Management Commands User Permissions Changing Permissions Ownership and Groups Special Permissions Conclusion 3.5. Exploring Process Management What Is a Process? Viewing Running Processes Managing Processes Process Priority Background and Foreground Execution Conclusion Chapter 4: Networking and Connectivity 4.1. Understanding Linux Networking Linux Networking Architecture Network Interfaces IP Addressing Routing and Gateways DNS and Name Resolution Conclusion 4.2. Configuring Network Interfaces Network Interface Names Configuring Wired Ethernet Interfaces Configuring Wireless Interfaces Network Configuration Files Network Manager Conclusion 4.3. Secure Remote Access with SSH SSH Basics Generating SSH Key Pair Copying Public Key to Remote Server Logging In with SSH Keys Disabling Password Authentication SSH Agent Conclusion 4.4. Sharing Data: NFS and Samba NFS (Network File System) Samba Conclusion 4.5. Advanced Networking Tools and Techniques 1. Wireshark 2. Netstat and ss 3. Nmap 4. TCPdump 5. iproute2 6. Traffic Shaping with tc 7. Virtual LANs (VLANs) 8. IPv6 Configuration 9. Network Bonding Conclusion Chapter 5: System Administration Basics 5.1. User and Group Management 1. Creating User Accounts 2. Setting User Passwords 3. Modifying User Accounts 4. Deleting User Accounts 5. Creating Groups 6. Adding Users to Groups 7. Listing Users and Groups 8. Managing User Privileges 9. Locking and Unlocking User Accounts 10. User and Group Files 5.2. System Monitoring and Performance Tuning 1. Monitoring Tools 2. Performance Tuning 3. Resource Monitoring and Alerts 4. Logs and Troubleshooting 5. Monitoring Solutions Conclusion 5.3. Task Scheduling with Cron 1. Understanding Cron 2. Crontab Syntax 3. Editing Your Crontab 4. Examples of Cron Jobs 5. Common Crontab Commands 6. System-wide Cron Jobs 7. Logging Cron Output Conclusion 5.4. Backup Strategies and Solutions 1. Backup Strategies 2. Backup Solutions 3. Remote Backups 4. Backup Retention and Rotation 5. Testing Backups 6. Monitoring and Alerts 7. Documentation Conclusion 5.5. System Logs and Troubleshooting 1. Log Files 2. Viewing Log Files 3. Filtering Log Entries 4. Log Rotation 5. Common Troubleshooting Scenarios 6. Debugging Tools Conclusion 6.1. Understanding Linux Filesystems Filesystems in Linux Directory Structure Mounting Filesystems Filesystem Types and Formats Checking and Repairing Filesystems Filesystem Labels and UUIDs Conclusion 6.2. Partitioning and Mounting Drives Understanding Partitions Partitioning Tools Filesystem Formatting Mounting Partitions Automounting Partitions Checking Partitions Conclusion 6.3. LVM: Logical Volume Management Understanding LVM Components Creating and Managing PVs Creating VGs Creating and Managing LVs Formatting and Mounting LVs Resizing LVs Conclusion 6.4. RAID Configuration and Management Understanding RAID Levels Creating and Managing RAID Arrays Monitoring RAID Arrays Conclusion 6.5. Disk Quotas and Filesystem Maintenance Understanding Disk Quotas Enabling Disk Quotas Setting User and Group Quotas Checking Quota Usage Filesystem Maintenance Conclusion Chapter 7: Security and Hardening 7.1. Linux Security Essentials User Accounts and Passwords File Permissions and Ownership Firewall Configuration Regular Updates and Patch Management Auditing and Monitoring Security Policies and SELinux/AppArmor Conclusion 7.2. Firewall Configuration and Management Understanding Firewalls iptables firewalld Choosing Between iptables and firewalld Conclusion 7.3. Implementing Security Audits and Scans Why Security Audits and Scans are Necessary Security Audit Tools Best Practices for Security Audits and Scans Conclusion 7.4. SELinux and AppArmor: Mandatory Access Controls Understanding Mandatory Access Control SELinux (Security-Enhanced Linux) AppArmor Choosing Between SELinux and AppArmor 7.5. Secure Boot and Kernel Hardening Secure Boot Kernel Hardening Chapter 8: Scripting and Automation 8.1. Introduction to Bash Scripting What is Bash? Why Use Bash Scripting? Getting Started with Bash Scripts Running Bash Scripts Variables in Bash User Input Conditional Statements Loops Functions Conclusion 8.2. Automating Tasks with Shell Scripts Understanding Script Execution Passing Arguments to Scripts Conditional Statements in Scripts Looping in Shell Scripts Using Functions Working with Input and Output Scripting Best Practices Conclusion 8.3. Advanced Scripting Techniques 1. Handling Command-Line Options 2. Error Handling and Logging 3. Debugging with set -x 4. Handling Signals 5. Advanced Flow Control 6. Script Security 7. Modular Scripts 8. Using External Commands 9. Testing and Validation 8.4. Scripting for System Administration 1. Automating Routine Tasks 2. System Monitoring and Alerts 3. Log Analysis and Reporting 4. System Updates and Patch Management 5. User Account Management 6. Scheduled Maintenance and Tasks 7. Disaster Recovery and Data Restoration 8.5. Error Handling and Script Debugging 1. Error Handling 2. Script Debugging 3. Best Practices Chapter 9: Deploying Web Servers and Services 9.1. Setting up a LAMP Stack 1. What is a LAMP Stack? 2. Installing the LAMP Components 3. Testing the LAMP Stack 4. Securing the LAMP Stack 9.2. Hosting and Managing Websites 1. Preparing Your Website Files 2. Creating Virtual Hosts 3. DNS Configuration 4. Testing Your Website 5. Website Management 9.3. Secure Certificates and HTTPS Configuration 1. Obtaining SSL/TLS Certificates 2. HTTPS Configuration 3. Regular Maintenance 9.4. Reverse Proxies and Load Balancing 1. What Is a Reverse Proxy? 2. Configuring Nginx as a Reverse Proxy 3. Load Balancing 9.5. Monitoring and Optimizing Web Performance 1. Web Performance Metrics 2. Monitoring Tools 3. Optimization Techniques 4. Best Practices Chapter 10: Advanced File Systems and Storage 10.1. Exploring ZFS and Btrfs 1. ZFS: Zettabyte File System 2. Btrfs: B-tree File System 3. Choosing Between ZFS and Btrfs 10.2. Network Attached Storage (NAS) Solutions What is Network Attached Storage (NAS)? Popular NAS Solutions Setting Up and Configuring NAS Conclusion 10.3. Cloud Storage Integration Why Integrate Cloud Storage with Linux? Popular Cloud Storage Providers Tools and Protocols for Cloud Storage Integration Best Practices for Cloud Storage Integration Conclusion 10.4. Advanced Filesystem Features Snapshots Quotas Extended Attributes Filesystem-Level Encryption Conclusion 10.5. Data Recovery Techniques 1. Regular Backups 2. PhotoRec 3. TestDisk 4. Extundelete 5. Foremost 6. Data Rescue 7. Disk Imaging 8. Professional Data Recovery Services Conclusion Chapter 11: Virtualization and Containers Section 11.1: Virtualization in Linux: An Overview What is Virtualization? Types of Virtualization Benefits of Virtualization in Linux Use Cases for Virtualization in Linux Section 11.2: Setting Up and Managing Virtual Machines Hypervisors and Virtualization Technologies Installing a Hypervisor Creating Virtual Machines Managing Virtual Machines Section 11.3: Introduction to Containers and Docker What Are Containers? Introduction to Docker Key Docker Concepts Getting Started with Docker Section 11.4: Kubernetes: Container Orchestration Key Concepts in Kubernetes Why Use Kubernetes? How Kubernetes Works Getting Started with Kubernetes Section 11.5: Best Practices in Virtualization and Containerization 1. Right-Size Resources 2. Use Container Orchestration 3. Implement Monitoring and Logging 4. Regularly Update and Patch 5. Secure Your Containers 6. Backup and Disaster Recovery 7. Optimize Networking 8. Use Infrastructure as Code (IaC) 9. Follow Naming Conventions 10. Documentation and Training 11. Implement Security Policies 12. Test and Validate 13. Consider Auto-Scaling 14. Regularly Review and Optimize Chapter 12: Linux in the Cloud Section 12.1: Cloud Computing with Linux Section 12.2: Deploying Linux on Major Cloud Platforms Amazon Web Services (AWS) Microsoft Azure Google Cloud Platform (GCP) Section 12.3: Cloud Storage and Linux Amazon S3 Azure Blob Storage Google Cloud Storage (GCS) Section 12.4: Advanced Filesystem Features 1. Journaling Filesystems 2. Extended Attributes (xattr) 3. Filesystem Quotas 4. Sparse Files 5. Filesystem Compression 6. Filesystem Encryption 7. RAID and Redundancy 8. Filesystem Snapshots 9. Data Deduplication 10. Filesystem Check and Repair Section 12.5: Data Recovery Techniques 1. Backup and Restore 2. Testdisk and PhotoRec 3. Extundelete 4. Foremost 5. PhotoRec 6. DDRescue 7. Filesystem Check and Repair 8. Data Recovery Services 9. Safeguarding Data Chapter 13: Desktop Linux: Beyond the Basics Section 13.1: Customizing the Linux Desktop Section 13.2: Advanced Desktop Environments 1. KDE Plasma 2. Xfce 3. LXQt 4. Pantheon 5. Cinnamon 6. Budgie 7. Deepin Desktop Section 13.3: Linux for Multimedia and Gaming Multimedia on Linux Gaming on Linux Section 13.4: Troubleshooting Common Desktop Issues 1. Slow Performance 2. Wi-Fi Connectivity Problems 3. Audio Issues 4. Display Resolution Problems 5. Software Installation Failures 6. Frozen or Unresponsive Desktop 7. Application Crashes 8. Filesystem Errors Section 13.5: Transitioning to Linux from Other Operating Systems 1. Choosing the Right Linux Distribution 2. Familiarizing Yourself with the Desktop Environment 3. Software Compatibility and Alternatives 4. Learning the Command Line 5. Package Management 6. Filesystem Hierarchy 7. User and Permission Management 8. Community Support 9. Backup and Data Migration 10. Patience and Persistence Chapter 14: Programming in Linux Section 14.1: Development Environment Setup 1. Choose Your Programming Language 2. Text Editors and Integrated Development Environments (IDEs) 3. Version Control with Git 4. Build and Compilation Tools 5. Package Managers 6. Libraries and Frameworks 7. Documentation and Online Resources 8. Testing and Debugging Tools 9. Scripting and Automation 10. Continuous Integration and Deployment (CI/CD) Section 14.2: Basic Programming in Linux 1. Writing Your First Program 2. Compiling C/C++ Programs 3. Using an Integrated Development Environment (IDE) 4. Version Control with Git 5. Exploring Linux Libraries 6. Building on Command Line 7. Learning Resources Section 14.3: Version Control with Git 1. Installing Git 2. Initializing a Git Repository 3. Adding and Committing Changes 4. Checking Status and History 5. Branching and Merging 6. Collaborating with Remote Repositories 7. Resolving Conflicts 8. Git Resources Section 14.4: Building and Compiling Software 1. Source Code and Compilation 2. Makefiles 3. Building Software from Source 4. Package Managers 5. Conclusion Section 14.5: Cross-Platform Development Considerations 1. Choosing Cross-Platform Tools and Libraries 2. Writing Platform-Agnostic Code 3. Testing on Multiple Platforms 4. User Interface Considerations 5. Handling File Paths and System Calls 6. Version Control and Collaboration 7. Continuous Integration (CI) Chapter 15: Performance Tuning and Optimization Section 15.1: System Monitoring Tools 1. Top 2. Htop 3. Glances 4. Sysstat 5. Prometheus and Grafana Section 15.2: Kernel Tuning and Parameters 1. sysctl: Kernel Parameter Management 2. Swappiness 3. Filesystem I/O Scheduler 4. Transparent Huge Pages (THP) Section 15.3: Optimizing Disk I/O 1. Filesystem Choice 2. Disk Partitioning and Layout 3. Disk Scheduling 4. Disk Caching 5. Use Solid State Drives (SSDs) 6. Monitor Disk I/O Section 15.4: Network Performance Tuning 1. Use Gigabit or 10-Gigabit Ethernet 2. Optimize MTU (Maximum Transmission Unit) 3. Use Jumbo Frames 4. TCP Window Size 5. Tune Network Buffers 6. Enable TCP Offload 7. Use Multiqueue Network Cards 8. Enable Receive-Side Scaling (RSS) 9. Monitor Network Performance 10. Optimize Firewall Rules Section 15.5: Application Performance Analysis 1. top and htop: Monitoring Processes 2. strace: Tracing System Calls 3. lsof: Listing Open Files 4. vmstat: System Statistics 5. iostat: Disk I/O Statistics 6. sar: System Activity Reporter 7. perf: Performance Analysis 8. strace: Profiling Applications 9. Valgrind: Memory Profiling 10. GDB: Debugging and Profiling 11. Flame Graphs: Visualization 12. Application-Specific Profilers 13. Benchmarking Tools 14. Continuous Monitoring 15. Application Profiling Best Practices Chapter 16: Advanced Networking and Security Section 16.1: VPN Configuration and Usage Section 16.2: Advanced Firewall Techniques Section 16.3: Intrusion Detection and Prevention Systems Types of Intrusion Detection and Prevention Systems Implementing IDPS on Linux Example: Setting Up Snort NIDPS on Linux Section 16.4: Network Traffic Analysis The Importance of Network Traffic Analysis Implementing Network Traffic Analysis on Linux Example: Using Wireshark for Network Traffic Analysis Section 16.5: Secure Tunneling and Encryption Techniques Importance of Secure Tunneling and Encryption Secure Tunneling and Encryption Techniques Chapter 17: High Availability and Clustering Section 17.1: Concepts of High Availability Key Concepts in High Availability: Benefits of High Availability: High Availability Solutions in Linux: Section 17.2: Clustering in Linux What is Clustering? High Availability Clusters: Importance of Clustering: Types of Clusters: Cluster Technologies: Section 17.3: Load Balancing and Failover Techniques Load Balancing: Failover Techniques: Importance of Load Balancing and Failover: Section 17.4: Disaster Recovery Planning Importance of Disaster Recovery Planning: Components of Disaster Recovery Planning: Implementing a Disaster Recovery Plan: Section 17.5: Case Studies of High Availability Solutions Case Study 1: E-commerce Website Case Study 2: Financial Services Case Study 3: Healthcare Case Study 4: Online Gaming Case Study 5: Education Chapter 18: Linux in Enterprise Environments Section 18.1: Deploying Linux in Large Scale Environments Section 18.2: Centralized Authentication and Directory Services Benefits of Centralized Authentication Common Centralized Authentication Solutions Implementing Centralized Authentication Conclusion Section 18.3: Infrastructure as Code: Tools and Practices The Significance of Infrastructure as Code Common IaC Tools IaC Best Practices Example Terraform Configuration Conclusion Section 18.4: Compliance and Standards in Enterprise The Importance of Compliance Common Compliance Frameworks and Regulations Achieving Compliance with Linux Example: HIPAA Compliance Conclusion Section 18.5: Linux in Mixed-OS Environments Challenges in Mixed-OS Environments Best Practices for Managing Mixed-OS Environments Example: File Sharing Between Linux and Windows Conclusion Section 19.1: Linux in IoT (Internet of Things) IoT Applications Powered by Linux Challenges in IoT with Linux Linux Distributions for IoT Example: Setting up a Raspberry Pi for IoT Conclusion Section 19.2: Blockchain and Linux Linux as the Preferred Platform for Blockchain Running Blockchain Nodes on Linux Smart Contract Development on Linux Conclusion Section 19.3: AI and Machine Learning in Linux Advantages of Linux for AI and ML Tools and Libraries Getting Started with AI/ML on Linux Conclusion Section 19.4: Linux in Edge Computing The Role of Linux in Edge Computing Benefits of Linux in Edge Computing Use Cases of Linux in Edge Computing Getting Started with Linux in Edge Computing Section 19.5: Future Trends in Linux Technologies 1. Kernel Advancements 2. Containerization and Orchestration 3. Artificial Intelligence (AI) and Machine Learning (ML) 4. Edge Computing 5. Security and Privacy 6. IoT Integration 7. Quantum Computing 8. Graphical User Interfaces (GUI) 9. Energy Efficiency 10. Community and Collaboration Chapter 20: The Road Ahead: Staying Current in Linux Section 20.1: Keeping Up with Linux Updates 1. Regular System Updates 2. Kernel Updates 3. Software Repositories 4. Security Updates 5. LTS (Long-Term Support) Releases 6. Subscribe to Newsletters and RSS Feeds 7. Join Online Forums and Communities 8. Contribute to Open Source Projects 9. Advanced Certifications and Training 10. Predictions and Directions Section 20.2: Engaging with the Linux Community 1. Online Forums and Mailing Lists 2. Contribute to Open Source Projects 3. Attend Linux User Groups (LUGs) and Conferences 4. Join Social Media and IRC Channels 5. Blogs and Personal Projects 6. Contribute to Documentation 7. Mentoring and Teaching 8. Support and Advocate for Open Source 9. Stay Informed 10. Respect and Follow Community Guidelines Section 20.3: Advanced Certifications and Training The Significance of Certifications Popular Linux Certifications Obtaining Linux Certifications Training and Learning Resources Maintenance and Renewal Section 20.4: Contributing to Open Source Projects Why Contribute to Open Source? Getting Started Best Practices for Open Source Contributions Finding Open Source Projects Conclusion Section 20.5: The Future of Linux: Predictions and Directions 1. Continued Growth in Open Source 2. Containers and Orchestration 3. Cloud and Edge Computing 4. Security Enhancements 5. Performance Optimization 6. Diversity of Distributions 7. AI and Machine Learning Integration 8. Hardware Support 9. Desktop Linux Evolution