各硬件装置在linux中的文件名
在Linux系统中,每个装置都被当做一个档案来对待,举例来说,IDE接口的硬盘文件名为 /dev/hd[a-d],括号内字母为a到d任意一个。
常见装置在Linux中档案名
简单癿说,整个开机流程到操作系统乀前癿劢作应该是这样癿:
1. BIOS:开机主劢执行癿韧体,会讣识第一个可开机癿装置;
2. MBR:第一个可开机装置癿第一个扂区内癿主要启劢记录区块,内吨开机管理程序;
3. 开机管理程序(boot loader):一支可读叏核心档案来执行癿软件;
4. 核心档案:开始操作系统癿功能...
这个 boot loader 癿主要仸务有底下这些项目:
提供选单:用户可以选择丌同癿开机项目,这也是多重引导癿重要功能!
载入核心档案:直接挃向可开机癿程序区段来开始操作系统;
转交其他 loader:将开机管理功能转交给其他 loader 负责。
开机管理程序除了可以安装在 MBR 之外, 还可以安装在每个分割槽的启动扇区(boot sector),这个特色扄能造就『多重引导』癿功能啊。
每个分割槽都拥有自己的启动扇区(boot sector)
实际可开机癿核心档案是放置到各分割槽内的!
loader 叧会认识自己的系统槽内的可开机核心档案,以及其他 loader 而已;
loader 可直接指向或者是间接将管理权转交给另一个管理程序。
Linux 在安装的时候,你可以选择将开机管理程序安装在 MBR 戒各别分割槽的启动扇区, 而且
Linux 的 loader 可以启动设定选单,所以你可以在 Linux 癿 boot loader 里面加入 Windows 开机的选项;
Windows 在安装的时候,他的安装程序会主动的覆盖掉 MBR 以及自己所在分割槽的启劢扂
区,你没有选择的机会, 而且他没有让我们自己选择选单的功能。
因此,如果先安装 Linux 再安装 Windows 的话,那 MBR 的开机管理程序就叧会有 Windows 的项目,而不会有 Linux 的项目 (因为原本在 MBR 内的 Linux 的开机管理程序就会被覆盖掉)。
整个 Linux 系统最重要的地方就是在二目录树架构。 所谓的目录树架构(directory tree)就是以根目录为主,然后向下呈现分支状的目录结构的一种档案架构。
所谓的『挂载』就是利用一个目录当成进入点,将磁盘分区槽的数据放置在该目录下; 也就是说,进入该目录就可以读取该分割槽的意思。这个动作我们称为『挂载』,那个进入点的目录我们称为『挂载点』。 由于整个 Linux 系统最重要的是根目录,因此根目录一定需要挂载到某个分割槽的。 至于其他的目录则可依用户自己的需求来给予挂载到不同的分割槽。
基础指令操作
date:显示日期与时间
cal:显示日历
bc:显示计算器 输入quit离开
table:具有『命令补全』不『档案补齐』的功能
ctrl+c:中断当前程序
ctrl+d:键盘输入结束 相当于输入exit
进入 man 指令的功能后,你可以按下『空格键』往下翻页,可以按下『 q 』键来离开 man 的环境。
man page 大致分成底下这几个部分:
当使用『man -f 指令』时,man 只会找数据中的左边那个指令(或档案)的完整名称,有一点不同都不行! -k 可以模糊查找
info 不 man 的用途其实差不多,都是用来查询指令的用法或者是档案的格式。
info page 则是将文件数据拆成一个一个的段落,每个段落用自己的页面来撰写, 并且在各个页面中还有类似网页的『超链接』来跳到各不同的页面中,每个独立的页面也被称为一个节点(node)。
nano:文本编辑器 nano test.txt ctrl+x退出 ctrl+w搜寻字符串
要关机时需要注意底下几件事:
观察系统的使用状态:
看目前有谁在在线,可以下达『who』这个指令
看网络的联机状态,可以下达『 netstat -a 』这个指令
看背景执行的程序可以执行『 ps -aux 』这个指令
通知在线使用者关机的时刻:
使用shutdown 的特别指令
正确的关机挃令使用:
例如 shutdown 与 reboot 两个指令!
关机/重新启劢相关的指令:
将数据同步写入硬盘中的指令: sync
惯用的关机指令: shutdown
重新启动,关机: reboot, halt, poweroff
shutdown:
init:切换执行等级
init 0:关机 init 3:纯文本模式 init 5:含有图形接口模式 init 6:重新启动
ls 列出文件 ls -al 列出所有
第一组:档案拥有者权限
第二组:同群组权限
第三组:其他非本群组权限
chgrp:改变档案所属群组
chown:改变档案拥有者
chmod:改变档案权限
设定档案权限的方法有两种:分别可以使用数字或符号来进行权限变更
数字类型改变档案权限:
linux的档案基本权限有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限,我们可以用数字来代表各自的权限。
r:4
w:2
x:1
例如 权限 【-rwxrwx---】分数是 owner=rwx=4+2+1=7 group=rwx=4+2+1=7 others=---=0+0+0=0
符号类型改变档案权限
a:all 例如 去掉所有人的可执行权限
如果你在某目录下不具有x权限,就无法切换到该目录下,也就无法执行该目录下任何指令,即使拥有r权限。
x 在目录当中是不『能否进入该目录』有关, 至于那个 w 则具有相当重要的权限,因为他可以让使用者删除、更新、新建档案或目录
Linux档案与种类扩展名
档案种类:
正规档案:【-】 就是一般进行存取的类型的档案 文本文件和二进制文件
目录:【d】
连结档:【l】 L的小写 类似windows的快捷方式
设备与装置文件:通常在/dev目录下 分为两种
区块设备档:【b】 就是一些储存数据 如 硬盘 等
字符设备文件:【c】 一些串行端口的接口设备 如 键盘等
资料接口文件:【s】 通常用在网络上数据承接
数据输送文件:【p】 FIFO 解决多个程序同时存取一个档案的问题
linux的档案扩展名:
*.sh:脚本或批处理文件
*.Z, *.tar, *.tar.gz, *.zip, *.tgz:经过打包的压缩文件
*.html, *.php:网页相关档案
linux文件名最好避开【* ? > < ; & ! [ ] | \ ' " ` ( ) { }】 ,另外,文件名开头以【.】开头代表档案为隐藏档
目录配置依据 FHS
以下目录不可与根目录分开
目录的相关操作
cd:变换目录
pwd:显示当前目录 pwd -P 显示出确实的路径而不是链接路径
mkdir:建立一个新的目录 mkdir -m :配置文件权限 mkdir -p:将所需目录递归建立
rmdir:删除一个空目录 rmdir -p :将上层目录一起删除
$PATH:文件执行路径变量
档案与目录检视:ls
复制档案:cp
移除档案:rm
移动或更名档案:mv
档案内容查阅
more:一页一页翻动 可以按以下键
less:比more更有弹性
mtime:内容数据更新时,会更新这个时间
ctime:状态改变时,会更新这个时间
atime:内容被取用时,会更新这个时间 如 cat
在默认权限的属性上,目录和档案是不一样的。档案一般用于数据的记录,不需要执行权限,即无x权限。
档案预设权限:umask
umask 默认值需要减掉的权限
档案隐藏属性:
chattr:配置文件案隐藏属性。 此指令只能在ext2/ext3的文件系统上生效
显示隐藏档案属性:
档案特殊权限:SUID SGID SBIT
Set UID
Set GID
Sticky Bit
SUID/SGID/SBIT的权限设定
SUID:4
SGID:2
SBIT:1
观察文件类型:file
which:寻找执行档
whereis:寻找特定档案
locate:
find:
df:列出文件系统的整体磁盘使用量
du:评估文件系统的磁盘使用量
ln:
范例:
磁盘分区:fdisk
先用df指令找出磁盘文件名 再用fdisk来查阅
mkfs
mke2fs
fsck:检验文件系统是否出错
badblocks:检查硬盘或者软盘有无坏轨
mount:磁盘挂载与卸除
umount:将装置档案卸除
手动设置装置档案
档案与文件的压缩与打包
linux环境中,压缩文件案的扩展名大多是【*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2】
zcat用来查看压缩文本文件的内容
bzip2的压缩比比gzip更好
tar:打包
dump:完整备份工具
restore:还原
vim编辑器
基本上vi分为三种模式:一般模式,编辑模式,指令列模式
一般模式:以vi打开一个档案直接进入一般模式
编辑模式:按下【i,I,o,O,a,A,r,R】任何一个字母就会进入编辑模式
指令列模式:一般模式下,输入【:/ ?】任何一个就可将光标移到最底下一行,进入指令列模式。
移动光标方法:
搜寻与取代:
复制粘贴删除:
Bash
指令太长可用『 \[Enter] 』来跳脱,在下一行继续输入,注意中间没有空格。
变量的取用:echo 例如:echo $PATH
变量设定规则:1.变量与变量内容以=连接;
2.等号两边不能直接接空格;
3.变量名称只能为数字和英文字母,但不能以数字开头
4.变量内容若有空格符可使用双引号【"】或者单引号【'】
5.可用跳脱字符『 \ 』将特殊符号(如 [Enter], $, \, 空格符, '等)变成一般字符;
6.在一串指令中,还需要藉由其他的指令提供的信息,可以使用反单引号『`指令`』或 『$(指
令)』。特别注意,那个 ` 是键盘上方的数字键 1 左边那个按键,而不是单引号
7.若该变量为扩增变量内容时,则可用 "$变量名称" 或 ${变量} 累加内容,如下所示:
『PATH="$PATH":/home/bin』
8.若该变量需要在其他子程序执行,需以export使变量变成环境变量
9.通常大写字符为系统默认变量,自行设定变量可使用小写字符方便判断
10.取消变量的方法为使用unset。例如:『unset myname』