当前位置:文档之家› 鸟哥的linux私房菜:鸟哥的Linux私房菜目录 鸟哥的linux私房菜

鸟哥的linux私房菜:鸟哥的Linux私房菜目录 鸟哥的linux私房菜

鸟哥的linux私房菜:鸟哥的Linux私房菜目录 鸟哥的linux私房菜
鸟哥的linux私房菜:鸟哥的Linux私房菜目录 鸟哥的linux私房菜

鸟哥的linux私房菜:鸟哥的Linux私房菜目录鸟哥的

linux私房菜

鸟哥的linux私房菜:鸟哥的Linux私房

菜目录鸟哥的linux私房菜

话题:鸟哥的linux私房菜兴趣爱好什么是操作系统什么是磁盘阵列文件目录第一部分认识Linux及Linux主机规划安装第1章什么是Linux21.1

什么是Linux31.1.1 计算机:计算的辅助工具31.1.2 什么是操作系统31.1.3 Linux之前UNIX的历史51.1.4 关于GNU计划91.2 Torvalds的Linux开发

111.2.1 与Minix之间111.2.2 386硬件的多任务测试111.2.3 初次发布Linux 0.02121.2.4 Linux的开发:虚拟团队的产生131.2.5 Linux 版本141.3 Linux的特性151.3.1 Linux的特性161.3.2 Linux的优缺点161.3.3 其他相关信息171.4 习题181.5 参考资料19第2章如何学习Linux202.1 Linux的应用212.2 基础学习222.2.1 从头学习222.2.2 选择工具书232.2.3 实践再实践232.3 学习方法232.3.1 X Window还是命令行242.3.2 主机/网络数据查询242.3.3 向别人提问252.3.4 笔者的建议252.4 习题26第3章 Linux主机的规划273.1 认识主机硬

组件283.1.1 认识计算机的硬件配置283.1.2 选择适合Linux系统的主机配

置333.1.3 Linux中的硬件设备号353.2 安装Linux前的规划363.2.1 选择适当的版本363.2.2 主机服务规划与硬件的关系373.2.3 主机硬盘的主要规划

383.2.4 练习机的安装建议393.3 实际案例393.4 习题403.5 参考资料41第4

章安装FC4与多重启动技巧424.1 安装Linux的第一步:规划434.1.1 练习机的规划434.1.2 硬盘连接与硬盘号444.1.3 识别硬盘分区454.1.4 Linux安装模式中硬盘分区的选择(极重要)464.2 开始安装Fedora Core Release IV474.2.1

选择启动顺序并启动474.2.2 选择安装模式484.2.3 选择安装程序的语系与

键盘配置494.2.4 安装的系统类型与磁盘分区514.2.5 选择引导程序564.2.6 设置网络与防火墙564.2.7 选择时区与设置root密码584.2.8 选择软件包594.2.9 其他注意事项624.3 多重启动安装流程与技巧624.4 大硬盘导致无法启动的问题644.5 习题64第5章启动关机、在线求助与执行命令的方式655.1 首次登入系统665.1.1 首次登入FC图形界面665.1.2 KDE的简单操作735.1.3 切换X Window与命令行模式765.2 用命令行模式登入Linux765.3 在命令行模式执行命令775.3.1 开始执行命令785.3.2 基础命令操作795.3.3 重要的热键 [Tab]、[Ctrl]-c、[Ctrl]-d815.3.4 查看错误信息825.4 在线帮助:man page/info page835.4.1 man

page835.4.2 info page875.4.3 其他有用的文档885.5 正确的

关机方法(shutdown、reboot、init、halt)895.5.1 数据同步写入磁

盘:sync895.5.2 常用的关机命令:shutdown905.5.3 重新启动和关机:reboot、halt、poweroff905.6 启动过程的故障排除915.6.1 扇区错乱的问题915.6.2 忘记root密码925.7 习题92第二部分 Linux文件、目录与磁盘格式第6章 Linux 的文件属性与目录配置956.1 用户与用户组966.2 Linux文件权限976.2.1 Linux 文件属性976.2.2 更改文件权限1006.2.3 目录属性的意义1036.2.4 Linux文件类型与扩展名1046.3 Linux目录配置1066.3.1 Linux目录配置标准FHS1066.3.2 目录配置的内容1076.3.3 特殊目录1116.3.4 一般主机分区与目录的配置1116.4 Linux支持的文件系统1126.5 参考资料1136.6 习题113第7章 Linux文件和目录管理1147.1 目录与路径1157.1.1 相对路径与绝对路径1157.1.2 目录的相关操作1157.1.3 执行文件路径的变量:$PATH1187.2 管理文件与目录1187.2.1 查看文件和目录:ls1197.2.2 复制、移动和删除:cp、rm、mv1207.2.3 获取路径的文件名与目录名1237.3 查看文件内容1247.3.1 直接查看文件内容1247.3.2 翻页查

看1267.3.3 数据选取1277.3.4 非纯文本文件:od1287.3.5 修改文件时间与创建新文件:touch1287.4 文件与目录的默认权限与隐藏权限1307.4.1 文件默认权限:umask1317.4.2 文件隐藏属性1327.4.3 文件特殊权限:SUID/SGID/Sticky

Bit1337.4.4 文件类型:file1357.5

搜索文件1357.6 习题138第8章 Linux磁盘与文件系统管理1408.1 认识EXT2文件系统1418.1.1 硬盘物理组成1418.1.2 分区1428.1.3 文件系统1428.1.4 Linux的EXT2文件系统(inode)1438.1.5 EXT2/EXT3文件的访问与日志文件系统的功能1458.1.6 Linux文件系统的运行1488.1.7 载入点1488.1.8 Linux支持的其他文件系统1488.2 文件系统的简单操作1498.2.1 磁盘与目录的容量1498.2.2 连接文件:ln1528.3 磁盘的分区、格式化、检验与载入1548.3.1 分区:fdisk1558.3.2 磁盘格式化1598.3.3 磁盘检验:fsck、badblocks1608.3.4 磁盘载入与卸载1628.3.5 修改磁盘参数1648.4 设置启动载入1678.4.1 载入磁盘、中文编码和U盘1678.4.2 启动载入 /etc/fstab和/etc/mtab1688.5 建立虚拟内存1708.5.1 建立虚拟内存设备1708.5.2 建立虚拟内存文件1718.6 参考资料1728.7 习题172第9章文件的压缩与打包1739.1 压缩文件的用途与技术1749.2 Linux系统常见的压缩命令1759.2.1 compress1759.2.2 gzip、

zcat1769.2.3 bzip2、bzcat1779.2.4 tar1779.2.5 dd1799.2.6 cpio180第三部分学习Shell和Shell脚本第10章 vi文字处理器18310.1 vi与vim18410.2 vi 的使用18410.2.1 简单执行范例18510.2.2 命令行内容说明18610.2.3 案例练习19010.2.4 文件的恢复与暂存盘19010.3 vim的附加功能19110.3.1 块选择(Visual Block)19110.3.2 多文件编辑19210.3.3 多窗口功能

19310.3.4 vim环境设置19410.4 使用vi进行编辑的练习19510.5 DOS与Linux的换行符19610.6 本章与LPI的关系19610.7 参考资料19710.8 习题197第11章认识Bash Shell19811.1 Bash Shell19911.1.1 什么是Shell19911.1.2

系统的shell与 /etc/shells功能20011.1.3 Bash Shell的功能20111.1.4 Bash Shell的内置命令:type20211.1.5 执行命令20311.2 Shell的变量功能20411.2.1 变量的获取与设置:echo、变量设置规则、unset20511.2.2 变量的用途20711.2.3 环境变量的功能20811.2.4 语系文件的变量(locale)21111.2.5

变量的有效范围21311.2.6 变量键盘读取、数组与声明:read、array、

