Linux笔记
OS;操作系统 (operating system) ;用户和计算机之间的界面.
Device 设备 hardware 硬件 UNIX诞生于1969年 linux诞生于1991年初
Unix分为两部分; 1.ATT用于商业 2.BSD教学 (伯克利大学发行版本)
常用的操作系统; windows unix linux apple(mac)
(1) 1969年;小型文件系统(unics)
(2) 1973年C语言 unix open source
(3) 1977年 BSD
(4) 1979年, 版权, copy
Hacker(黑客) free(自由) cracker (骇客)
1969年之前; MIT , GE , BELL, multics 计划
FSF;自由软件资金会, GPL;通用公共许可证, GNU 不是UNIX
OS=kernel(内核)+用户软件 AT&T(美国电报电话公司)
Linux特点;
(1) 开放性的系统.
(2) 多用户多任务的系统
(3) 具有可靠的系统安全性
(4) 提供了丰富的网络功能.
(5) 提供标准兼容性和可移植性
(6) 提供了良好的用户界面.
Kernel (内核)和版本; 版本号有三个数字组成;r x y
-r 目前发布的kernel版本
-x 偶数;稳定版本. 奇数;开发中版本
-y 错误修补的次数.
Linux发行版本套件;
Linux发行套件( distribution)以上mux kernel核心. 搭配各种应用程序和工具. .
常见的linux distribution
中文版;红旗linux ubuntu linux 中文版 thizlinux 麒麟linux
国外版; REdhat linux mandr ake linux suse linux ubuntu linux debinan GNU/linux
安装LINUX;
安装LINUX有两种;
一种;文本下的LINUX 另一种; 图形下的LINUX
Boot启动
硬盘的表示方法;IDE /dev/hd (a-d)4 SCSL硬盘;SATA硬盘 /dev/sd (a-P)16
一般主板上有两个IDE接口,一共可以安装四个IDE设备。主IDE上的两个设备分别对应hda和hdb,第二个IDE口上的两个设备对应hdc和hdd。
SCSI接口设备是用sd命名的,第一个设备是sda,第二个是sdb。依此类推
Devile(设备)分为;HD, SD
一块硬盘可以分四个主分区.扩展分区也被当作一个主分区所以第一个逻辑分区就是had 5
LINUX是一个树型结构.
LINUX下硬盘的表示方法;
/dev/hda 第一个分区表示为; /dev/had 1
/dev/had 第二个分区表示为; /dev/had 2
软驱表示; /dev/fd0 光驱表示; /dev/cdrom U盘表示; /dev/sd (a.b …..)
目录结构及目录路径;
Linux的标准文件系统;
1./ROOT的主目录.
2./DEV目录中包含大部分都代表实体设备的特殊文件
3./ETC目录中存放与主机的配置和设备有关文件,如用户密码,组,SHELL等设备文件.
4./LIB目录存放执行/BIN及/SBIN目录下可执行文件所需的函数.
5./BIN存放可执行的二进制文件,很多基本LINUX命令都在这里.
6./ sbin 存放在ROOT才有权使用指令程序.负责启动及恢复系统的文件.
7 ./USR存放很多系统指令,这些存放在文件可以被氖主机或网络上的用户读取,通常会被除系统载入为只读.
8.VAR放一些系统记录.暂存数据的地方.
9./HOME通常是用户的主目录.
LINUX的目录树;
1./bin bin 是binary 的缩写。这个目录是对UNIX 系统习惯的沿袭,存放着使用者最经常使用的命令。例如:cp,ls,cat。
2./boot 这里存放的是启动LINUX 时使用的一些核心文件。
3./dev dev 是device(设备)的缩写。这个目录下是所有LINUX 的外部设备,其功能类似DOS 下的.sys 和Win 下的.vxd。在LINUX 中设备和文件是用同种方法访问的。例如:/dev/hda 代表第一个物理IDE 硬盘。
4./etc 这个目录用来存放所有的系统管理所需要的配置文件和子目录。
5./home 用户的主目录,比如说有个用户叫wang,那他的主目录就是/home/wang 也可以用~wang 表示,说到这里,打个岔,你现应该明白在我们访问一些个人网页(如)的时候,~zhangjia就是表示访问 站点中的用户zhangjia 的用户主目录。如果这个网站的操作系统是LINUX,那就是表示/home/zhangjia。
6. /lib 这个目录里存放着系统最基本的动态链接共享库,其作用类似于Windows 里的.dll 文件。几乎所有的应用程序都需要用到这些共享库。
7./lost+found 这个目录平时是空的,当系统不正常关机后,这里就成了一些无家可归的文件的避难所。对了,有点类似于DOS 下的.chk 文件。
8./mnt 这个目录是空的,系统提供这个目录是让用户临时挂载别的文件系统。
9./proc 这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在内存里啊!
10. /root 系统管理员,也叫作超级权限者的用户主目录。当然系统的拥有者,总要有些特权啊!
11./sbin s 就是Super User 的意思,也就是说这里存放的是一些系统管理员使用的系统管理程序。
12./tmp 这个目录不用说,一定是用来存放一些临时文件的地方了。
13./usr 这是个最庞大的目录,我们要用到的很多应用程序和文件几乎都存放在这个目录下。具体来说:
(1)/usr/X11R6 存放X-Windows 的目录;
(2)/usr/bin 存放着许多应用程序;
(3)/usr/sbin 给超级用户使用的一些管理程序就放在这;
(4)/usr/doc 这就是LINUX 文档的大本营;
(5)/usr/include LINUX 下开发和编译应用程序需要的头文件,在这找;
(6)/usr/lib 存放一些常用的动态链接共享库和静态档案库;
(7)/usr/local 这是提供给一般用户的/usr 目录,在这安装软件最适合;
(8)/usr/man man 是什么,对了是帮助。这里就是帮助文档目录啊!
(9)/usr/src LINUX 开放的源代码,就存在这个目录,爱好者们别放过哦!
/var 这个目录中存放着那些不断在扩充着的东西,为了保持/usr 的相对稳定,那些经常被修改的目录可以放在这个目录下,实际上许多系统管理员都是这样干的。
注;系统的日志文件就在/var/log 目录中.
管理---网络---双击活跃;配置网卡
打开终端的六种方法;
1. 右键打开终端.
2. 应用程序----附件----终端
3. ALT+F2 键入KONSOLE
4. ALT+F2 键入RXVT或XTERM
5. ALT+F2键入 gnorne-terminal
6. init 3登录进入终端
ctrl+shift+t 同时打开多个终端 ctrl+shift+n 打开一个全新终端
命令;
命令-选项---参数
LS -L 查看当前的目录下列表. List 列表 dir 查看文件列表
long 长期
Pwd 查看当前工作中的目录 print 打印 working 工作 directory目录
Cd 进入当前的用户的家 cd~进入当前用户的家
Cd .表示当前的目录 cd..表示上一级目录 cd -切换到上次操作的目录
Cd /“home” 进入目录 cd /root/desktop 绝对路径
Cd desktop/ 相对路径
关机;
Shutdown -h now 、 init 0 、 halt、 poweroff 、 shutdown -k 假关机
重启;
Shutdown -r now 、init 6、 reboot、
Exit退出当前终端;
Init 5 图形 init 3 文本 ctrl+c 取消
文本下使用; login 登陆 logout 退出
添加用户;Useradd 用户名 adduser 用户名
给用户设置密码; Passwrad 用户名
Date 修改时间表; 月 日 小时 分 年
终端; 键盘和显示器全称为终端也称控制台。
常用命令;
Clear 清屏 cal 列出日历信息 mkdir 建立一个新目录 rmdir 删除一个目录
Touch 创建空文件 cat 查看文件内容 tca 反向查看文件内容
查看文件内容格式;cat **| more /less ---q (退出)
Rm -r 删除目录 rm -rf 强制删除 mkdir -p 创建多个文件夹
Cp 源文件 目的文件 -----复制
Cp -r 源文件 目的文件 ------复制整个目录
Mv 源文件 目的文件 ---------移动
Ctrl +l 清屏 ctrl +c 中断 ctrl+d =exit 退出
注;在同目录下文件夹和文件重名的只能存在一个内能选择最先创建的.
命令 > 文件名 -------重定向 命令>>文件名 -------追加
Head 头 tail 尾
Ls -a 显示所有 touch .文件名 <------创建隐藏文件
Ls -l ===ll 查看文件
Linux 中的帮助命令;
命令 - - help ----- 帮助
Man 命令 ----- 册子
Info 命令 ------ 详细信息
Linux文件显示;
绿色代表可执行文件 红色表示压缩文件 浅蓝色表示链接文件
灰色表示其他文件 黄色表示设备文件 白色红背景表示链接失效
Linux 中的文件类型;
D 目录 i符号链接 s 套接字文件 B块设备文件 C字符设备文件 P命名管道文件 -普通文件
常用网络命令;ifconfig route ping
Ifconfig 显示网卡设置 ifconfig -a 显示系统中所有网卡设备
Ifconfig eth0 ip地址 netmask 子网掩码 <---------设置IP地址
Ifdown ech0 关闭设备 ifup ech0 开启网卡
Route 显示路由信息
Route add default gw IP地址 netmask 子网掩码 eth0 ------设置网关
Route del default gw IP地址 netmask 子网掩码 ------删除网关
Ping ip地址 -c “次数”
* 任意多个 ~ 家 ? 任意一个
注;Rm -rf 0801b/* 删除目录以下的,目录不删除.
用户和组管理
1. 相关文件
a. /etc/passwd //保存用户信息
1.用户名 2. 密码标识位 3. uid 4. gid 5 . 备注信息 6. 家目录 7. shell
b. /etc/shadow //保存用户密码
c. /etc/group //保存组信息
1. 组名 2.密码标识位 3. gid 4. 组成员
2. UID GID
3. 创建用户
useradd <参数> 用户名
-u: //指定UID
-g: //指定GID
-d: //指定家目录
-c: //设置备注信息
-s: //指定所用的shell
3. 修改用户信息
usermod <参数> 用户名
-u: //修改用户UID
-g: //修改用户GID
-d: //修改用户家目录
-s: //修改用户shell
4. 设置用户密码
passwd <参数> 用户名
-d: //删除用户密码
-l: //锁定用户帐号
-u: //解开上锁的帐号
-S: //列出用户密码的相关信息
5. 删除用户
userdel 用户名
-r: //在删除用户时将家目录一起删除
6. id 用户名 //查看用户uid. gid. 归属组等信息
finger 用户名 //查看指定用户的详细信息
7. groupadd 组名 //创建组
8. gpasswd -a 用户名 组名 //将用户加入到组中
9. gpasswd -d 用户名 组名 //将用户从组中删除
10. groups 用户名 //查看用户所属的组
11. groupdel 组名 //删除组
文件权限;
权限分为三大部分; 属主(u), 属组(g), 其它(O),
R;读 W;写 X;执行 -;没有
权限的意义; 执行LS-L或LS-A命令时所显现的结果,最前面的2-10个字符用来标示权限,第一个字符一般用于区别文件和目录;
d;表示这个目录 -;表示一个普通的文件 L;一个符号连接的文件,实际上它指向另一个文件
b.c;分别表示区块设备和其它外围设备是特殊类型的文件 . S.p这些文件关系到系统的数据结构和管道.
用数字表示权限; RWX合起来就4+2+1=7 一个RWXRWXRWX权限,权限全开的文件用数字表示就是777;而完全不开放权限的文件---它的数字标示则为000.
文件权限的管理;
Chmod指令可以改变或目录的权限模式.只有文件或目录 的所属用户或root能改变权限.
格式; chmod [option] [who] [opcode] [permission] [filel]
参数说明; option说明;
--version;指令的版本信息. -help;显示指令的说明. -R;连同该目录下的子目录用文件一并更改.
Chmod; who;要改变权限的用户. u;属用户, g;所属组. O;其它用户. a(all)所有用户.
Chmod;opcode.代表权限的修改方法; +;增加权限 -;删除权限 =;分配权限,同时将原本的权限删除.
Chmod示例;
Chmod u+x file 对file文件增加执行权限.
Chmod u=rwx. g=r.file删除用户的执行写入,只读权限.所属组为只读权限.
Chmod o-x.file 取消其他用户的执行权限.
Chmod a=rw*.conf 为当前目录下所有的*.conf文件设置为读取和写入权限.
用户权限的管理;
作用;改变所有权,可以改变文件或目录的所属用户也可以改变所属组,可以改变多个文件或目录的所有权,只有root或文件所属用户有权,改变.
格式;chow [option] [new user][.newgroup] filel
Option参数;
-c;显示改变的信息. -R;连同该目录下的子目录用文件一并更改. -v;显示所有权的改变. - version;指令的版本信息.
Chown:属组 文件名 chown. 属主:属主 文件名
组权限的管理;
作用;可以改变文件或目录的所属组,且可以改变数个文件或目录的所属组.
格式;chgrp [option][newgroup]file
Opetion参数; -c;显示改变的信息. -v;显示所有权改变信息. -R;连同该目录下的子目录及文件一并更改. -help;显示帮助信息. -version;版本信息.
磁盘分区;
格式;fdisk [参数设备] 作用;实现磁盘分区.
参数;-L;显示计算机中所有硬盘或指定硬盘的信息.
例如;fdisk -L 显示系统中所有硬盘的信息.
Fdisk -L /dev/sdb 显示计算机磁盘的信息
使用fdisk 分区;
Fdisk /dev/sdb
a;切换是否可以开机 m;列出功能菜单 n;增加新的分区 d;删除一个分区
p;列出现有的分区表 q;不储存离开 t;改变分区类型 l;列出已知的分区类型
u;切换显示单位 w;将设置结果写入并退出 x;一些更深入的功能专家菜单
硬盘格式化;mke2fs mkfs
Mke2fs 选项 设备名
Mkfs的使用;mkfs -t 类型 设备名
Mkfs .类型 设备名.
挂载mount;
Mount命令挂载外部存储设备.
Mount -t 文件类型 -O 选项 设备挂载点
卸载;umount 设备 或 挂载点
例; 挂载硬盘; mount /dev/sdb1 /home/ftp
卸载硬盘; umount /dev/sdb1 或 umount /home/ftp
挂载光驱; mount -t iso9660 /dev/cdrom /mnt/cdrom
挂载软驱; mount /dev/fd0 /mnt/floppy
使用ISO文件挂载;
Mount -o loop /dev/*.iso /mnt/iso
永久挂载; vim /etc/fstab
/dev/sdb2 /mnt/sdb2 ext3 defauls 00
设备名 挂载点 类型
Df显示磁盘的相关信息.
Df -a; 显示全部的文件系统
Df -t 文件类型 ; 显示指定文件系统的类型
Df -T; 显示文件系统的类型
Df -H,以可读性较高的方式来显示信息
Du;显示指定的目录或文件所占用的空间 -s -h -H
使用卷标挂载;
添加卷标名;e2label /dev/sdb2 test
使用卷标挂载; mount LABEL=test /mnt/sdb2
从光盘制作ISO文件;
Cp /dev/cdrom myiso.iso
从目录文件制作成ISO文件;
Mkisofs -r -o myiso .iso /home
Mkisofs -r -o myiso.iso /etc/yp.conf
软硬链接;
链接是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法;
Linux包括两种链接.硬链接(hardlink)和软链接(softlink)软链接又称为符号链接(symbolic link)
创建链接;ln -s 源文件 目标文件
创建链接ln 源文件 目标文件
系统文件查找与压缩;
Whereis 相关文件 which 路径
Locate 文件名 updatedb 升级数据库
Find 范围 -name 名字
-type 类型
-user 用户名
-group 组名
压缩与解压缩;
Gzip 文件名 ---------压缩 gzip -d 文件名 ------解压缩
Bzip 文件名 -------- 压缩 bzip -d 文件名 --------解压缩
打包;
Tar -cvf 文件名.tar 源文件名 打包原文件保留
解包;
Tar -xvf 文件名.tar -C 指定路径
打包压缩相结全;
Tar zcvf 文件名.tar.gz 原文件名
Tar jcvf 文件名.tar.bz2 原文件名
解打包压缩;
Tar zxvf 文件名.tar.gz -C 指定路径
Tar jxvf 文件名.tar.bz2 -C 指定路径
Rpm安装文件格式;
Rpm -ivh 安装文件 rpm -e 安装文件 ----- 删除
Rpm -q 查讯 -qa -ql rpm -ivh 安装文件 -----------升级安装文件
源代码安装软件;
安装mplayer
tar jvxf mplayer-20070814.tar.bz2
cd mplayer-20070814
编译apache
./configure --prefix=/usr/local/mplayer
make
make install
安装apache
tar zvxf httpd-2.2.6.tar.gz
cd httpd-2.2.6
mkdir /usr/local/apache
编译apache
./configure --prefix=/usr/local/apache
make
make install
测试Httpd软件;
• 启动apache
• service httpd stop
• /usr/local/apache/bin/apachectl start
• 然后用firefox,。
二进码安装软件;
复制;cp realplay.bin./
安装realplay软件包; ./reallay.bin
LVM; partprobe 刷新
Pvcreate 新建;pvcreate /dev/sdv[]
Vgcreate 新建;vgcreate 名子 /dev/sdb[]
Lvcreate 建立; lvcreate -l **G -n 卷组名
Mkfs.ext3 /dev/0801b/名子 格式化
查看 ; ****scan ****display
扩展; vgextend 名子孙/dev/sdb[]
Lvextend -l +**G /dev/080b/名子
***remove /dev/ -----删除
Vgredale 减少 history 历史
PV;物理卷 VG;卷组 PE;物理扩展 LC;逻辑卷
磁盘限额; vim /etc/fstab
Usrquota,grpquota rpm -q quota 查看 安装情况
Mount -o remount /home
Quotacheck -cvg /a/home 检查并升级数据库
Quotaon -ugv /a/home 进启磁盘限额
Quotaoff -ugv/a/home 关闭磁盘限额
Edquota -u/g 为指定用户分配磁盘空间和节点数量
Quota 用户名 查看 用户的配额情况,
Quota 默认为7天 宽限期
Edquota -p 模板用户 复制过后的用户
Dd if=/dev/zero of=文件名 测试
Redquota -aug 以报告形式列出用户和级限制
Edquota -t 修改宽限期
系统管理; vim/etc/grub.conf
Password 密码 设备明文密码
Grub-md5-crypt 密码 设备密文密码
Grub-md5-crypt>>/etc/grub.conf
Vim/etc/grub.conf
Passwd 密文密码
Linux系统启动顺序;
升级----bios----grub----kernel----init----inittab-----登陆
一. linux启动流程
1. post 2. gru 3. /sbin/init//执行系统中第一个进程,读取/etc/inittab文件内容
4. /etc/rc.d/rc.sysinit //执行系统中第一个脚
该文件有以下作用:
a: 设置网络环境
b: 载入内存设置/proc
c: 决定是否启动Selinux
d: 加载模块
e: 设置系统时间
f: 清除启动时的临时文件
g: 将启动相关信息加载到/var/log/dmesg 文件中
5. /etc/rc.d/rc.local //系统启动时执行的最后一个文件
二. /etc/inittab文件格式:
ID:runlevels:action:process
ID: //在文件中唯一标示一个配置记录,由1-4个字体组成
runlevels: //指定该记录在那些运行级别中执行
action: //运行条件
action设置参数有如下
initdefault: //表示默认的运行等级设置值
sysinit: //表示系统初始化的操作项目
ctrlaltdel: //三键组合是否可以重启系统
wait: //表示后面命令必须要执行完毕,才能继续以下的操作
respawn: //表示后面接的init仍会重新启动
process: //运行命令
服务启动状态和配置命令
1. chkconfig 服务名 on //将该服务设为开机自动启动
2. chkconfig --list 服务名 //查看该服务在各个运行级别下的启动状态
3. chkconfig --level 0123456 服务名 on/off //设置该服务在各个运行级别下的是否启动
4. chkconfig --del 服务名 //将该服务从启动列表中删除
静态查看;ps ps-e ps-aux ps-efl
动态查看;top
Kill 进程号 停止进程,终止进程 kill -9 进程号 强制杀进程
Killalll 程序名 全部终止
进程优先级;数越小优先组长越高 nice 优先级 程序名
Renice 优先级 进程号 ctrl+z挂起 jobs 查看挂起
Fg 转入前台 bg转入后台 &直接转入后台运行 kill %作业号 结束进程
计划任务;
进行一次的工作任务分配:at
1. shell> /etc/init.d/atd start
2. at工作的控制
/etc/at.allow和/etc/at.deny //一般创建/etc/at.deny,除该文件中包含的用户之外的所有用户都可以创建任务。
3. at 语法 shell> at TIM TIME格式:
ex> 12:30 ex> 12:30 2008-8- ex> 04pm December 3 //12月3日下午4点HH:MM[am|pm] + number [minutes|hours|days|weeks]
ex> now + 5 minutes //从现在开始在5分钟
ex> 04pm + 3 days //3天后的下午4点
4. 示例
shell> at now + 5 minutes
at> /bin/sync
at> /sbin/shutdown -r now
5. shell> atq //查看系统中所有at任务列表, 所有任务保存在/var/spool/at目录
shell> atrm jobnumber //删除一个任务
二,循环执行的例行命令:crontab
1. crontab 语法
shell> crontab [-u username] [-l|-e|-r]
-u: 指定用户名
-e: 编辑crontab工作内容
-l: 查看crontab工作内容
-r: 删除crontab工作内容
2. /etc/cron.allow和/etc/cron.deny //allow优先deny
3. /var/spool/cron //目录中记录建立好的工作任务
/var/log/cron //文件中记录了cron执行的每一项任务
4. 示例
(1) shell> crontab -e -u user01
分 时 日 月 周 命令
59 23 1 5 * /bin/mail tom < /home/bob/love.txt
//五月一日23:59给tom发邮件
(2) shell> crontab -e
*/3 * * * * /sbin/shutdown -h now -k "hello"
//每3分钟执行shutdown -h now -k "hello"执行这个命令
(3) shell> crontab -e
20 8-10 * * 5 mail tom < /home/bob/love.txt
阅读(642) | 评论(0) | 转发(0) |