linux基础知识
本课程共计43讲,内容包括Linux系统管理、Linux网络管理和LAMP环境搭建及管理三部分。课程学习可掌握Linux系统管理,包括服务器安装及部署、常用命令及使用技巧、文本编辑器Vim/Vi、系统引导流程、软件管理、用户和用户组管理、服务和进程管理、计划任务、文件系统管理与维护、Shell编程等;Linux网络管理部分,包括网络管理命令、网络配置文件、互联网寻址机制解析、远程控制管理、文件共享服务等; LAMP环境搭建及管理部分,包括LAMP环境搭建、Apache服务器配置与管理、FTP服务器配置、安全设置、典型互联网应用案例等。
学完本课程后,可配置和管理基于Linux架构的Web服务器及Linux各种应用服务器的日程管理工作。
-
IA(intel、AMD)运行在intel32位、64位的操作系统上面(linux BSD)
2.X-Window 是一种定义桌面环境的协议,独立于操作系统、网络特性。
3.http://www.netcraft.com/ 扫描域名的内容。
4.linux的分区,根分区/、SWAP分区是必须要有的,也可以自己设置一些其它分区如:user分区,这种分区是不会占用根分区的空间的,
5.GRUB引导程序是安装在/dev/sda,所有的系统都有引导程序。
6.DHCP自动设置IP地址。
7.密码设置:a、八位以上,大小写字母、数字、符号组合。b、要容易记忆:Am@ri31n;c、定期更换。
8.ol这是一块虚拟网卡,任何系统可以说都有这样一块网卡,是来进行本机测试用的127.0.0.1
9.Linux远程管理软件putty、SecureCRT
10.linux下设置新的IP地址 ifconfig eth0 192.168.8.1;添加回环网卡也叫虚拟网卡;

