当前位置:文档之家› Linux_基础经典笔记总结

Linux_基础经典笔记总结

.用户可以通过authconfig来设定是否使用shadow文件及md5加密shadow文件详细.shadow文件的每一行中的每一项具体来说:.登录用户名.用户密码(一般经md5加密)(密码是*!表示账号被锁定不能被登录).从1970年1月1日起到密码上一次被更改的时间.密码再过几天可以被变更(0表示随时可被变更).密码再过几天必须被变更(99999表示永不过期).密码过期前几天系统提醒用户(默认为一周).密码过期后几天账号会被取消(:wq!强行保存退出).从1970年1月1日算起,多少天后账号失效组管理.系统中组的信息,记录在/etc/group中.系统用户可以直接修改/etc/group文件达到更改组数据的目的,也可以使用以下指令:.groupadd:添加一个组例如:groupadd book.groupdel:删除一个已存在组例如:groupdel book.groupmod:更改组的信息.用户可用newgrp指令改变当前所再组组文件(etc/group)(/etc/gshadow)./etc/group中的每一行代表一个组,用:隔开不同项.group_name:组名.password:组密码(一般不用).GID:组身份编号(0代表root群组,1-499系统群组,500上代表一般群组).user_list:组成员列表例如:groupmod -n jack tom 更改群组名称gpasswd jack 为群组设定密码gpasswd -a jack boobooke把jack用户加入群组boobooke或vi /etc/group有效群组:一个用户同时属于多个组(groups第一个输出的群组就是有效群组)[更改有效群组:newgrp tom]初始群组:一开始默认所属的群组{useradd -u 600 teacher为用户特定指定UIDuseradd -g tom -G boobooke teacher为用户指定初始群组并加入一个群组useradd teacher -s /bin/csh让用户不使用bashuseradd -M teacher不给用户创建加目录useradd -m teacher创建用户的同时强制创建加目录useradd teacher -d /teach1不让用户加目录放到/home下useradd -r chen创建系统用户groupadd -r groups创建系统群组}finger查看硬件配置与管理设备文件(为用户和应用程序提供操作应用的接口,用户只需要以操作普通文件的方式来控制相关硬件).Linux沿袭Unix的风格,将所有设备认成一个文件.设备文件分为两种.块设备文件(b)通过缓冲区存放数据512-32K字节的中继块(硬盘、光驱).字符设备文件(c)一次只一个字节,不需要缓冲区(串口、优盘).设备文件一般放在/dev目录下常用的块设备文件1./dev/hd[a-t]:IDE设备2./dev/sd[a-z]:SCSI设备3./dev/fd[0-7]:标准软驱4./dev/md[0-31]:软raid设备5.loop[0-15]:本地回访设备(支持本地回环请求)6.ram[0-19]:内存常用的字符设备文件./dev/null:无限数据接收设备(黑洞功能)./dev/zero:无限零资源./dev/tty[0-31]:虚拟终端./dev/ttyS[0-9]:串口./dev/lp[0-3]:并口./dev/console:控制台./dev/fb[0-31]:framebuffer(显卡数据传输)常用的符号连接设备文件./dev/cdrom→/dev/hd[a-t],sd[a-z]./dev/modem→/dev/ttyS[0-9]./dev/pilot→/dev/ttyS[0-9]设备文件的使用.用户可以通过操作设备文件来完成对设备的操作.echo hello > /dev/tty2- 在第二个tty终端上显示一个'hello'.cp /dev/fd0 /dev/fd1- 将第一个软驱中的软盘拷入第二个软驱中的软盘 .dd if=/dev/hda of=/root/mdr bs=512 count=1 - 备份第一个硬盘上的mbr为/root目录下的mbr文件dd.dd指令时一个功能强大的copy命令.支持在拷贝文件的过程中转换文件格式.支持指令范围的复制.常用参数.if=文件名:指定源文件.of=文件名:指定目标文件.bs=xxx:指定块的大小.count=n:指定复制块的数量例如:dd if=/etc/passwd of=/root/passwd.backup (bs=512 count=3)可以不用加dd < /root/install.log > /root/install.log.bpdd < /dev/sda1 > /root/mbr bs=512 count=1 -- 备份磁盘扇区mknod1.系统用户可以用mknod指令来建立所需的设备文件- 语法:mknod 文件名文件类型主号从号2.主号与从号可以在/usr/src/linux-2.4/Documentation/devices.txt中找到例如:mknod /dev/hda5 b 3 5kudzu1.kudzu:Res Hat Linux上的硬件自检工具,它维护两份文件- /etc/sysconfig/hwconf:使用硬件列表- /etc/modules.conf:为硬件指定驱动2.kudzu以/usr/share/hwdata为数据库寻找硬件3.hwbrowser十图形界面下的硬件管理器关掉kudzu工具:chkconfig kudzu off幻灯片一百:硬盘结构-(由扇区组成每扇区是512字节) 1.对于每一个硬盘:(磁盘中55AA结束表示符) - 主引导记录/Master Boot Record/MBR讲解:告所计算机如何引导系统内核- 硬盘分区表/Standard Partition Table/SPT 讲解:记录每分区记录- 主分区/Primary Partition- 扩展分区/Extended Partition逻辑分区/Logical Partition----------------------------------------|MBR | | | | | |----| | | | || | hda1 | hda2 | hda3 | hda4 | |SPT | | | | ||----| | | | Extend||55AA| | | | |----------------------------------------MBR:446 SPT:64 55AA:2字节磁盘之间以磁柱来分隔磁盘分区1.一块硬盘只能有四个主分区2.用户可以也只可以将一个主分区变成扩展分区3.在扩展分区上,用户可以以链表方式建立逻辑分区-Red Hat Linux对一块IDE磁盘最多支持到63个分区,SCSI磁盘支持到15个-fdisk工具最多只能辨认出16个分区----------------------------------------| | | | || | | | || hda1 | hda5 | hda6 | hda7 || | | | || |Extend | | || | | | |----------------------------------------hda1-4系统主分区预留分区号为磁盘分区.磁盘分区工具.disk druid:方便的分区工具,只能在安装时使用.fdisk:运用广泛的字符界面下硬盘分区工具.分区改变后需重启系统才会生效例如:添加删除分区fdisk -l /dev/sda -- 查看硬盘分区的详细信息删除分区操作:fdisk /dev/sda -- 命令行输入m -- 接下来选择p(列出磁盘分区信息)-- d(删除分区选项) -- 5(输入分区号) -- w(保存退出)或q(不保存退出)partprobe(让分区表立刻生效不需要重新启动)新建分区操作:fdisk /dev/sda -- m(命令行输入) -- n(创建分区) -- e(选择扩展分区) -- +how anyM的值-- partprobe(内核重新读取分区表)创建虚拟内存:fdisk -l(查看虚拟内存) -- 需要扩大虚拟内存-- dfisk /dev/sda -- n -- +how anyM的值-- t(更改新分区ID号从而划分到虚拟分区内去) -- 6(新建分区) -- L -- 82(虚拟分区号) -- w(保存退出) -- partprobe(是内核重新读取分区表) -- mkswap dev/sda6 -- free查看虚拟内存没变-- swapon /dev/sda6(打开所建立的虚拟内存) free(现在查看虚拟内存增加了) / swapoff /dev/sda6(关闭所建立的虚拟内存) ; 另一种方法创建虚拟内存:dd < /dev/zero > /tmp/swap bs=1M count=100 -- mksawp /tmo/swap(格式化) -- free(查看虚拟内存) -- swapon /tmp/swap -- free(查看虚拟内存现在增加咯)文件系统文件结构.为了能在设备上存储与读取文件,我们需要在分区上创立文件系统.文件系统记录目录与主文件我们称之为文件结构.每一个文件系统在Linux里都被解释成由一个根目录为起点的目录树结构.Linux将各个文件系统挂载(mount)在系统目录树中使用文件系统(文件存在的物理空间)1.对应不同的操作系统与设备,计算机里有许许多多中文件系统2.不同的文件系统存放、搜索文件的方式都有不同3.Linux支持多种文件系统的读写4.Linux自身最主要使用的是ext2/ext3文件系统幻灯片一百零四:ext2/ext3文件系统.ext2/ext3文件系统支持rwx权限及文件属性(attributes).ext2/ext3文件系统采用block(逻辑块存储文件内容)+inode(索引节点存储文件属性,指针功能指向文件内容放在哪个块里)的方式存放文件.ext2/ext3文件系统上有一块空间被称为超级块(superblock)用于存放文件系统的元数据,诸如卷标名、block数、inode数等等(查看超级块dumpe2fs /dev/sda5 | more).inode存放文件的元数据,包含文件权限、属性、更改时间等等数据ls -il 查看索引节点号系统读取文件流程:/etc /etc------------------→inode | block|Services |←-----------------|inode| services|-----------------→blockReiserFS文件系统1.一个非常优秀的文件系统2.可轻松管理上百G的文件系统3.先进的日志机制4.高效的磁盘空间利用5.独特的搜寻方式文件属性1.在ext2/3文件系统中,对每一个文件,还提供额外的属性支持2.用户可以用lsattr来检查文件的属性3.系统用户可以用chattr来改变文件的属性- +号添加、-号去除特殊属性(A当文件被修改是文件的更改时间不会被改变、a只能想文件作内容追加,root用户用、d做备份不会备份这文件、i文件永远不会改变包括增删改、j系统会将文件本身信息记录ext上日志里、S文件被更改同步写到文件系统里面)例如:给文件设定特殊属性lsattr 文件名-- 查看特殊属性chattr +i install.log -- 添加特殊属性rm install.log -- 现在不能删除这个文件chattr -i install.log -- 去掉特殊属性ext3文件系统1.ext3文件系统即一个添加了日志功能的ext2,可与ext2文件系统无缝兼容2.ext2文件系统可以通过增加日志的方式简单地升级成为ext3文件系统3.ext3文件系统支持三种日志模式- 规则(默认,仅记录元数据)- 日志化(将数据象元数据一样记录入日志)- 写回(只在fsck是发生)ext2写数据的流程:写(data)--- 缓冲区(buffer)但是要等缓冲区写满后才执行下面--- 硬盘(disk)ext3写数据的流程:写(data)--- 缓冲区(buffer)缓冲区写满后--- 通知日志准备写入文件--- 硬盘(disk)并且硬盘最后面一块空间是日志存放空间--- 通知日志文件已经写入磁盘有无日志的差别:ext2 --- ext3 (相对之间的性能要好些)检查有检查日志(时间快)效位(时间慢)其他常见的文件系统.minix:古老的文件系统.msdos/fat:microsoft早年的文件系统.vfat:win95与win98采用的文件系统.ntfs:win2000使用的文件系统.iso9660:光盘使用的文件系统.ReiserFS/JFS:仍然在完善的带日志文件系统查看Linux支持的文件系统ls -l /lib/modules/'uname -r(系统核心版本号)'/kernel/fs查看当前Linux启用的文件系统:cat /proc/filesystems创建文件系统.如果我们需要使用一个分区用于存储文件,则我们要在这个分区上建立文件系统.常用的创建文件系统的工具:.mkfs- 可以用于创建各种文件系统,由-t参数指定例如:mkfs -t ext2 /dev/sda5.mke2fs- 创建ext2/3文件系统,支持指定block大小等功能例如:mke2fs参数:【-b】指定块的大小mke2fs -b 2048 /dev/sda5(ext2/ext3上块的大小最大是4096KB)【-i】更改索引节点大小mke2fs -i 1028 /dev/sda5(索引节点大小修改等同于修改索引节点数)【-N】指定创建索引节点数mke2fs -N 3000 /dev/sda5【-m】设定系统保留空间mke2fs -m 10 /dev/sda5 (保留10%)【-L】创建文件系统的同时设置卷标mke2fs -L data /dev/sda5 (查看卷标dumpe2fs /dev/sda5 方便挂载是使用卷标挂载)【-j】让系统给分区创建ext3文件系统mke2fs -j /dev/sda5使用文件系统.为了使用一个文件系统,往其中存读文件,用户需要先挂载该文件系统.挂载文件系统的指令时mount.语法:.mount -t 文件系统类型[其他参数] 设备挂载点mount参数1.-t 文件系统类型:用于指定挂载文件系统的类型,一般这个参数是必须的2.-o 参数:补充追加的参数3.ext2文件系统默认采用的参数:rw(代表对文件系统有读写的权限)、suid(代表允许使用suid)、dev(允许文件系统包括设备文件)、exec(允许文件系统里二进制的运行)、auto(允许自动判断文件系统共类型)、nouser(只允许超级用户挂载文件系统)、async(进行异步管理文件的改变)、user(允许一般用户管理文件系统)、ro(只读)、loop(用于访问回环设备及镜像的挂载)、remount(重新载入)例如:mount /dev/sda5 /opt --- (umount opt卸载用)mount -o ro /dev/sda5 (让分区变成只读)mount /dev/cdrom /mnt (挂载光驱)mount /dev/floppy /mnt (挂载软驱)mount -o loop,ro /var/boot.iso /mnt(挂载磁盘内的镜像文件)/etc/fstab.配置文件系统挂载信息.mount文件系统是若给出的参数不全,系统会从/etc/fstab中读取参数补完.系统启动会参考/etc/fstab中的配置项自动加载文件系统(vi /etc/fstab).也被fsck、dump、quotaon、swapon等程序使用当前挂载系统.用户可以通过直接键入mount后回车来检查当前挂载中的文件.用户也可以通过查看/etc/mtab文件来查看当前挂载中的文件系统.cat /proc/mounts文件查看卷标.由于设备文件名可能在硬盘结构发生变化时更动,因此Red Hat Linux对ext2文件系统使用卷标来挂载与卸载.卷标记录在ext2/ext3文件系统的超级块中.用户可以用e2label指令来查询与更改ext2文件系统的卷标卷标:(dumpe2fs -h /dev/sda5)例如:e2label /dev/sda5创建卷标e2label /dev/sda5 datamount -L data /opt 挂载文件系统卸载文件系统1.当一个文件系统使用完毕,用户应当卸载该文件系统2.umount指令用于卸载文件系统3.语法:umount [参数] 设备/挂载点4.一个正在使用中的文件系统不能被卸载例如:umount /dev/sda5umount /opt(挂载目录)文件系统维护1.fsck/filesystem check:用于检查与修复文件系统- e2fsck:检查与修复ext2文件系统2.系统在启动是自动会被检查3.tune2fs:更改ext2文件系统属性4.resize2fs:更改ext2文件系统的大小5.parted:更改多种文件系统大小fsck -y /dev/sda6 检测系统分区并自动修复tune2fs -j /dev/sda5 转化ext3文件系统并且里面原有内容不会丢失自动挂载1.系统通过autofs服务自动挂载文件系统- 需要后台的automount进程- autofs服务的开闭由/etc/init.d/autofs脚本控制2.主要应用于软驱与光驱等场合3.如果该设备一段时间没有被使用,autofs会自动卸载例如:设置自动挂载rpm -q autofs 安装套件才能使用自动挂载配置文件auto.master(设定总的自动挂载环境) / auto.misc(设定挂载设备)启动服务:service autofs restartLinux安装选项/;来源----------------------------------------图形方式安装:Linux或直接回车字符方式安装:linux text检测媒体:linux mediacheck援救模式:linux rescue跳过硬件检测:linux noprobe系统不支持SCSI以便安装SCSI驱动:linux dd安装大量linux:linux askmethod----------------.CD-ROM / DVD-ROM.FTP.NFS.HTTP.硬盘安装中的窗口切换在安装过程中,我们支持用Alt + Fn键来切换显示窗口:Alt + F1:安装对话框Alt + F2:一个bashAlt + F3:安装日志Alt + F4:与系统、核心相关的讯息Alt + F5:其他讯息,诸如mke2fs,grub的标准输出Alt + F7:X图形化显示关闭SELinux步骤:>查看服务状态:sestatus | more>更改selinux配置文件:vi /etc/sysconfi/selinux>更改为disabled状态计划任务linux的计划任务.linux系统支持一些能够自动执行任务的服务我们称其为计划任务:.at命令:指定一个时间执行一个任务.cron机制:根据一个时间表自动执行任务. anacron机制:在一个指定时间间隔错过后自动执行任务at命令.at命令:安排一个任务在未来执行.at命令需要系统后台有一个atd进程(开启atd进程服务:/etc/init.d/atd restart) .指令.at:安排延时任务.atq:查询当前的等待任务.atrm:删除等待任务.batch:以一个低优先级延时执行任务例如:chkconfig -- level 2345 atd on(自动启动进程)让系统在一分钟之后创建字符发送给tty2的任务:at now +1 min >echo "helo" > /dev/tty2>Ctrl + d 让系统发送字符给root/test.txt:at 00:55 >echo "this is test" > /root/test.txt >cat /root/test.txt (查看系统执行的任务) at 1:00 2011-01-10 > /sbin/shutdown -h now(关闭系统,创建计划任务时是以完整路径来执行的绝对路径) > Ctrl + d cd /var/spool/at(at 任务文件放置地) atq命令讲解:查询当前正在等待被执行的at任务:atq 以邮件形式发送at信息:切换用户-- at now +1 min >echo "hi bbk"(没有重定向) >Ctrl + d 以邮件形式发送创建任务信息命令行输入:mail 然后输入 1 batch命令讲解:考虑到系统负载时用batch batch >echo "hello" > /dev/tty >Ctrl + d atq (查看任务) atrm 工作号at命令的使用控制 .at命令的使用控制文件 ./etc/at.allow ./etc/at.deny .基于用户的使用控制at命令的控制流程>.用户---有at.allow文件---用户是否在at.allow文件中---(在)允许(反之不允许) >.用户---无at.allow文件---有at.deny文件---用户在at.deny文件中---拒绝(反之允许)来说>.用户---无at.allow文件---无at.deny文件---只有root用户才能使用at命令。

相关主题