declare21311.2.7 与文件系统及程序的限制关系:ulimit21511.2.8 附加的变量设置功能21511.3 命令别名与历史命令21711.3.1 命令别名设置:alias、

unalias21711.3.2 历史命令:history21811.4 Bash Shell使用环境22011.4.1 绝对路径与相对路径22011.4.2 登录消息显示数据:/etc/issue、

/etc/motd22111.4.3 环境设置文件:bashrc、~/.bashrc、~/.profile、profile...、/etc/inputrc、source22211.4.4 终端的环境设置:stty、

set22411.4.5 通配符与特殊符号22611.4.6 数据流重导向22811.4.7 什么是数据流重导向22811.4.8 命令执行的判断根据:; 、&&、||23111.5 管道命令(pipe)23211.5.1 选取命令:cut、grep23211.5.2 排序命令:sort、wc、

uniq23411.5.3 双向重导向:tee23611.5.4 字符转换命令:

tr、col、join、paste、expand23611.5.5 拆分命令:split23911.5.6

参数代换:xargs23911.5.7 减号(-)的用途24011.6 参考资料24111.7 习题

241第12章正则表达式24212.1 简介24312.1.1 什么是正则表达式24312.1.2

系统管理员使用正则表达式24312.1.3 正则表达式的广泛用途24312.1.4 正则表

达式与Shell在Linux中的角色定位24412.1.5 扩展的正则表达式24412.2 基础

正则表达式24412.2.1 通过grep选取字符串24412.2.2 重要特殊字符(characters)25012.3 扩展正则表达式25112.4 格式化显示:printf25212.5 sed

工具简介25412.6 awk工具简介25512.7 文件数据比较与显示的相关功能

25812.7.1 文件比较25812.7.2 文件打印准备:pr26012.8 重点回顾26112.9 参考

资料26112.10 习题261第13章学习Shell脚本26213.1 什么是Shell脚本26313.1.1 为什么学习Shell脚本26313.1.2 第一个脚本的编写与执行26413.1.3 编写Shell脚本的良好习惯26513.2 简单的Shell脚本练习26513.3 善用判断条件26713.3.1 使用 test 命令的测试功能26713.3.2 使用判断符号 [ ]27013.3.3 Shell脚本的默认变量($0, $1...)27113.4 条件判断27213.4.1 使用

if...then27213.4.2 使用case...esac判断27513.4.3 使用函数功能27713.5 循环27913.5.1 while do done、until do done27913.5.2

for...do...done28013.6 Shell脚本的追踪与调试28213.7 习题283第四部分Linux用户管理第14章 Linux

账号与身份管理28514.1 Linux的账号与用户组28614.1.1 用户识别:UID与GID28614.1.2 用户账号:/etc/passwd, /etc/shadow28714.1.3 关于用户组:有效与初始用户组、

groups、newgrp28914.2 账号管理29114.2.1 新增与删除用户:useradd、相关设置文件、passwd、usermod、userdel29114.2.2 用户功能:chfn,chsh29614.2.3 新增与删除用户组29814.2.4 密码管理:passwd30014.3 切换用户身份30114.3.1 su30214.3.2 sudo30314.4 用户的特殊Shell与PAM模块30614.4.1 特殊的shell、/sbin/nologin30614.4.2 PAM 模块:/etc/nologin、

/etc/securetty30614.5 Linux系统的用户对话与邮件的使用30914.5.1 查询用户:w、who、last、lastlog30914.5.2 用户对话:talk、mesg、wall30914.5.3 用户邮件信箱:

mail31014.6 手动增加用户31214.6.1 一些检查工具

31214.6.2 特殊账号,如纯数字账号的建立31314.6.3 不开放终端登录的账号(ex > mail acccount)31414.6.4 建立账号的范例31514.7 习题316第15章Linux磁盘配额31715.1 什么是磁盘配额31815.2 基本磁盘配额命令31915.3 磁

