《Windows用户转向Linux的12个步骤》——笔记ONE
我并不认为每个人都能够——后者应该——从Microsoft转到Linux,也没有觉得到这个生活中最重要的决定,但是我知道我在计算机前面花费了多少时间以及用他们帮助了多少人,我也知道从使用Linux中获得的满意度和不受困于某个公司操作系统的好处。
——引于《Windows用户转向Linux的12个步骤》
Windows用户转向Linux的12个步骤(ONE)
Linux基础 简介 Linux是个免费的,开放源代码的,有所有开发者协作开发的类Unix操作系统 可以运行在大多数的硬件平台上面 提供广泛的网络支持,同其他系统交换所必须的许多特性 拥有大量的应用程序,无论本身开发的还是从其他系统引入的 由来 由荷兰赫尔辛基大学学生Linux Benedict Torvalds于1991年创立 最初目的是替代Minix操作系统,作为小型类Unix操作系统运行在大学计算机上 Linux与Windows比较的9个方面 性能/价格比(Cost/Value for Money):Linux win——Linux免费,Windows收费 用户满意度(User Satisfaction):Windows win——Linux命令行模式,Gui不完善;Windows完善的窗口系统 应用支持(Application Support):Windows win——Windows软件种类丰富功能多样;Linux需要努力 OS互操作性(OS Interoperability):Linux win——Linux可以挂载其他操作系统的分区;Windows不可以 OS伸缩性(OS Scalability):Linux win——Linux可以定制内核,并按需切换;Windows只能接受默认设置 OS功能(OS Functionality):Linux win——Linux的功能可从任何角度定制,甚至于自己完善;Windows只能提交bug等待升级 OS可用性(OS Availability):Linux win——Linux可稳定运行长时间,Windows稳定性不足 OS支持(OS Support):Linux win——Linxu可以运行在各种硬件条件下,Windows对硬件要求较高 操作特性(Operational Features):Linux win——Linux在内存管理,文件管理,多用户和安全性方面强于Windows 基本概念 内核 (kernerl) 内核是操作系统中出来最基本功能以及控制计算机硬件之间交换作用的部分 Linux是模块化的,在创建内核程序时,Linux是可定制的可包含某些特性或者除去某些特性 shell 与 shell脚本 shell是个特殊的软件,提供基于文本的用户界面,用于完成用户与系统内核以及应用软件之间的交互 shell有多种,用户可以选择。如:bash(GNU Bourne Again shell),zsh(Z shell),tcsh(TC shell)等 shell脚本类似于windows下面的批处理文件 shell是个文本文件,并总是以#和!开头,之后是shell程序的完整路径 用户,用户组,root root用户:负责安装,判定和解决系统出现的问题,以及维护系统安全。系统中的一切root都有权处理 用户:普通用户不能修改其主目录外的任何目录 用户组:默认情况下,同组用户可以相互访问组成员主目录中的文件,但不能修改 属主,文件属性,权限 属主:文件的所有者,默认为文件创建者,root用户可修改 文件属性:文件按照属主,用户组,和所有人分别有不同的权限等级。 权限:R-读4;W-写2;X执行1;可通过属主或root运行chmod修改权限 设备管理,挂载 Linux中设备也是一种文件,他们通过特殊的文件名进行表示 Linux用设备名操作驱动器,但是用户必须用其挂载点来访问驱动器 X,KDE,GNOME X 指的是Linux的图形化界面;KDE和GNOME是其中的几个种类 KDE包括自己的窗口管理器KWM,GNOME能同几种窗口管理器一起集成工作 目录结构 / :根目录,不是root用户的主目录。 /root :root用户主目录;可通过cd ~访问 /bin:存放超级用户和一般用户使用的命令文件 /boot:存放系统启动所需要的大多数文件,启动时其他文件存储在/sbin中 /dev:存放设备文件和其他特殊文件 /dev/ide:整个IDE硬盘 /dev/hdb1:IDE硬盘的第一个分区 /dev/fd0:第一个软驱 /dev/lp0:第一个串口打印机 /dev/sda:整个SCSI硬盘 /dev/tty1:第一个虚拟控制台 /etc:存放启动和运行系统所需要的大部分配置文件,这些文件大多数可以编辑 /home:存放系统中除Root用户外所有用户的主目录 /lib:包含了/bin和/sbin里面使用的库文件 /mnt:用于零时装载文件系统 /opt:第三方软件的安装目录,而实际上这些应用多安装/var/local /proc:用于同Linux内存交换数据。在这个目录下面有一些可查看的文本文件,其中有内核版本,系统正常工作时间和处理器,内存信息 /tmp:系统利用该目录存储临时文件 /sbin:root用户使用的网络命令包含在这个目录中,其中有文件系统检查命令,关机命令和一些网络命令 /usr:包含了系统中每个用户都可以使用的命令和文件。包含了集成套件中一起安装的大多数程序和实用工具。注意:用户对改目录只有访问权限,即不能改变/usr目录中的内容 /usr/local:存在与/usr之下但是可以被修改。大多第三方软件的习惯安装位置 /usr/src:出发Linux源代码,编译内核时可用 /var:存放Linux中可变数据的地方。可变数据包括锁文件,日志文件,邮件箱,假脱机文件和高速缓存数据 其他:Linux是大小写敏感的操作系统 进程 前台进程 用户接受用户命令 和刷新屏幕显示内容 bash,zsh,tcsh都提供fg命令,用于将进程从后台转移到前台 后台进程:不等待出现任何其他事情的进程 kill进程:可以杀手进程的进程。普通用户杀自己的,root 用户杀所有 时钟守护程序(cron):能够安装某种规律有计划执行进程的进程。通过crontab来维护 守护程序(daemon):潜伏在后台的进程,会不知疲倦的执行给予它的命令 top:查看系统性能的进程,并能够提供附近信息 ps(process status):确定全部进程的状态 重定向 文件:stdin——标准输入文件,默认为键盘。stdout——标准输出文件,默认为显示器 >:重定向stdin的输入到指定文件,如指定文件重复则覆盖,没有则新创建一个 >>:类似>,当指定文件重复时则把输出内容附加到指定文件后面 <:默认为键盘输入,如与文件名向链接 则执行文件中的命令 |:(pipe 管道),将一个程序的输出定向为另一个程序的输入 ODD命令 文件命令 ls:查看文件信息 ln:符合链接 ln -s 软连接 ln 硬链接,指向真实文件时,及时真实文件被删除,Linux也会认为真实文件存在,只要真实文件的硬链接存在 cp:复制文件 mv:移动文件 重命名文件 rm:删除文件 cat:查看文件 合并文件 more:有分屏功能的文件查看器 less:可前后翻页的文件查看器 head:查看文件头部 tail:查看文件尾部 lpr:向打印机发送内容的命令 grep:能够在指定的文件或者目录中找到包含了给定字符串的文件 diff:比较文件内容,diff -y将差异的行并排输出 目录命令 pwd:查看当前路径 cd:转换当前目录 mkdir:新建目录 rmdir:删除目录 多用户命令 users:显示在线用户名 who:显示在线用户信息,不仅仅是用户名 finger:更详细的用户信息 安全性命令 pwsswd:设置用户密码 chown:修改文件或目录的属主 chmod:修改文件或目录的权限 网络命令 ftp:ftp客户端操作命令 rlogin:远程登录命令 rsh:远程执行命令 telnet:telnet协议客户端命令 特色工具 make:一个GNU程序,允许你新建一个大软件以运行在你的系统上。一般软件的安装说明会存在于README,INSTALL文件中 man:帮助工具,常有模块 Name fo The Command(命令名称) A synopsis of its use(使用概要) A description of its functions(功能描述) Details of its options(可选项详情) Enviromment variables it uses(它使用的环境变量) Names of related commands(相关命令的名称) Description of any know bugs(以知BUGS) Tips for use(使用提示) info:帮助工具,类似man,但运行跟踪文件中的超链接 lilo(Linux Loader):在系统引导是,lilo转载Linux的内核,并且也可以将它配置为引导到其他操作系统 文本编辑器:pico,vi,Emacs 信息来源 http://www.linux.org http://www.linuxsir.org http://www.ubuntu.com.cn/