-
了解Linux内核版本;官网www.kernel.org ;
-
版本2.6.16,2为主版本,6为此版本,18为末版本;
-
开源软件:
apache
Nginx web服务器
开源软件特点:
使用自由,研究自由,散布改变自由
-
Linux应用领域:企业服务器,嵌入式应用;
-
在www.netcraft.com 可以查看网站服务器;
-
硬盘分区:在mbr文件系统中,只能有4个主分区,即使没有分这么多分区也会占用盘符,一般设置一个扩展分区,在扩展分区建立逻辑分区;
-
格式化的目的主要是写入文件系统;
-
数据块block,默认为4kb,存储的最小空间;
-
文件的id号innode,其他信息还有修改时间和权限;
-
对Linux写入文件系统两个步骤:分数据块,分区列表
-
硬件设备文件名:
SATA/USB硬盘 /dev/sd[a-p]
光驱 /dev/cdrom或/dev/hdc
打印机 25针 /dev/lp[0-2]
USB /dev/lp[0-15]
鼠标 /dev/mouse
-
挂载:
必须的分区: /根分区
swap分区
推荐分区: /boot 启动分区
-
localhost为主机名;
-
Windows局域网内主机不能同名,Linux可以;
-
ls -i 显示文件innode;
-
常用3中文件:普通文件,目录文件,连接文件;
-
ls -lh 加入h参数显示能让人一目了然的文件大小;
-
以.开头的文件为隐藏文件;
-
cp -a 相当于cp -pdr
-p 复制连带文件属性
-d 复制目录
-r 复制链接文件连带属性 -
/boot 启动分区
/bin /sbin /usr/bin /usr/sbin都是命令的存储目录 -
/etc配置文件;
-
/lib函数库;
-
/mnt 挂载目录,默认是空的;
-
/proc和/sys两个是内存挂载点,不能直接操作;
-
硬链接:相同的innode和存储block,可以看作是同一个文件,不针对目录;
-
软连接:建立软链接如果不在同一目录,必须写绝对路径,有自己的innode和block,只保存源文件的文件名和innode,没有实际的文件数据;
-
文件搜索命令:locate 文件名 在后台数据库按文件名搜索,搜索速度更快,会跳过一些目录下的文件,不能搜索到刚刚新建的文件,需使用updatedb更新数据库;
-
whereis 命令 显示命令所在路径和帮助文件路径,-b只看可执行文件,-m只看帮助文件;
-
whatis 命令 显示命令功能;
-
which 命令 查看命令及别名;
-
cd是shell内置的命令;
-
PATH环境变量定义的是系统搜索命令的路径,即常用环境变量的作用;
-
find [搜索范围] [搜索条件]
find -iname 不区分大小写
find /root -user root 按所有者搜索
-nouser 没有所有者的文件
find /var/log -mtime +10 十天前文件
10 十天前当天
-10 十天内
atime 文件访问时间
ctime改变文件属性时间
mtime修改文件内容时间
find / -size 根据文件大小
find / -innm 根据innode
-
grep -v取反 -i忽略大小写
-
man帮助命令,级别1,查看命令帮助,级别2内核调用函数,级别3,函数和函数库…;
-
info帮助命令,可以显示中文
-
gzip 源文件 压缩为gz格式,源文件会消失,保留源文件使用gzip -C源文件 >压缩文件
-
gzip -r目录 压缩目录下所有子文件,不能压缩目录,gzip -d或者gunzip解压缩;
-
bzip2 压缩文件 压缩为bzip2文件不保留源文件,bzip2 -k 源文件 保留源文件 -d解压缩
-
shutdown [选项] 时间 -c取消前一个关机命令 -h关机 -r重启
-
shutdown -r 5:30 & 放入后台,shutdown -r now
-
halt关机,reboot重启;
-
init 6重启;
-
系统运行级别:
- 关机
- 常用户
- 不完全多用户不含NFS服务
- 完全多用户
- 未分配,系统保留
- 图形界面
- 重启
-
在/etc/inittab 文件可以修改默认运行级别;
-
退出登录命令logout;
-
挂载命令mount 查看已挂载分区
-
fdisk -l 查看系统已识别的分区;
-
Linux默认不支持NTFS文件系统,挂载了也是只读;
-
w命令查看登录用户信息:
- user 登录用户名
- TTY 登录终端
- from 从哪个IP地址登录
- login@ 登录时间
- IDLE 用户闲置时间
- JCPU连接的用户所有进程占用的时间
- PCPU当前进程所占用的时间
- WHAT 当前正在运行的命令
-
who命令,命令输出:用户名,登录终端,登录时间;
-
last命令,用户名,登录终端,登录IP,登录时间,退出登录时间(在线时间);
-
Linux常用快捷键:CTRL
- +c强制终止当前命令
- +l清屏
- +a光标移动到命令行首
- +e光标移动到命令行尾
- +u把光标所在位置删除到行首
- +z把命令放入到后台
- +r在历史命令中搜索
-
历史命令history [选项] [历史命令保存文件]
- -c清空历史命令
- -w把缓存命令写入文件~.bash_history /etc/profile可修改最大条数
- !n重复执行第n条命令
- !!重复执行上一条命令
- !字串重复执行最后一条以字串开头的命令
-
标准输出重定向 >重写 >>追加;
-
标准错误重定向 2> 2>>;
-
">>"文件2>&1以追加的方式把正确输出和错误都保存在同一个文件中;
-
shell命令解释器,分类:C shell ,Bash
-
脚本执行:
#!/bin/bash #第一个shell脚本 echo "天上掉下个林妹妹"
-
脚本执行方式:
- 赋予执行权限,直接运行 chmod 755 *.sh ./**.sh
- 通过Bash调用执行脚本 bash *.sh
-
命令别名与快捷键
- alias 命令 查看已设置快捷命令别名,快捷键
- alias **=‘…’,设置快捷命令,暂时有效,永久有效需要修改~/.bashrc文件
- unalias删除别名
-
df 查看磁盘分区使用情况
- -l仅显示本地磁盘(默认)
- -h以1024进制显示容量
- 分区:mbr分区最多四个主分区,扩展分区不能存储数据,只能添加逻辑分区;
- 必须对磁盘进行分区,格式化,挂载后才能使用;
- MBR分区命令fdisk;
- fdisk
- -l 显示分区情况
- fdisk 需要分区的磁盘
- GPT分区最多可以有128个主分区,并且突破了每个分区不能大于2TB的限制;
- GPT分区命令parted;
- GPT分区不适合x86系统;
- 分区格式化使用mkfs命令;
- mkfs.exts /dev/sdb*或者mkfs -t /dev/sdb… 都是格式化,效果是一样的;
- 扩展分区不能格式化,只能格式化下面的逻辑分区;
- 分好区后必须挂载分区才能使用,一般挂载到/mnt分区;
- 先建立文件夹,mkdir -p /mnt/tal mount /dev/sdb1 /mnt/tal;
- 卸载umount /mnt/tal;
- 系统自动挂载需要修改/etc/fstab文件;
- 添加swap分区:
- 建立一个普通分区
- 修改分区类型的16进制编码
- 格式化交换分区 mkswap
- 启用交换分区 swapon
- free命令查看swap分区状况;
- swapoff停止swap分区;
- 用户和用户组的概念;
- /etc/group存储当前系统中所有用户组的信息;
- root用户组号0,用户创建的从500号开始;
- /etc/gshadow存储当前系统中用户组的密码信息;
- /etc/passwd存储当前系统中所有用户的信息;
- /etc/gshadow存储当前系统中用户的密码信息;
- groupadd sexy 创建用户组sexy;
- groupmod -n market sexy 修改sexy用户组名为market;
- groupmod -g 668 market 修改用户组编号为668;
- groupadd -g 888 boss 创建用户组号为888用户组名为boss的用户组;
- groupdel market删除market用户组;
- 删除用户组前需先删除组中的用户;
- useradd -g sexy sdf 向sexy用户组中添加用户sdf;
- 创建用户未指定用户目录系统会在home目录下创建用户名同名文件夹;
- useradd -d /home/*** tang 添加用户并指定用户目录;
- usermod -c dgdzmx sdf 修改用户注释;
- usermod -l cls sdf 修改sdf用户名为cls;
- usermod -d /home/cls cls修改cls的个人文件夹路径为cls;
- usermod -g sexy tan’g 将tang用户切换到sexy用户组;
- userdel jzmb删除用户未删除个人文件,要删除文件加上-r参数;
- 创建文件nologin可以禁止除root外所有用户登录,touch /etc/nologin;
- passwd -l cls 锁定cls用户;
- passwd -u cls 解锁用cls户;
- passwd -d cls 清除cls用户密码;
- 用户可以同时属于多个组,一个主要组,一个附属组;
- gpasswd -a cls boss为cls添加附属组boss;
- newgrp boss切换到附属组boss,需要输入组密码;
- gpasswd -a cls boss删除cls的附属用户组boss;
- useradd -g group1 -G group2,group3.。。。。。添加用户指定为用户组group1并添加附属组2,3.。。。;
- 设置tang组密码gpassws tang;
- su 用户名,切换用户;
- whoami我是谁;
- id 用户名 显示指定用户信息;
- groups 用户名显示用户所在的用户组;