盘配额实例32215.4 不更改现有系统的磁盘配额实例32615.5 习题327第16章例行性命令的建立32816.1 什么是例行性命令32916.1.1 Linux工作任务分配的种类:at、cron32916.1.2 系统常见的例行性命令32916.2 仅进行一次的工作任务分配:at33016.3 循环执行的例行性命令33216.3.1 用户的设置: crontab33216.3.2 系统的设置:/etc/crontab33416.4 一些使用特性33516.5 习题336第17章程序与资源管理33717.1 什么是进程33817.1.1 进程与程序33817.1.2 Linux的多用户、多任务环境33917.2 作业管理:&、[ctrl]-z、jobs、fg、bg、kill34117.3 进程管理34417.3.1 进程的观察34417.3.2 进程的删除34917.3.3 系统资源的观察35017.4 进程的执行顺序35417.5 特殊文件与进程35517.5.1 SUID/SGID/SBIT的概念35517.5.2 /proc/* 的意义35617.5.3 查询已打开的文件或已执行进程打开的文件35717.6 参考资料36017.7 习题360第五部分 Linux系统管理员第18章启动关机的流程与加载程序36218.1 启动流程36318.1.1 引导加载程序与核心载入36318.1.2 第一个程序init及设置文件

/etc/inittab与runlevel36418.1.3 init处理系统初始化流程

(/etc/rc.d/rc.sysinit)36618.1.4 启动系统服务与相关启动设置文件

(/etc/rc.d/rc.n与/etc/sysconfig)36718.1.5 用户自定义引导启动程序

(/etc/rc.d/rc.local)36818.1.6 根据 /etc/inittab

设置加载终端或X-Window界面36818.1.7 其他启动相关事项36918.1.8 变换运行等级37018.2 核心与核心模块37118.2.1 核心模块与依赖性37118.2.2 核心模块的观察:lsmod、modinfo37218.2.3 核心模块的加载与删除:insmod、modprobe、rmmod37318.2.4 核心模块的额外参数设

置:/etc/modprobe.conf37418.3 引导加载程序: Grub37418.3.1 引导加载程序的功能与意义37418.3.2 grub的设置文件 /boot/grub/menu.lst 与安装类型37518.3.3 测试与安装grub37818.3.4 启动前的额外功能修改

38018.3.5 核心功能中的vga设置38218.3.6 大硬盘的问题38218.4 引导加载程序: LILO38218.4.1 LILO的设置文件 /etc/lilo.conf38318.4.2 测试与安装LILO引导加载程序38418.4.3 问题与解决方法38518.5 解决启动过程的问题38618.5.1 忘记root密码的解决方案38618.5.2 设置错误无法启动38718.5.3 利用chroot切换到另一个硬盘38718.6 参考资料38818.7 习题388第19章源码与Tarball套件管理程序38919.1 简介39019.1.1 什么是开放源码、

编译器与可执行文件39019.1.2 什么是函数库39119.1.3 什么是make与configure39219.1.4 什么是Tarball的套件39219.1.5 安装与升级套件39219.2 一个简单的范例39319.2.1 显示Hello World39319.2.2 编译子程序39419.2.3

加入函数库39519.2.4 使用gcc39619.3 make的简单用法39719.3.1 为什么要用make39719.3.2 make的基本语法与变量39819.4 Tarball的管理与建议40019.4.1 使用源码管理套件所需要的基础套件40019.4.2 Tarball安装的基本步骤

40119.4.3 Tarball套件安装的注意事项(如何删除、升级)40219.4.4 简单的范例:使用ntp40319.4.5 使用patch更新源码40419.5 函数库管理40619.5.1 动态与

静态函数库40619.5.2 ldconfig与 /etc/ld.so.conf40719.5.3 ldd40719.6 检验软件正确性:md5sum40819.7 重点回顾40919.8 参考资料410第20章 RPM

与SRPM套件管理程序41120.1 简介41220.1.1 什么是RPM与SRPM41220.1.2 什

么是i386、i586、i686、noarch41320.1.3 RPM的优点41420.1.4 解决RPM属性

依赖问题41420.2 RPM套件管理程序41420.2.1 RPM的默认安装路径41420.2.2 RPM安装(install)41520.2.3 RPM升级与更新41620.2.4 RPM查询41720.2.5 RPM 验证与数字签名41920.2.6 RPM卸载与重建数据库42120.3 SRPM的使用

42120.3.1 使用系统默认值安装SRPM文件42120.3.2 SRPM使用的路径与需要的套件42220.3.3 配置文件的主要内容42220.3.4 SRPM的编译命令42520.4 范例:打包套件42620.5 选择RPM还是Tarball42720.6 重点回顾42820.7 参考资料

42920.8 习题429第21章系统服务守护程序43021.1 什么是守护程序与服务43121.1.1 守护程序的主要分类43121.1.2 与服务有关的端口信

息:/etc/services43221.1.3 守护程序的命名规则43321.1.4 系统的守护程序位

置43321.1.5 守护程序的启动方式:service43421.2 解析超级守护程序的设置文

件43521.2.1 解析xinetd.conf43521.2.2 简单的telnet范例设置43821.3

TCP_Wrappers44021.4 系统打开的服务44221.4.1 观察系统启动的服务44221.4.2 设置开机后立即启动服务44321.4.3 一个服务的简单说明44521.5 习题450第22章认识与分析登录文件45122.1 什么是登录文件45222.2 登录文件的记录:syslogd45322.2.1 登录文件内容的一般格式45322.2.2 登录文件的配置文件:/etc/syslog.conf45422.2.3 登录文件的安全性设置45822.2.4 登录文件主机的简单设置45922.3 登录文件的轮替(logrotate)45922.3.1 logrotate的设置文件46022.3.2 实际测试logrotate的操作46222.4 分析登录文件

46422.4.1 常见命令:last、lastlog、dmesg46422.4.2 登录文件分析工具465第23章 Linux备份策略46723.1 谁需要备份数据46823.2 备份哪些Linux数据46823.3 选择备份设备46923.4 备份的种类47023.5 选择备份工具47123.6 备份策略实例47223.6.1 日常备份行为47223.6.2 每日备份数据脚本47523.6.3 远程备份系统47523.7 还原系统的考虑因素47623.8 习题477第24章 X Window简单设置47824.1 什么是X Window系统47924.1.1 是否需要启用X Window系统47924.1.2 X Window的发展历史47924.1.3 X服务器 / X客户端 / 窗口管理器的关系48024.1.4 X Window启用的流程48224.2 与X服务器有关的设置文件48424.2.1 手动修改xorg.conf或XF86Config48524.2.2 X字体服务器(Font Server,XFS)48824.2.3 /etc/inittab48924.2.4 使用Xorg / XFree86设置默认的设置文件48924.3 更新显卡驱动程序的范例:NVidia驱动程序48924.4 解决问

题49124.5 参考资料49124.6 习题492第25章 Linux硬件检测与维护49325.1 准备硬件49425.1.1 硬件信息的收集:lspci、iostat…49425.1.2 驱动USB设备49625.1.3 使用lm_sensors取得温度、电压等信息49725.2 FC4的系统操作:setup功能50025.3 利用CUPS架构打印机50725.4 特殊的文件系统:LVM51725.4.1 什么是LVM:PV、PE、VG、LV51725.4.2 制作LVM磁盘的流程51925.4.3 加大原有的LVM磁盘:resize2fs52425.4.4 注意事项52625.5 额外的存储设备iSCSI协议的磁盘阵列52725.5.1 什么是磁盘阵列52725.5.2 iSCSI磁盘阵列的架设与使用52825.6 参考资料53325.7 习题533第26章 Linux核心编译与管理53426.1 简介53526.1.1 什么是核心53526.1.2 更新核心的原因53626.1.3 核心的版本与下载最新核心的位置53726.2 核心源码的获取与升级53826.2.1 获取原版本提供的核心源码53826.2.2 获取最新的核心53926.2.3 保留原设置:利用补丁升级核心源码53926.2.4 核心目录下的子目录信息53926.3 设置核心的编译设置(Makefile)53926.3.1 编辑核心的生成文件54026.3.2 设置核心内容与模块54126.4 核心的编译与安装55826.4.1 编译的流程55926.4.2 模块安装注意事项55926.4.3 安装旧版与新版的核心成多重启动系统55926.5 额外(单一)模块编译56026.5.1 单一模块编译56126.5.2 核心模块管理:lsmod、modinfo、modprobe、insmod、rmmod…562附录A GNU的GPL条款564A.1 序言565A.2 GNU通用公共许可证有关复制、发布和修改的条款和条件565附录B

ext2/ext3文件系统

569B.1 第二扩展文件系统(EXT2)570B.2 为何选择

EXT3571

鸟哥的linux私房菜:鸟哥的Linux私房菜目录 鸟哥的linux私房菜

鸟哥的linux私房菜:鸟哥的Linux私房菜目录鸟哥的 linux私房菜 鸟哥的linux私房菜:鸟哥的Linux私房 菜目录鸟哥的linux私房菜 话题:鸟哥的linux私房菜兴趣爱好什么是操作系统什么是磁盘阵列文件目录第一部分认识Linux及Linux主机规划安装第1章什么是Linux21.1 什么是Linux31.1.1 计算机:计算的辅助工具31.1.2 什么是操作系统31.1.3 Linux之前UNIX的历史51.1.4 关于GNU计划91.2 Torvalds的Linux开发 111.2.1 与Minix之间111.2.2 386硬件的多任务测试111.2.3 初次发布Linux 0.02121.2.4 Linux的开发:虚拟团队的产生131.2.5 Linux 版本141.3 Linux的特性151.3.1 Linux的特性161.3.2 Linux的优缺点161.3.3 其他相关信息171.4 习题181.5 参考资料19第2章如何学习Linux202.1 Linux的应用212.2 基础学习222.2.1 从头学习222.2.2 选择工具书232.2.3 实践再实践232.3 学习方法232.3.1 X Window还是命令行242.3.2 主机/网络数据查询242.3.3 向别人提问252.3.4 笔者的建议252.4 习题26第3章 Linux主机的规划273.1 认识主机硬 件 组件283.1.1 认识计算机的硬件配置283.1.2 选择适合Linux系统的主机配 置333.1.3 Linux中的硬件设备号353.2 安装Linux前的规划363.2.1 选择适当的版本363.2.2 主机服务规划与硬件的关系373.2.3 主机硬盘的主要规划 383.2.4 练习机的安装建议393.3 实际案例393.4 习题403.5 参考资料41第4 章安装FC4与多重启动技巧424.1 安装Linux的第一步:规划434.1.1 练习机的规划434.1.2 硬盘连接与硬盘号444.1.3 识别硬盘分区454.1.4 Linux安装模式中硬盘分区的选择(极重要)464.2 开始安装Fedora Core Release IV474.2.1

【IT专家】【Linux】鸟哥的Linux私房菜基础学习篇整理(一)

本文由我司收集整编,推荐下载,如有疑问,请与我司联系【Linux】鸟哥的Linux私房菜基础学习篇整理(一)2014/07/28 265 最近,一直在写PPC的模拟器和汇编器,也在做设计。因此重新看了看《鸟哥的Linux私房菜》,还是有好多命令不太熟悉。就打算写几篇blog 记下来。1. nl [-bnw] filename:添加行号打印参数:-b:指定行号指定的方式,主要有两种:-b a:表示不论是否为空行,也同样列出行号(类似cat -n);-b t:如果有空行,空的那一行不要列出行号(默认值)。-n:列出行号表示的方法,主要有三种:-n ln:行号在屏幕的最左方显示;-n rn:行号在自己字段的最右方显示,且不加0;-n rz:行号在自己字段的最右方显示,且加0。-w:行号字段所占用的位数。2. more:一页一页翻动支持的按键:Space:代表向下翻一页;Enter:代表向下滚动一行;/字符串:代表在这个显示的内容中,向下查询“字符串”这个关键字;:f:立刻显示文件名以及目前显示的行数;q:代表立刻离开more,不再显示该文件内容;b或[ctrl]-b:代表向回翻页,不过仅对文件有用,对管道无用。3. less:一页一页翻动支持的按键:Space:向下翻动一页;[PageDown]:向下翻动一页;[PageUp]:向上翻动一页;/字符串:向下查询“字符串”这个关键字;?字符串:向上查询“字符串”这个关键字;n:重复前一个查询(与/或?有关);N:反向重复前一个查询(与/或?有关);q:退出。4. head [-n number] filename:取出前面几行参数:-n:后面接数字,代表要显示的行数;5. tail [-nf] filename:取出后面几行参数:-n:后面接数字,代表要显示的行数;-f:表示持续检测后面的文件,要等到按下[ctrl]-c 才会结束tail的检测。6. od [-t TYPE] filename:查阅非纯文本文件参数:-t:后面接各种类型的输出,例如:a:利用默认的字符来输出;c:使用ASCII字符来输出;d[size]:利用十进制来输出,每个整数占用size bytes;f[size]:利用浮点数来输出,每个整数占用size bytes;o[size]:利用八进制来输出,每个整数占用size bytes;x[size]:利用十六进制来输出,每个整数占用size bytes;7. touch [-acdmt] filename:修改文件时间或创建文件参数:-a:修改访问时间;-c:修改文件的时间,若文件不存在则不创建文件;-d:后面可以接欲修改的日期而不用目前的日期,也可以使用--date=“日期或时间”;-m:仅修改mtime;-t:后面接欲修改的时间

鸟哥的私房菜读书笔记

Linux安装硬盘规划 Linux其实就是一个kernel,新内核上开发的软件无法在旧的内核上运行,比如在内核为2.6上开发出来的各种软件就无法在2.4的内核上运行,而且,不同内核的函数库也不相同。所以,选择linux版本时,需要知道该版本的kernel版本。 1.硬盘的分区与挂载 除了硬盘的代号需要特别留意之外,硬盘分区也要清楚。需要学习fdisk这个重要的分区程序,完成分区后,接下来就要格式化硬盘,格式化需要了解mke2fs命令的用法。 格式完后,需要了解挂载点(一个目录)并进行挂载,挂载使用的命令为mount。挂载前,想要使用fsk命令来检查一下该分区有没有问题。但是注意:使用fsck时,请务必先使用umount卸载要被检查的分区。 还有,如果要让某些分区在开机的时候就自动挂载,要记得将其写入/etc/fstab当中,或者是将命令完整的写到/etc/tc.d/rc.local当中。 2.软件包的选择与安装 图形界面很容易造成系统的资源损耗,因此服务器上面较少使用图形界面。为了方便以后的升级与重新安装,在选择软件包时,请务必将下面几个软件包选择进来: make,gcc,kernel-source,kernel-header及kernel—devel。 其中make和gcc是编译软件包必须用到的软件,kernel-devel是一些驱动程序在编译时会用到的函数库或系统数据,这些东西对于台式计算机并不很重要,因此在个大版本的软件包上面都没有默认安装,需要自己选择安装。这些软件通常都会放在software develop 或者utility项中,请仔细选择。 3.启动设置(Grub/Lilo) 在我们进入系统之前,主机会先读BIOS信息,然后会读取第一块硬盘的主引导扇区(Master Boot Recorder ,简称MBR),这个操作是为了让我们的主机了解数据格式,以顺利地将系统的数据读取进来。MBR上的程序,被称为开机管理程序,在linux中主要的开机管理程序有Grub和LILO两个,他们的运行方式不太相同。 区别:LILO是直接将所有的信息都写入MBR,所以当您设置完配置文件/etc/lilo.conf后,还得将LILO重新安装到MBR中。至于Grub则是使用类似指针(point)的功能,将启动信息导入配置文件/boot/grub/menu.lst中。这两个管理程序各有优缺点,可依照个人喜好来选择安装。 如果想实现“多重开机”功能,您必须了解MBR与Super Block的异同点,这都是需要学习的。 安装一台好的linux主机,最重要的一点就在于硬盘的分区,硬盘分区的考虑会影响到主机以后的扩充性,实用性,以及安全性。 了解欲架设的网站服务原理 了解每种服务的工作原理,对您以后进行调试相当有用,在主机的规划上也会有一定程度的帮助。例如:在linux上很有名气的文件服务SAMBA,它的工作原理主要是NetBiOS over TCP/IP,而如果您了解最原始的NetBIOS是无法跨网段的,亦即无法跨路由器的,那么就比较容易了解为何Windows的网络上的“网上邻居”显示的计算机数量只有局域网内部的计算机。 总之,理解服务(Service)的工作流程,将有助于服务器的架设与维护。 这还只是各个服务器的服务原理,如果是在linux上运行,您至少要了解什么事daemon(守护进程)。 服务的软件安装,漏洞修补,软件包升级 假设您已经将网络硬件配置搞定了,主机也规划好了,并且也已经可以连上

鸟哥的 Linux 私房菜

鳥哥的 Linux 私房菜 為取得較佳瀏覽結果,請愛用firefox瀏覽本網頁 第七章、Linux 檔案與目錄管理 切換解析度為 800x600 1. 目錄與路徑 1.1 相對路徑與絕對路徑 1.2 目錄的相關操作:cd, pwd, mkdir, rmdir 1.3 關於執行檔路徑的變數: $PATH 2. 檔案與目錄管理 2.1 檔案與目錄的檢視: ls 2.2 複製、刪除與移動:cp, rm, mv 2.3 取得路徑的檔案名稱與目錄名稱 3. 檔案內容查閱: 3.1 直接檢視檔案內容:cat, tac, nl 3.2 可翻頁檢視:more, less 3.3 資料擷取:head, tail 3.4 非純文字檔: od 3.5 修改檔案時間與建置新檔: touch 4. 檔案與目錄的預設權限與隱藏權限 4.1 檔案預設權限:umask 4.2 檔案隱藏屬性:chattr, lsattr 4.4 檔案特殊權限:SUID, SGID, SBIT, 權限設定 4.3 觀察檔案類型:file 5. 指令與檔案的搜尋: 5.1 指令檔名的搜尋:which 5.2 檔案檔名的搜尋:whereis, locate, find 6. 極重要!權限與指令間的關係: 7. 重點回顧 8. 本章習題 9. 參考資料與延伸閱讀 10. 針對本文的建議:https://www.doczj.com/doc/019578863.html,/viewtopic.php?t=23879

目錄與路徑: 由第六章Linux的檔案權限與目錄配置中透過FHS瞭解了Linux的『樹狀目錄』概念之後,接下來就得要實際的來搞定一些基本的路徑問題了!這些目錄的問題當中,最重要的莫過於第六章也談過的『絕對路徑』與『相對路徑』的意義啦!絕對/相對路徑的寫法並不相同,要特別注意。此外,當妳下達指令時,該指令是透過什麼功能來取得的?這與PATH這個變數有關呢!底下就讓我們來談談囉! 相對路徑與絕對路徑: 在開始目錄的切換之前,你必須要先瞭解一下所謂的『路徑(PATH)』,有趣的是:什麼是『相對路徑』與『絕對路徑』?雖然前一章已經稍微針對這個議題提過一次,不過,這裡不厭其煩的再次的強調一下! ?絕對路徑:路徑的寫法『一定由根目錄 / 寫起』,例如: /usr/share/doc 這個目錄。 ?相對路徑:路徑的寫法『不是由 / 寫起』,例如由 /usr/share/doc 要到 /usr/share/man 底下時,可以寫成:『cd ../man』這就是相對路徑的寫法啦!相對路徑意指『相對於目前工作目錄的路徑!』 ?相對路徑的用途 那麼相對路徑與絕對路徑有什麼了不起呀?喝!那可真的是了不起了!假設你寫了一個軟體,這個軟體共需要三個目錄,分別是 etc, bin, man 這三個目錄,然而由於不同的人喜歡安裝在不同的目錄之下,假設甲安裝的目錄是 /usr/local/packages/etc, /usr/local/packages/bin 及 /usr/local/packages/man ,不過乙卻喜歡安裝在 /home/packages/etc, /home/packages/bin, /home/packages/man 這三個目錄中,請問如果需要用到絕對路徑的話,那麼是否很麻煩呢?是的!如此一來每個目錄下的東西就很難對應的起來!這個時候相對路徑的寫法就顯的特別的重要了! 此外,如果你跟鳥哥一樣,喜歡將路徑的名字寫的很長,好讓自己知道那個目錄是在幹什麼的,例如:/cluster/raid/output/taiwan2006/smoke 這個目錄,而另一個目錄在 /cluster/raid/output/taiwan2006/cctm ,那麼我從第一個要到第二個目錄去的話,怎麼寫比較方便?當然是『cd ../cctm』比較方便囉!對吧! ?絕對路徑的用途 但是對於檔名的正確性來說,『絕對路徑的正確度要比較好~』。一般來說,鳥哥會建議你,如果是在寫程式 (shell scripts) 來管理系統的條件下,務必使用絕對路徑的寫法。怎麼說呢?因為絕對路徑

鸟哥的Linux私房菜第二版答案整理

Linux常见问题整理 1.操作系统应该要控制硬件的哪些单元? 运算单元、控制单元、寄存器组、总线接口单元、输入/输出接口单元。 2.一个较为完整的操作系统应该包含哪些部分? 比较完整的操作系统应该包含两个组件,一个是核心与其提供的接口工具,另一个是利用核心提供的接口工具所开发的软件。 3.1GB硬盘空间等于多少KB? 1GB=1024MB=1024*1024KB. 4.在主机上安装了一张网卡,开机之后系统无法使用,确定网卡是好的,问题可能在哪里?该如何解决? 核心不能识别该网卡,也就无法控制这个网卡,需要安装对应的网卡驱动。 5.是否可以将Windows上的显卡驱动程序安装在Linux上? 不能,Linux的核心与Windows的核心是不同的。 6.在Windows上能玩的游戏,是否可以到Linux上去玩? 一般不能,Linux的核心与Windows的核心是不同的。 7.什么是软件的移植? 指将软件从一种计算机上转置到其它计算机上 8. Linux众多的版本之间有什么异同? Ubuntu是一个以桌面应用为主的Linux操作系统,Fedora 可以说是Redhat 桌面版本的延续,只不过是与开源社区合作。 9. Unix是谁写出来的? Ritchie等人用C语言写出第一个正式的UNIX核心。 10. GNU计划是谁发起的? 史托曼在1984年发起GNU计划。 11. GNU的全名是什么? GNU是GNU is Not Unix的缩写。 12. GNU主要由哪个基金会支持? 理查德·斯托曼创立了自由软件基金会来为GNU计划提供技术、法律以及财政支持。 13. 如何获取Linux发行版的可安装光盘? 可以直接找软件发行商购买安装光盘,或者到他们的官方网站上去下载ISO文件,然后刻录成光盘。 14.简单说明GNU General Public License与开放源码的精神 GPL的核心思想是“版权制度是促进社会进步的手段,版权本身不是自然权利”,GPL与开放代码的精神更多的在

鸟哥的Linux私房菜基础学习篇课后习题答案

私房菜--基础学习篇课后习题答案鸟哥的linux私房菜 Linux的规划与安装 第一篇:Linux 第一篇: 一、什么是Linux 1.一个完整的作业系统至少要能够完整的控制整个硬件,请问,作业系统应该要控制 硬件的哪些单元? 至少要能够控制:(1)input/output crontrol,(2)device control,(3)process management,(4)file management.等等! 2.核心的功能在于管控整个系统的硬件,这包括了CPU运算单元的管理,输入/输出 的管理,记忆体的管理等等。那么请问一个较为完整的作业系统,应该包含哪些部分? 应包含Kernel+Kernel Tools+Applications等等 3.一个GBytes的硬盘空间,等于几个KBytes? 1GBytes=1024MBytes*1024KBytes/MBytes=1048576KBytes 4.你在你的主机上面安装了一张网络卡,但是开机之后,系统却无法使用,您确定网 络卡是好的,那么可能的问题出在哪里?该如何解决? 因为所有的硬件都没有问题,所以,可能出问题的地方在于系统的核心(kernel)不支持这张网络卡。解决的方法,到网络卡的开发商网站,下载支援您主机作业系统的驱动程序,安装网络卡驱动程序后,就可以使用了。 5.我在一部主机上面安装Windows作业系统时,并且安装了显示卡的驱动程序,他是 没有问题的。但是安装Linux时,却无法完整的显示整个X Window。请问,我可不可以将Windows上面的显示卡驱动程序拿来安装在Linux上? 不行!因为核心不同,针对硬件所写的驱动程序也会不相同,编译器也不同,当然,驱动程序也无法在两个作业系统间相容。这也是为何开发商在他们的网站上面,都会同时提供许多不同作业系统的驱动程序之故。 6.我在Windows上面玩的游戏,可不可以拿到Linux去玩? 当然不行!跟上一题相似的,因为游戏也是一个应用程序(application),他必须要使用到核心所提供的工具来开发他的游戏,所以这个游戏是不可在不同的平台间运作的。除非这个游戏已经进行了移植。 7.什么是软件的移植? 程序是由程序码(通成为ASCII格式)经过编译器编译成为binary file之后,才能够在该作业系统上面执行。因此,您可以将您的程序的程序码修改成可以适应其他作业系统的环境,并且加以编译,使程序可以在其他平台上运作,这个修改的动作即为移植。 8.Linux本身仅是一个核心与相关的核心工具而已,不过,他已经可以驱动所有的硬 件,所以,可以算是一个很阳春的作业系统了。经过其他应用程序的开发之后,被整合成为Linux distribitions。请问众多的distributions之间,有何异同? 相同:利用同样的Linux kernel(https://www.doczj.com/doc/019578863.html,),几乎相同的自由软件套件(例如GNU 里面的gcc/glibc/vi/apache/bind/sendmail...),几乎相同的操作接口(例如均使用bash/KDE/GNOME等等)。 不同:使用的kernel与各软件的版本可能会不同;各开发商加入的应用工具不同,使用的套件管理模式不同(debian与RPM)

Linux学习经典书籍全集(含电子档文件)

学习Linux经典书籍全集推荐 【文件中包含电子档,可直接打开】 Linux学习三部曲 (1)Linux使用。简单的说,学会Linux怎么使用。最好选用一种流行的Linux拿来用。如果有一天,不用Windows你不觉得用电脑别扭。那恭喜你。 经典书籍:man手册。 鸟哥的Linux私房菜基础学习篇(第三版) https://www.doczj.com/doc/019578863.html,/product.aspx?product_id=20866026 Red Hat Linux 9系统管理与服务器配置(第2版) https://www.doczj.com/doc/019578863.html,/product.aspx?product_id=20859121 Linux 指令与Shell编程范例速查手册 https://www.doczj.com/doc/019578863.html,/product.aspx?product_id=22737737

(2)Linux应用开发。写应用程序。 Linux程序设计(第3版) https://www.doczj.com/doc/019578863.html,/product.aspx?product_id=20856718 Linux高级程序设计(第3版) https://www.doczj.com/doc/019578863.html,/product.aspx?product_id=22898432 UNIX环境高级编程(第3版) https://www.doczj.com/doc/019578863.html,/product.aspx?product_id=9171119

(3)Linux驱动开发。需要相应的硬件。 Linux驱动程序设计(第3版) linux内核模块编程。 Linux内核设计与实现(原书第3版) OReilly. Understanding.the.Linux.Kernel.3rd.Edition

鸟哥的私房菜(服务器篇)【第二版】练习答案

第一章架设伺服器前的准备工作 1.4 本章习题 ?如果我有一颗硬碟在A 主机上面安装了Linux 之后,拿到另一台配备相同的B 主机上面去进行开机,结果竟然无法顺利开机,你认为可能的原因是什么? 不能开机常常是因为找不到根目录的位置,而根目录找不到通常就是磁碟的装置档名错误所致。目前由于/etc/fstab 配合filesystem 都使用LABEL name ,所以不容易发生这样的情况。但如果你曾经自行手动处理过/etc/fstab 的话,那就必须要注意磁碟的装置档名了!透过修改/etc/fstab 以及/boot/grub/menu.lst 或许能够得到方法解决。 ?一般来说,在Linux 系统上,使用者预设的家目录在那个目录下?另外,新增一个使用者时,该使用者预设的家目录内容来自那个目录下? 在/etc/default/useradd 这个档案里面会规范使用者的预设家目录以及预设家目录的内容,一般来说,使用者预设家目录在/home ,至于家目录内的档案则复制来源在/etc/skel 里面。 ?我以原始码的方式进行一个套件的安装,但是在分析系统的时候,分析程式一直告诉我找不到cc 这个指令,请问这是什么问题?为何需要cc ?又,我该如何解决这个问题,好让套件可以顺利的被安装在我的Linux 上面? 因为是原始码,所以还需要编译程式来将该原始码编译成为可以在你的Linux 系统上面跑的binary 档案,在Linux 上头预设的编译程式就是gcc 这个编译器(compiler)。如果你在安装Linux 的时候,使用Linux Installer 预设的套件选择,那通常会没有安装gcc 以及make 等套件,此时,请使用yum 去处理软体的安装吧! ?我发现我的Linux 系统怪怪的,似乎有什么不知名的程序在记忆体当中跑,我该如何将这个不知名的程序捉出来,并且将他移除? 如果要捉出程序(process)的话,可以使用ps -aux 或者是直接输入top 来查询process 的ID (PID),找到PID 号码后,再以kill -9 PID 来删除该程序即可。 ?我总是无法编辑某个档案,你认为应该是什么问题造成的?那又要怎么解决? 无法编辑某个档案,可以先使用file 这个指令来查询一下该档案的格式,例如想察看/etc/shadow 的格式,可以下达:『file /etc/shadow』,如果是文字档,却还是无法编辑,那么最可能发生的原因就是『权限』的问题了。可以使用ls -l filename 察看档案权限,再以chmod 或chown 来修订该档案的权限。此外,该档案也可能含有隐藏属性,可以使用lsattr filename 查阅,再以chattr 来修订隐藏属性。 ?你认为一个称职的网管人员应该具备什么能力? 能力需求相当高,如了(1)作业系统的基础知识(不论是Linux/Unix/MAC/MS);(2)网路基础的知识;(3)个别Internet Services 的运作知识之外,还需要(4)身心保持在备战状态,以及(5)具有相当高程度的道德感、责任感与使命感。 ?我要关掉cron 这个服务,应该怎么关掉他?如果正常的方法无法关闭这个服务,可以使用什么方法来关闭? 因为cron 是一个stand alone 的服务,所以可以使用/etc/rc.d/init.d/cron stop 来关闭;如果还是无法正常关闭,可以使用ps -aux | grep cron 捉出该程序的PID ,然后以kill -9 PID 来关闭。?如果一开机就要执行某个程式,应该要将该程式写入那个档案里面? 可以直接在/etc/rc.d/rc[run-level].d 里面加入S 开头的档案,不过,更简单的作法是直接将该程式写入/etc/rc.d/rc.local ,不过,请注意该程式必须要具有可执行的权限,且rc.local 也必须要是可执行喔! 第二章基础网路概念 2.7 本章习题

鸟哥的Linux私房菜基础学习篇课后习题答案

鸟哥的linux私房菜-基础学习篇课后习题答案 第一篇:Linux的规划与安装 一、什么是Linux 1.一个完整的作业系统至少要能够完整的控制整个硬件,请问,作业系统应该要控制 硬件的哪些单元? 至少要能够控制:(1)input/output crontrol,(2)device control,(3)process management, (4)file management.等等! 2.核心的功能在于管控整个系统的硬件,这包括了CPU运算单元的管理,输入/输出 的管理,记忆体的管理等等。那么请问一个较为完整的作业系统,应该包含哪些部分? 应包含Kernel+Kernel Tools+Applications等等 3.一个GBytes的硬盘空间,等于几个KBytes? 1GBytes=1024MBytes*1024KBytes/MBytes=1048576KBytes 4.你在你的主机上面安装了一张网络卡,但是开机之后,系统却无法使用,您确定网 络卡是好的,那么可能的问题出在哪里?该如何解决? 因为所有的硬件都没有问题,所以,可能出问题的地方在于系统的核心(kernel)不支持这张网络卡。解决的方法,到网络卡的开发商网站,下载支援您主机作业系统的驱动程序,安装网络卡驱动程序后,就可以使用了。 5.我在一部主机上面安装Windows作业系统时,并且安装了显示卡的驱动程序,他是 没有问题的。但是安装Linux时,却无法完整的显示整个X Window。请问,我可不可以将Windows上面的显示卡驱动程序拿来安装在Linux上? 不行!因为核心不同,针对硬件所写的驱动程序也会不相同,编译器也不同,当然,驱动程序也无法在两个作业系统间兼容。这也是为何开发商在他们的网站上面,都会同时提供许多不同作业系统的驱动程序之故。 6.我在Windows上面玩的游戏,可不可以拿到Linux去玩? 当然不行!跟上一题相似的,因为游戏也是一个应用程序(application),他必须要使用到核心所提供的工具来开发他的游戏,所以这个游戏是不可在不同的平台间运作的。除非这个游戏已经进行了移植。 7.什么是软件的移植? 程序是由程序码(通成为ASCII格式)经过编译器编译成为binary file之后,才能够在该作业系统上面执行。因此,您可以将您的程序的程序码修改成可以适应其他作业系统的环境,并且加以编译,使程序可以在其他平台上运作,这个修改的动作即为移植。 8.Linux本身仅是一个核心与相关的核心工具而已,不过,他已经可以驱动所有的硬 件,所以,可以算是一个很阳春的作业系统了。经过其他应用程序的开发之后,被整合成为Linux distribitions。请问众多的distributions之间,有何异同? 相同:利用同样的Linux kernel(https://www.doczj.com/doc/019578863.html,),几乎相同的自由软件套件(例

菜鸟学习之Linux

菜鸟学习之Linux‘ls’命令实例 [日期:2014-12-30] 来源:Linux公社作者:GuiltyMan [字体:大中小] ‘ls’命令是Linux下用来显示文件目录及其目录列表的。在下方的带有每个命令简短叙述的命令列表中,有几个是有不同用法的。在这次专栏里面,我们列举了对入门学习非常有用的十几个命令。 ls命令格式如下所示: #ls[选项][文件][目录] -a列举出隐藏文件,如果一个文件或目录的名字以一个’.’开始,那么他就被称为隐藏的 -F显示文件类型,显示,/用于文件目录,*用于可执行文件,@用于非文本文件的符号链接 -lh显示长文件列表,其中带有可读格式的文件大小 -l显示带有文件类型,权限,连接数,所有者,长文件列表,所在的文件簇,文件大小,创建日期以及时间 of最后一次修改或用于文件.ld的名字中。显示指定路径的长文件列表,但是隐藏其中的内容 -R显示指定路径内容以及他的所有子目录(递归列举)

-lt以创建的时间和日期的方式排列所有文件,以创建时间由短到长的顺序排列 -ltr以创建的时间和日期的方式排列所有文件,以创建时间由长到短的顺序排列 注意:想知道更详细的ls命令信息,请查阅ls手册 例子1:列举当前工作目录的文件以及路径 [root@localhost /]# ls bin boot cgroup dev etc home lib lib64 lost+found media mnt opt proc root sbin seli nux srv sys tmp usr var [root@localhost /]# 例子2:列举当前当前路径的详细信息 [root@localhost /]# ls -l total 94 dr-xr-xr-x. 2 root root 4096 Nov 23 03:13 bin dr-xr-xr-x. 5 root root 1024 Nov 23 05:29 boot drwxr-xr-x 10 root root 4096 Nov 23 03:42 cgroup drwxr-xr-x 18 root root 3680 Dec 12 21:32 dev drwxr-xr-x. 64 root root 4096 Dec 12 21:32 etc drwxr-xr-x 8 root root 4096 Jul 19 02:43 home dr-xr-xr-x. 8 root root 4096 May 3 2014 lib dr-xr-xr-x. 8 root root 12288 Nov 23 03:13 lib64 -rw-r--r-- 1 root root 72 Dec 12 21:40 linux-stuff drwx------. 2 root root 16384 May 3 2014 lost+found drwxr-xr-x. 2 root root 4096 Sep 23 2011 media drwxr-xr-x. 3 root root 4096 Jun 22 01:14 mnt ..................................................

刘遄:作为一名新人读完《鸟哥的Linux私房菜》的感受。

刘遄:作为一名新人读完《鸟哥的Linux私房菜》的感受。 作为一名运维领域的从业者及linux技术爱好者,坦白来讲,鸟哥的linux 私房菜也是我的linux入门书籍,我绝对的认可鸟哥为这本书的付出,其书发行量巨大,陪伴了一代的运维人员,甚至被封为“linux入门神书”,渐渐的从一本linux技术书籍,上升至精神的高度,不允许再有一点反驳之声,但思索再三,还是决定阐明我的观点,与初学者分享下这不同的看法。 首先鸟哥在开篇即提到了写书的缘由是因为记性不好,所以想写出一本能够放在案头的备忘录,对书籍的内容自然就没有了太多的筛选,反而一再的扩大知识范围,最终写出的两本书厚度足足超过十厘米,敢问这种“备忘录式的入门书籍”真的适合新手来读?我认为书籍既然发行了,就不能再是个备忘录,而应该是通过作者的经验将知识不断提炼,真正让捧起书的读者看完有收获才可以。 其次是鸟哥的linux私房菜的书籍更新周期过长,2014年末时RHEL7与Centos7就已经公布,经过了一年多的迭代,已经很稳定并被广泛使用了,如果内容没有定期更新,使得技术脱离了生产环境,还怎么称作是真正实用的linux 技术?并且鸟哥的linux私房菜缺少了对新手非常重要的答疑与帮助,如果遇到了实验出错,或者有知识点悟不透,这些都可能让初学者丧失掉对linux技术的兴趣。 所以综合上面的考虑,如果再有人向你推荐鸟哥的Linux私房菜,请你回应他:“你有没有完整的看完这本书?你觉得这本书真的适合我吗?”。 2014年,我在讲课时曾经表达过这个观点,学生问我:“那还有什么推荐的书吗?”那时感到无比的尴尬,因为作为一名linux讲师,我好像除了讲课外并没有能够给学员提供的了,所以在2015年春节前夕起笔,用了一年多的时间编写了中国第一本基于红帽最新RHEL7系统的Linux书籍——《Linux就该这么学》,迫不及待的第一时间便公布到了网上,用了整整一年的时间收集读者反馈后又经过了不断的完善,现在已经初步定型,读者的反馈也越来越好,甚至得到了很多大学教授的推荐,真的是非常的欣闻,但是更欣慰的是我们国人的学员除了鸟哥的linux私房菜,又多了一本品质甚至更好的linux入门教材,如果您想要学习linux技术,可以直接在百度上搜索书名就能够找到了,耐心来试读一章,相信你会因此爱上Linux技术的。

《鸟哥的linux私房菜(基础篇)》学习笔记

《鸟哥的linux私房菜(基础篇)》学习笔记----------李晶 目录 第一部分:linux的规划与安装 (2) 1.linux历史与简介: (2) 2.分区: (2) 3.多重引导: (2) 第二部分:linux文件,目录与文件系统格式 (3) 1.管理文件权限: (3) 2.管理文件以及目录: (4) 3.管理磁盘与文件系统: (4) 4.文件的打包压缩: (5) 第三部分:shell (5) 1.vim: (5) 2.shell: (5) 3.正则表达式: (6) 4.shell编程: (7) 第四部分:用户管理 (9) 1.用户账号及权限: (9) 2.磁盘管理: (9) 3.crontab: (9) 4.作业管理: (10) 第五部分:系统管理员 (11) 1.系统服务: (11) 2.软件安装: (12) 3.x-window: (12) 4.内核编译: (12)

第一部分:linux的规划与安装 这里个人相对来说比较熟悉,对于如何安装linux书上有详细介绍。不过我一般用的都是ubuntu,这个发行版的安装并不是很复杂。 1.linux历史与简介: 计算机是由一堆硬件所组成的,操作系统是为了更加有效地控制和使用这些硬件资源。我们最熟悉的windows就是一种操作系统。但是linux是完全不同于windows的一种操作系统。众所皀知癿,Linux癿核心是由Linus Torvalds在1991年癿时候给他开发出来的。linux沿袭了unix 的许多良好的特性,最重要的也是现今非常受欢迎的原因之一就是linux是开源的,并且在其之上的软件也是免费开源的,以此为基本最后发展出来了开源社区,对整个计算机科学的发展都有很重要的作用。 linux目前有着众多的发行版,Red Hat, SuSE,Ubuntu, Fedora, Debian。我个人使用的是ubuntu-10.10。 linux的发展路径: Unix癿前身是由贝尔实验室(Bell lab.)癿Ken Thompson利用汇编语言写成的,后来在1971-1973年间由Dennis Ritchie以C语言重新改写,才称为Unix。 1977年由Bill Joy开发出BSD (Berkeley Software Distribution),这些称为Unix-like的操作系统。 1984年由Andrew Tannenbaum制作出Minix操作系统,该系统可以提供原始码以及软件; 1984年由Richard Stallman提倡GNU计划,倡导自由软件(Free software),强调其软件可以自由获得,修改,再发行。 1991年由芬兰大学生Linus Torvalds开发出Linux操作系统。Linux成功主要在于:Minix(Unix), GNU, Internet, POSIX 及虚拟团队的产生。 Linux本身就是个操作系统,其开发网站在https://www.doczj.com/doc/019578863.html,,我们亦称Linux操作系统最核心的数据为内核Kernel。 目前Linux核心的发展分为两种版本,分别是稳定版本偶数版,如2.6.X,适合商业和家用环境使用;一种是发展中版本如2.5.X 版,适合开发特殊功能的环境。 Linux distributions的组成有:『Linux Kernel + Free Software + Documentations(Tools) + 可完全安装的程序』所制成癿一套完整的系统。 2.分区: 目前各种机器安装linux都比较方便了,特别是像我使用ubuntu10.10,基本上全是自动安装的,不过经常困惑我们的一般都是分区。如何分区才合理呢,对于初学者,分区可以直接只分一个根分区和交换(SWAP)分区。这里值得说一下的是磁盘只能分四个主分区。不过可以通过扩展分区来扩充,这样的话就是三个主分区和多个逻辑分区。SWAP分区的大小一般建议2倍于你的物理内存。将/home等数据量会较大的目录单独分区是一个非常不错的做法,具体分配多少容量,看你最终的数据量,估算后尽量多分。 3.多重引导: 目前我们使用学习linux的最大的苦恼就是关于如何与windows共存的问题了。书中详细介绍了如何安装centOS,附带很多截图,并且也描述了在已经装了windows的情况下如何设置多重引导。这个我也有过很多关于引导的经历。现在绝大多数的引导程序都会选择使用GRUB,这是一个交互式的引导程序。当我们的引导程序如果出现故障,或者是重装了windows的时候,我们将无法正常进入linux,如果使用的系统是ubuntu这个时候可以使用如下方法:

鸟哥的linux私房菜(基础学习篇)

第0章计算机概论 1.计算机的定义为:接受用户输入指令与数据,经有中央处理器的数据与逻辑单元运算处理后,以产生或存储成有用的信息。 2.计算机的五大单元包括输入单元、输出单元、CPU内部控制单元、算术逻辑单元与内存五大部分。 3.数据会流进、流出内存是cpu所发布的控制命令,而cpu实际要处理的数据则完全来自于内存。 4.Cpu依设计的理念主要分为精简指令集(RISC)与复杂指令集(CISC)系统。 5.关于cpu的频率部分,外频指的是cpu与外部组件进行数据传输时的速度,倍频则是cpu内部用来加速工作性能的一个倍数,两者相乘才是cpu的频率速度。 6.一般的主板芯片组分为南桥与北桥,北桥的总线称为系统总线,因为是内存传输的主要信道,所以速度较快。南桥就是所谓的输入输出总线,主要在于连系硬盘、usb、网卡等接口设备。 7.北桥所支持的频率我们称为前端总线速度FSB,而每次传送的位数则是总线宽度。 8.Cpu每次能够处理的数据量我们称为字组大小,字组大小依据cpu的设计而有了32位,与64位之分。我们现在所称的计算机是32或者是64位主要是依据这个cpu解析的字组大小而来的。 9.个人计算机的内存主要组件为动态随机访问内存DRAM,至于cpu内部的第二层缓存则使用静态的随机访问内存SRAM. 10.BIOS是一套程序,这套程序是写死在主板上面的一个内存芯片中,这个内存芯片在没有通电时也能将数据记录下来,那就是只读存储器ROM. 11.显卡的规格有PCI/AGP/PCIe,目前的主流为pcie接口。 12.硬盘是由盘片、机械手臂、磁头与主轴马达所组成的,其中盘片的组成为扇区,磁道与柱面。 13.操作系统OS其实也是一组程序,这组程序的重点在于管理计算机的所有活动以及驱动系统中的所有硬件。 14.计算机主要以二进制为单位,常用的磁盘容量单位为byte,其单位换算为 1byte=8bit; 15.操作系统仅在于驱动与管理硬件,而要使用硬件时,就得需要通过应用软件或者是shell的功能,来调用操作系统硬件工作。目前,操作系统除了上述功能外,通常已经包含了日常工作所需要的应用软件在内了。- -----------------------------------------------------------------------------------------------------------------第1章linux是什么 1.计算机主要以二进制作为单位,而目前常用的磁盘容量单位为B,其单位换算为1B=8bit,其他的以1024为其倍数,如1G=1024M. 2.操作系统主要用于管理与驱动硬件,因此必须要能够管理内存、管理设备、负责进程的管理以及系统调用等。因此,只要能够让硬件准备妥当的情况,就是一

鸟哥的Linux 私房菜-- vim 程式编辑器

鸟哥的 Linux 私房菜 为取得较佳浏览结果,请爱用firefox 浏览本网页 | 繁体主站 | 简体主站 | 基础篇 | 伺服器 | 企业应用 | 桌面应用 | 安全管理 | 讨论板 | 酷学园 | 书籍戡误 | 鸟哥我 | 昆山资传 | 第十章、vim 程式编辑器 切换解析度为800x600 最近更新日期:2009/08/20 系统管理员的重要工作就是得要修改与设定某些重要软体的设定档,因此至少得要学会一种以上的文字介面的文书编辑器。在所有的Linux distributions 上头都会有的一套文书编辑器就是vi ,而且很多软体预设也是使用vi 做为他们编辑的介面,因此鸟哥建议您务必要学会使用vi 这个正规的文书编辑器。此外,vim 是进阶版的vi , vim 不但可以用不同颜色显示文字内容,还能够进行诸如shell script, C program 等程式编辑功能, 你可以将vim 视为一种程式编辑器!鸟哥也是用vim 编辑鸟站的网页文章呢!^_^ 1. vi与vim 1.1 为何要学vim 2. vi的使用 2.1 简易执行范例 2.2 按键说明 2.3 一个案例的练习 2.4 vim的暂存档、救援回复与开启时的警告讯息 3. vim的额外功能 3.1 区块选择(Visual Block) 3.2 多档案编辑 3.3 多视窗功能 3.4 vim环境设定与记录: ~/.vimrc, ~/.viminfo 3.5 vim常用指令示意图 4. 其他vim使用注意事项 4.1 中文编码的问题 4.2 DOS与Linux的断行字元:dos2unix , unix2dos 4.3 语系编码转换:iconv 5. 重点回顾 6. 本章习题 7. 参考资料与延伸阅读 8. 针对本文的建议:https://www.doczj.com/doc/019578863.html,/viewtopic.php ?t=23883 vi 与vim 由前面一路走来,我们一直建议使用文字模式来处理Linux的系统设定问题,因为不但可以让你比较容 易了解到Linux的运作状况,也比较容易了解整个设定的基本精神,更能『保证』你的修改可以顺利的 被运作。所以,在Linux的系统中使用文字编辑器来编辑你的Linux参数设定档,可是一件很重要的事情呦!也因此呢,系统管理员至少应该要熟悉一种文书处理器的! Tips: 这里要再次的强调,不同的Linux distribution各有其不同的附加 ?软体,例如Red Hat Enterprise Linux与Fedora的ntsysv与setup等,而SuSE则有YAST管理工具等等, 因此,如果你只会使用此种类型的软体来控制你的Linux系统时,当接管不同的 Linux distributions时,呵呵!那可就苦恼了! 在Linux 的世界中,绝大部分的设定档都是以ASCII 的纯文字形态存在,因此利用简单的文字编辑软体 就能够修改设定了!与微软的Windows 系统不同的是,如果你用惯了Microsoft Word 或Corel Wordperfect 的话,那么除了X window 里面的图形介面编辑程式(如xemacs )用起来尚可应付外,在Linux 的文字模式 下,会觉得文书编辑程式都没有视窗介面来的直观与方便。 Tips: 什么是纯文字档?在第零章里面的资料表示方式有较多说明,请 自行查阅。ASCII就是其中一种广为使用的文字编码系统,在ASCII系统中的图 示与代码可以参考https://www.doczj.com/doc/019578863.html,/wiki/ASCII 呢!那么Linux在文字介面下的文书编辑器有哪些呢?其实有非常多喔!常常听到的就有: emacs , pico , nano , joe ,与vim 等等( 注1 )。既然有这么多文字介面的文书编辑器,那么我们为什么一定要学vi啊?还有那个vim是做啥用的?底下就来谈一谈先!为何要学vim 文书编辑器那么多,我们之前在第五章也曾经介绍过那简单好用的 nano ,既然已经学会了nano ,干 嘛鸟哥还一直要你学这不是很友善的vi呢?其实是有原因的啦!因为: 所有的Unix Like 系统都会内建vi 文书编辑器,其他的文书编辑器则不一定会存在; 其实档案记录的就是0与1 ,而我们透过编码系统来将这些0 与1转成我们认识的文字就是了。原文 其實檔案記錄的就是0 與1 ,而我們透過編碼系統來將這些0 與1 轉成我們認識的文字就是了。 提供更好的翻译建议

相关主题
文本预览
相关文档 最新文档