/:根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中
/bin:/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
/boot:放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可
/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount
/dev/cdrom /mnt。
/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。注:/etc/X11存放与x
windows有关的设置。
/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据
/lib:/usr/lib:/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules。
/lost+found:系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。如加载硬盘于/disk
中,此目录下就会自动产生目录/disk/lost+found
/mnt:/media:光盘默认挂载点,通常光盘挂载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。
/opt:给主机额外安装软件所摆放的目录。如:FC4使用的Fedora
社群开发软件,如果想要自行安装新的KDE 桌面软件,可以将该软件安装在该目录下l。以前的 Linux 系统中,习惯放置在 /usr/local
目录下
/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等
/root:系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。
/sbin:/usr/sbin:/usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用。
/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
/srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内
/usr:应用程序存放目录,/usr/bin存放应用程序,/usr/share存放共享数据,/usr/lib存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local:存放软件升级包。/usr/share/doc:系统说明文件存放目录。/usr/share/man:程序说明文件存放目录,使用
man ls时会查询/usr/share/man/man1/ls.1.gz的内容建议单独分区,设置较大的磁盘空间
/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件/var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动
文件命名规则:
1.除了/之外,所有的字符都合法。有些字符最好不用,如空格符、制表符、退格符和字符@#$&()-
等;避免使用.作为普通文件名的第一个字符;大小字敏感;
2.drwxr-xr-x 2 root root 4096 5月
4
05:25 bin
2-硬链接数 所有者 所属组 文件大小 创建时间或文件最后修改的时间 文件或目录名称
linux里面存储单位为数据块 block 512byte
r-read 读 、w-write 写 、 x-execute 执行
rwx r-x r-x
所有者u 所属组g
其他人o
user
group other
onwer
文件类型:
d 目录directory
-
二进制文件
l 软链接文件link
课程大纲:
命令 选项[-ald] 参数[文件或目录]
文件处理命令
ls -ald
-a
显示所有文件,包括隐藏文件(.)
-l 详细信息显示
-d
查看目录属性
cd[目录] / |..
pwd 显示当前所在的工作目录
touch[文件名] 创建文件
mkdir[目录名称] 创建目录 mkdir -p /media/cdrom 如果一个目录的父目录不存在,创建它(-p)
cp -R[文件或目录] 源文件 目地文件 [-R是目录]
mv[源文件或目录] [目的目录] 移动文件、更名
rm -r [-f强制删除] [删除文件或目录] rmdir 删除空目录
——————————————————————————————————————————————————
cat [文件名]查看文件内容
more [文件名]颁显示文件内容 more
/etc/services
(空格)或f 显示下一页
(Enter) 显示下一行
q或Q 退出
head -num[文件名]查看文件的前几行 head -20 /etc/servics
tail
-num[文件名]查看文件的后几行
-num 显示文件行数
-f 动态显示文件后几行
ln
-s[源文件][目标文件]产生链接文件 (软链接类似于window的快捷方式一样,硬链接相当于copy,但是同步更新的)
-s创建软链接
cp
-p [源文件][目地文件] 完全拷贝,同步更新;相当于硬链接;
ls -i
(i-inode)i节点 每个文件都有i节点,linux内核在处理文件时是找文件的i节点来操作的,硬链接和源文件被一个i节点映射,因此可以同步更新;
(硬链接不能跨文件系统【跨分区】)
硬链接基于inode实现,而软链接基于名称(或路径)实现;硬链接只允许用户创建链接到文件的硬链接,而软链接既可链接到文件又可链接到目录;硬链接不允许跨文件系统(因不同文件系统中的inode号可能相同),而软链接由于通过路径实现,所以可以跨文件系统。
权限管理命令
chmod [{ugo}{+-=}{rwx}][文件或目录]
改变文件或目录权限 chmod u-x
/test/one.info
[mode=421][文件或目录] [777]
文件和目录的权限是不同的
文件:r-cat、more、head、tail w-echo
>>、vi x-命令、脚本
目录:r-ls、 w-touch、mkdir、rm x-cd
chown[用户][文件或目录] 改变文件或目录的所有者 chown nobody file
chgrp[用户名][文件名或目录名] 改变文件或目录的用户组
umask -S
查看系统默认分配权限
0022 0-特殊权限位 022-用户权限位,权限掩码值 777-022=755
linux权限规则:缺省创建的文件不能授予可执行x权限
umask
[掩码值] 更改系统默认分配权限
————————————————————————————————————————————————————
文件搜索命令
which[命令名称]
显示系统命令所在目录||whereis[命令名称]也可以得到帮助文档所在目录
find[搜索路径][搜寻关键字] 查找文件或目录
find /etc -name
init *匹配任意字符 ?匹配单个字符
find /etc -size (+-
)文件大小 block数据块 512字节=0.5kb
find /etc
-user 文件所有者
时间查询:1、天ctime、atime、mtime 2、分钟cmin、amin、mmin (c:表示文件属性被修改过,所有者、所属组、权限
a:vi查看过 m:文件内容修改过)
find /ect -mmin
-120 (-之内、+超过)
{1.连接符 -a 逻辑与 -o 逻辑或 2.根据文件类型 -type f二进制文件
l软链接文件 d目录
(连接符 find..........-exec 命令 {} \;
find.....-ok(询问确认) 命令 {} \;)
find /home -user
samales -exec rm -rf {} \;
find /home -user samales -ok rm
-rf{} \;
-inum i节点 find . -inum 16 -exec rm {}
\;
}
find /etc -name init -a -type f -exec ls -l
{} \;
locate[搜索关键字] 寻找文件或目录 locate file
列出所有跟file相关的文件
updatedb 建立整个系统目录文件的数据库 可以和locate配合使用
新建的文件或目录不能及时更新到数据库中
要用updatedb来更新;
grep[指定字串][源文件] 在文件中搜寻字串匹配的行并输出
grep ftp /etc/services
帮助命令
man[命令或配置文件] 获得帮助信息 man 5 passwd (配置文件要单独写文件名)
info[命令或配置文件]获得帮助信息
和man没什么区别
whatis
apropos[任何关键字]获得索引的简短说明信息(makewhatis 建立whatis和apropos搜索使用的数据库)
【ls --help 只列出命令选项信息
apropos 配置文件】
help 查看shell内置命令的帮助 (就是man查询不到的命令)
makewhatis 建立whatis和apropos搜索使用的数据库,当使用这两个命令发生错误时,就是whatis database没有建立
——————————————————————————————————————————————————
压缩解压命令
gzip 选项[文件] 压缩文件 .gz文件格式 【1.只能压缩文件,不能压缩目录 2.不保留原文件】
gunzip
gzip -d 解压.zip文件
tar可以打包目录生成 .tar.gz 然后再打包
tar -zcvf newdir.tar.gz
newdir 将目录newdir压缩成一个打包并压缩的文件[-c产生.tar打包文件 -f压缩后文件名
-z打包同时压缩]
file[文件名]用来判断一个文件的类型
tar -zxvf dir1.tar.gz 解压缩
[-x解包.tar文件 -v显示详细信息 -f 指定解压文件 -z解压缩]
zip[选项][-r]压缩文件或目录
默认win和linux通用格式【保留原文件】
unzip [压缩文件]解压.zip的压缩文件
bzip2选项[-k][文件]压缩文件 压缩后文件格式:
.bz2 【产生压缩文件保留原文件】
bunzip2 选项[-k][压缩文件] 解压缩 【解压缩后保留原文件】
网络通信命令
write[用户名]向另一个用户发送信息 ctrl+d结束当前通话 是适时通信,必须在线(mesg y
打开message)
wall[message]向所有用户广播
ping[-c
num/-s 包大小]测试网络连通性 -c为发送包的次数 -s 发送包大小
ifconfig -a
查看网络设置信息 -a为所有网卡的信息
系统关机命令
shutdown -h now 系统关机命令
reboot 重启主机
Shell应用技巧
(bash)
命令别名
定义别名:alias
copy=cp alias xrm="rm -r"
删除别名:unalias copy
查询别名:alias
输入/输出重定向
>或>> 输出重定向
ls -l >
/tmp.msg
date >> /tmp.msg
< 输入重定向
wall < /etc/motd
2>错误输出重定向
cp -R /usr/backup/usr.bak 2> /bak.error
管道
将一个命令的输出传送给另一个命令,作为另一个命令的输入。
命令1|命令2|命令3......|命令n
ls
-l /etc | more
(wc -l[文件名] 统计一个文件里有多少行)
命令连接符
用;间隔的各命令按顺序依次执行
&&
前后命令的执行,第一个命令成功后,它后面的才执行
|| 前面命令执行失败后,它后面的命令才被执行
命令替换符
将一个命令的输出作为另一个命令的参数
命令1 `命令2`
ls -l `which touch`
命令补全命令,按<tab>键补全文件名
命令历史 history 把之前输入的命令全部列出
Linux常记命令:
ifconfig eth0 新IP地址
su - root||改变当前用户
clear ctrl+L 清屏
ctrl+U清除光标前面已经输入的内容
netstat -h 查看帮助
磁盘----->磁道、柱面、扇区---->>分区(块block)---->格式化为操作系统能够识别的文件系统格式---->>inode(文件的各种属性)、块(文件内容)
在进行分区时,每个分区就是一个文件系统。
硬链接或实际链接:两个文件同时指向一个inode节点
软链接或符号连接(快捷方式):会占用掉inode与块
浙公网安备 33010602011771号