Linux回顾三
/etc/login.defs中制订了创建用户时的一些预定义,其中create home 选项决定了系统在建立用户的时候是否同时创建其主目录。
系统在建立用户目录时,会把/etc/skel(.bash_logout, .bash_profile,.bashrc, .emacs等)中的内容拷贝到用户家目录中。
最后,系统会使该目录下的文件归属于该用户。
shadow文件中每一个行中的每一项具体来说:
登录用户 用户密码(一般经md5加密) 从1970年1月1日起到密码上一次被更改的时间 密码再过几天可以被变更(0表示随时可以被变更) 密码再过几天必须被更改(99999表示永不过期) 密码过期前几天系统提醒用户(默认为一周) 密码过期几天后帐号会被取消 从1970年1月1日算起,多少天帐号失效,如果密码开头是!或*号,表示用户被锁定了,或要修改密码,如果密码被锁定可以使用usermod –u或直接去掉密码前的!就可以,passwd –S lybing,查看密码状态
忘记密码:单用户登入,然后把密码段清空,即可以空密码重新登入
用户可以通过authconfig来设定是否使用/etc/shadow和md5加密密码。
groupmod –n 新组名 旧组名 (更改组名)
gpasswd 组名 更改组密码
添加用户到组:
gpasswd –a jack boobooke 添加用户到群组
gpasswd -d lybing root 从组中删除用户
或直接修改/etc/group文件:
有效群组:
初始群组:当用户登录时,立即取得初始群组的权限,默认群主,可以变更其它用户群组为初始用户群组: newgrp
useradd –u(更改uid ) –g(指定用户群组) –G(加入其它群组) –d(目录) –s(指定shell) –M(不创建家目录) –m(创建家目录) –r(创建系统帐号,即uid<500)
常用的字符设备:
/dev/null 无限数据接收设备(丢弃所有的输入)
/dev/zero 无限零资源(丢弃所有的输入)
/dev/tty[0-31]: 虚拟终端(按ctrl+F[1]切换)
/dev/ttyS[0-9]: 串口(鼠标,键盘)
/dev/lp[0-3]: 并口(并口打印机)
/dev/console: 控制台
/dev/fb[0-31]: framebuffer 显卡传输
常用的符号连接设备:
cdrom -> hdc dvd ->hdc
设备文件的使用:
echo hello > /dev/tty2 在第二个tty终端显示一个”hello”。
cp /dev/fd0 /dev/fd1 将第一个软驱中的软盘拷入到第二个软驱中的软盘。
dd if=/dev/hda of =/root/mbr bs=512 count=1
备份第一个硬盘上的mbr为/root目录下的mbr文件
dd 指令是一个功能强大的copy命令
支持在拷贝文件的过程中转换文件格式
支持指定范围的复制
常用参数:
if=文件名: 指定源文件
of=文件名:指定目标文件
bs=xxx: 指定块的大小
count=n:指定复制块的数量
dd if=/etc/passwd of=/root/passwd.backup
dd < /root/install.log > /root/intall.log.backup
dd < /dev/sda1>/root/sd1.bakup
mkmod:
系统用户可以用mknod指令来建立所需的设备文件。
语法: mknod 文件名 文件类型 主号 从号
主号与从号可以在/usr/share/linux-2.4/Documentation/devices.txt中找到。
MAKEDEV创建设备文件
kudzu: Red Hat Linux上的硬件自检工具,它维护两份文件
/etc/sysconfig/hwconf: 使用硬件列表
/etc/modules.conf: 为硬件指定驱动
kudzu以/usr/share/hwdata为数据库寻找硬件
hwbrowser是图形界面下的硬件管理器。
MBR:硬盘MBR(Master Boot Record)就是我们经常说的”硬盘主引导记录”,它是由FDISK等磁盘分区命令写在硬盘绝对0扇区的一段数据,它由主引导程序、硬盘分区表及扇区结束标志字(55AA).
这三部分组成,如下:
组成部分 |
所占字节数 |
内容 |
主引导程序 |
446 在windows下的bootloader配置文件是boot.ini,而linux下是grub(默认),配置文件是/boot/grub/grub.conf |
检查硬盘分区表、寻找可引导分区并负责将可引导分区的引导扇区装入内存 |
硬盘分区表 |
16X4 |
每份16字节的4分硬盘分区表,里面记载了每个分区的类型、大小,分区开始、结束的的位置等重要内容 |
结束标志字区 |
2 |
55AA |
这3部分的大小加起来正好是512字节=1个扇区(硬盘每扇区固定为512个字节),因此,人们又形象地把MBR称为“硬盘主引导扇区”。这个扇区所在硬盘磁道上的其它扇区一般均空出,且这个扇区所在硬盘磁道是不属于分区范围内的,紧接着它后面的才是分区的内容(也就是说假如该盘每磁道扇区数为63,那么从绝对63扇区开始才是分区的内容)。从此看出硬盘分区表只能记录四条记录,所以主分区加扩展分区要少于四个。但是扩展分区可以分出一些列的逻辑分区,扩展分区以链表方式连接起来。
分区实际上也就是写硬盘分区表
硬盘分区工具: disk druid: 方便的分区工具,只能在安装时使用
fdisk:运用广泛的字符界面下的硬盘分区工具
fdisk -l /dev/sda 查看硬盘分区情况
fdisk /dev/sda 打开工具
partprobe 让内核热读取分区信息
创建虚拟内存(交换分区): mkswap /dev/sd6 格式化分区为交互分区。
swapon /dev/sd6 把分区加载到虚拟内存中
swapoff /dev/sd6 把分区从虚拟内存中卸下
dd < /dev/zero > /tmp/swap bs=1M count=100 创建swap文件
mkswap /tmp/swap 格式化交互分区格式
swapon /tmp/swap 将创建的虚拟内存加载到虚拟内存中
文件系统:格式化过程就是创建文件系统的过程。
不同的文件系统存放,搜索文件的方式都有不同。
ext2/exts文件系统采用block+innode的方式存放文件。
ext2/ext3文件系统上有一块空间被称为超级快(superblock)用于存放文件系统的元数据,诸如卷标名,block(最大4k)数,inode数等等。每个文件都有一个inode,有一个索引节点号,和若干个块,
inode存放文件的元素数据,包括文件权限、属性,更改时间等以及指针的功能,指出文件放在那些块里。block用来存放数据。
对于目录,indode记录目录属性,而block中记录目录中文件与索引节点号的对应关系。
dumpe2fs /dev/sda1 查看超级块信息。
Inode count: 26104
Block count: 104388
Reserved block count: 5219
Free blocks: 92041
Free inodes: 26069
ReiserFS文件系统,一个非常优秀的文件系统,可轻松管理上百G的文件系统,先进的日志机制,高效的磁盘空间利用,独特的搜索方式。
用户可以使用lsattr来检查文件的属性,也可以使用chattr来改变文件的属性。+号添加,-号去掉
特殊属性: A a(只能追加,不能删除能容) d(当备份时,文件不会被备份) l(不能删除和重命名) j() S()
ext3文件系统即一个添加了日志功能的ext2,可以与ext2文件系统无缝兼容。
ext3文件系统可以通过增加日志的方式简单地升级为ext3文件系统。
ext3文件系统支持三种日志模式
规则(默认,仅记录元素据)
日志化(将数据象元素据一样记录入日志)
ext2 ->缓冲区->硬盘
ext3->缓冲区->(通知日志开始写入)硬盘(通知日志写入结束)
iso9660: 光盘使用的文件系统
ReiserFs/JFS:仍然在完善的带日志的文件系统
ls –l /lib/modules/’uname -r’/kernel/fs linux所支持的文件系统
cat /proc/filesystems 查看当前系统所启用的文件系统。
创建文件系统:
mkfs 可以用与创建文件系统,由-t参数指定
mke2fs 创建ext2/3文件系统。支持指定block大小等功能
mke2fs –b 2048(最大建议4096) /dev/sda5, 修改文件块的大小
mke2fs –i 1028 /dev/sda5 指定索引块大小
mke2fs –N 3000 /dev/sd5 指定索引点的个数
mke2fs –L 3000 /dev/sd5 设定卷标
mke2fs –j /dev/sd5 创建ext3文件系统
mke2fs转换格式时,会丢失数据
挂载文件系统的指令是mount
语法: mount –t 文件系统类型 【其它参数】 设备 挂载点(目录),如果原目录中有文件,其它文件将暂时不能不能访问。
-o 参数: 补充追加的参数
ext2文件系统默认采用的参数: rw(可读写), suid(允许使用suuid), dev(运行包含设备文件),exec,auto(允许自动判断), nouser, async(异步管理文件). 其它 ro(只读),loop
mount –o loop ,ro /var/boot.iso /mnt 挂载镜像文件
/etc/fstab 配置文件系统挂载信息,mount 文件系统时若给出的参数不全,系统会从/etc/fstab中读取参数补全。系统启动会参考/etc/fstab中的配置相自动加载文件系统,也被fsck,dump,quotaon, swapon等程序使用。
LABEL=/(卷标) / (挂载点) ext3 (文件类型) defaults(策略) 1(表示多久备份一次) 1(启动启动z时是否校验分区,表示次序)
LABEL=/boot /boot ext3 defaults 1 2
如果要挂载的设备长期有效,可以在此文件中添加一行信息即可。
用户可以通过/etc/mtab文件来查看当前挂载的系统
可以直接使用mount或cat/proc/mounts,都可以查看当前正在挂载的文件系统。
由于设备可能发生变化,因此可以通过卷标来挂载文件。
卷标记录在文件系统的超级块中
用户可以通过e2label指令来查询和更改ext2文件系统卷标。
e2label /dev/sda5 data 创建卷标
e2label /dev/sda5 查看卷标
dumpe2fs –h /dev/sda5 可以通过查询超级块,来查询卷标。
mount –L data(卷标) 使用挂载文件
umount [参数] 设备/挂载点,一个正在使用中的文件系统不能被卸载。
文件系统的维护:
fsck –y(自动修复损害的文件) /filesystem check: 用于检查与修复文件系统(此时设备应处于卸载状态)
e2fsck: 检查与修复ext2文件系统
系统在启动时会自动会被检查
tune2fs: 更改ext2文件系统的属性(不会丢失数据)
tune2fs –j /dev/sda5 (转换为ext3格式,不会丢失数据)
resize2fs: 更改ext2文件系统的大小
parted: 更改多种文件系统大小
自动挂载:系统通过autofs服务自动挂载文件系统,需要后台的automount进程。autofs服务的开闭由 /etc/init.d/autofs脚本控制
主要应用与软驱与光驱等场合
如果该设备一段时间没有被使用,autofs会自动关闭。
Linux网络配置:与网络配置相关的配置文件:
/etc/sysconfig/network:包含了主机最基本的网络信息,用于系统启动。
/etc/sysconfig/networ-script/:系统启动时初始化网络的一些信息
/etc/hosts:网络主机名映射为IP地址的功能
/etc/host.conf:配置域名服务客户端的控制文件
/etc/resolv.conf:域名服务客户端的配置文件,用于指定域名服务器的位置
/etc/services:设定主机的不同端口的网络服务
网络管理常用命令
route:配置并查看内核路由表的配置情况
traceroute:显示数据包到达目的主机所经过的路由
traceroute www.sina.com.cn
ping: 测试网络的连通性 ping –c 2 www.baidu.com
netstat:显示网络状态信息, -a,n,t,u,r,i
ifconfig 设备 IP地址 MAC地址 netmask 掩码地址 broadcast 广播地址 gateway 地址 up/down:临时性的配置网卡的IP地址
service network restart 当重启时,临时配置将失效
ifconfig eth0 down(upifdown eth0
init /etc/rc.local
-> /etc/inittab->/etc/rc.d/rc.sysinit->/etc/rc0.d/(rc1.d/…./etc/rc6.d/)
->/etc/rc.d/init.d(service/etc/init.d/) ->xinetd->(/etc/xinetd.conf,/etc/xinetd.d/,超级守护)
Red hat enterprise Linux(RHEL) AS(最强)(ES, WS(客户端,桌面)),社区版本Centos, Fedora,装双系统时,先按windows,再按linux, linux的grub既可以引导windows,也可以引导linux。
计划任务:Linux系统支持一些能够自动执行任务的服务我们称