Linux Notes——基础知识篇(包含一点点SUSE的内容,大部分通用)

备考SLA考试时记录的笔记,网络配置部分没记下来,内容实在是太多啦~~~~
本篇适合者:平常有用一点点Linux,还把Linux的书籍囫囵吞枣地过了一遍,可是啥也没记住,那就正好看这篇理一下思路吧!
笔者心得:好系统是值得我们花时间去研究的,回报也是百花齐放的开心啊,在此,祝大家看得开心~
 
 
文件系统
关键词:速度、日记
查看支持的文件系统格式:cat /proc/filesystems
 
传统文件系统: 不记录数据或元数据{ext2 速度快,无日记    MS-DOS/VFAT      miniX }
日记文件系统:提前记录变化到日记中,记录数据元数据{ext3 默认文件系统 速度快 日记 伸缩性不好     ReiserFs目录文件元数据 大量小文件              XFS 高级快速日记恢复       NTFS}
虚拟文件系统
 
linux文件系统特征:inode
数据和管理信息分开。
128字节
包含除了文件名外的信息:大小 权限 拥有者 修改时间等
 
ext2文件系统
磁盘分区的文件数量是由inode的密度决定的,一般4096字节(4K)对应一个inode,但是文件小且大量时会浪费很多的空间。
分区的块有1024 2048 4096大小,只能在创建文件系统的时候指定。
相同大小的线性块链,由32768个块组成的块组。
引导扇区位于链的起始处,包含文件系统的静态信息:超级块(已用可用的块数量inode数量,访问时间,有效位),组描述符(其他区域的位置信息),块位图(块的可用已用信息),inode位图,inode表(文件信息、权限、时间、数据所在数据块的连接),数据块
 
ReiserFs
4096固定块的大小,保留实际需要空间,灵活快速访问,平衡二叉树
 
目录记录文件名及分配的inode数量
查看inode数量:ls -i
152page
创建硬连接:ln old new同一个分区,同一个inode
符号连接:ln -s old new不同inode
 
网络文件系统NFS
 
日记
数据 元数据保持一致
元数据:文件名 时间戳等信息
 
硬盘
第一硬盘     /hda
第一从属硬盘/hdb
第二硬盘     /hdc
第二从属     /hdd
第一scsi硬盘/sda
第二从属     /sdb
 
分区
第一个硬盘第一分区  /hda1
第二分区                    /hda2
第一个硬盘的第一逻辑分区 /hda5
逻辑分区从5开始
一般来说:
交换分区 /hda1
/分区     /hda2
/var  /home等一般是逻辑分区
除了交换分区、根分区(1G)外,在磁盘大于4G的前提下,可以设置以下目录:
/boot(20M)  /opt(20G) /usr  /var  /svr /home /tmp   附加分区
当然将/opt~/tmp等放置在独立分区上可以更好维护管理。
查看分区: fdisk -l
修改分区:fdisk  /dev/sda
命令有:d(删除分区) m(帮助) n(new  -e 建立扩展分区 -l逻辑分区) p(show) q(退出不更改) t(更改分区系统ID) w(保存退出)zhu
柱面 Hex代码
创建文件系统:mke2fs  mkfs.ext3  mkreiserfs
创建文件系统:mkfs -t ext3 /dev/sda6(指定类型,默认ext2)
参数:-b -i -j(块数,inode数,ext3日记)
%5的大小被管理员保留,95%可用
 
装入分区,指定目录
/etc/fstab显示已经装入的
/etc/mtab会随着卸载装入发生变更
/proc/mounts更可靠
查看当前装入的信息:mount 
mount /dev/cdxx /media/cdxx
umount /media/cdrecorder   umount /dev/hdb
 
卷组
卷组由一个或多个物理卷构成。
逻辑卷是卷组上的分区。只要卷组上有空间,就可以尽可能大的添加逻辑卷,数量没有限制。
磁盘用作物理卷,应该去除分区:dd if=/dev/zero of=/dev/hdd bs=512 count1
初始化LVM分区:pvcreate
查看物理卷:pvscan
物理卷之间数据的移动:pvmove
创建卷组并添加物理卷:vgcreate system /dev/hda9
vgextend添加更多的物理组
vgreduce去除未使用的物理卷(先vpmove数据)
vgremove去除卷组(前提是没有lvm)
创建逻辑卷组:lvcreate -L 100M -n data system
lvscan
lvextend
lvreduce缩小逻辑组前,必须缩小文件系统,否则丢失数据
 
RAID
 
 
PAM
 
 
SUSE介绍
 
SLED桌面:经过分发用作最总用户的工作站 opensffice
SLES服务器:用作服务器,含有apache DNS DHCP
GUI图形用户界面(方便,功能全,与其他系统相似 不安装则可靠、性能好)
CLI命令行界面
 
X窗口
X服务器 驱动程序 接受键盘鼠标的操作  与桌面窗口无关
客户端应用程序  自身的图形显示程序 接受服务器的操作处理信息
 
窗口管理器GNOME KDE
是客户端应用程序
GNOME图形桌面
由于可以由多个客户端串行连接到服务器口,所以有虚拟终端tty?
ctrl+alt+f?(1-6)      f7是图形界面GUI
 
 
帮助命令
 
man 1 crontab  查看其一般信息
5 配置信息 2系统调用 3函数与库 4设备文件
whatis显示所有可用手册页码
man -k 关键字(或apropos)会显示所有页面/usr/share/man
info查看,结构化的文档,可以直接连接调至某章节/usr/share/info
发行说明和白皮书/usr/local/doc
 
 
管理Linux文件系统
 
根目录/
根目录所在的分区是系统启动时第一个被装入的分区
/lib  /sbin  /dev  /etc  /bin必须与/同分区
FHS系统等级标准:顶级目录  二级目录(/usr  /var)
/bin 重要的二进制系统文件  在文件系统未装入前 需要启动的程序  例如 cp  dd rm 等
/dev 设备文件  字符顺序读入的例如磁带 打印机  块读入的 例如软盘
/dev/consle  控制台  /dev/tty0第一个虚拟终端 F1可打开
/dev/sda1  第一SCSI磁盘的第一个分区
/dve/null 零设备 用于重定向数据 成功写入操作中将不被其他程序需要的数据输入到此  会被删除
/boot  引导装载程序GRUB相关文件 备份信息 内核有关的分区信息
 
/etc 下包含的文件有:
initab init进程的配置文件  init.d/用于启动服务的脚本 modprob.conf内核模块配置文件  fstab 系统启动时自动装入的文件系统表
profile SHELL登陆脚本  passwd 用户数据库  group用户组数据库  CUPS/用户cups打印系统的文件  hosts分配激素啊你名称到ip地址
motd用户登陆后的欢迎信息  issue登陆提示前的欢迎信息  sysconfig/系统的核心配置文件
 
用户目录内的文件:
.profile 用户的专用登陆脚本
.bashrc 用于bash的配置文件
.bash_history 之前在bash中运行的命令列表
~寻址主目录
 
/lib库
共享调用函数,/bin  /sbin中的程序使用的库 内核模块(未编译入内核的的硬件驱动程序)/lib/modules
/usr下也有库
 
/sbin系统程序
shudown  fsck*  mkfs* fdisk  init初始化系统 yast
 
/usr 所有可执行的程序 图形界面文件 本地程序 共享文件
/var  所有系统的变量文件 可以修改 log  lib spool run lock
 
/proc 进程目录 无真实文件,不占用空间
每个进程有编号文件夹存放信息
1 为init程序
 
临时装入文件系统的装入点/mnt
mount  /dev/ha7 /mnt
装入时可以-t 指定文件系统格式
删除分区 umount /mnt
可以通过网络共享的目录有 /opt /usr /home
 
普通文件 
.
..
套接字()
链接
首进首出FIFO(两个进程交换数据,单向)
 
cd  变更到主目录
cd - 移动到最后有效目录
 
ls -a 显示含有隐藏文件
-u  最后访问时间排序
-R 递归输出
-F  含有符号表示文件类型 / * | @等
-t  按变更日期排序
 
pwd打印当前目录 -P  实际目录,非符号链接
touch创建文件或更改文件的时间(a访问时间 m修改时间 r t替换当前时间)
cat查看文件
head查看头几行
tail查看最后几行  -f(持续更新的最后视图)  -number(-10十行)
mv移动文件(-i  需要确认 -u只移动同名中更新的文件)
cp复制文件(-a 递归复制,不更改符号链接 权限 时间 -R -r递归 -s创建符号连接 -l 连接 -i 询问 -u更新)
rm删除文件(-i 询问 -r 递归删除整个 -f 强制删除只读不需要确认)
 
链接
ln old new硬连接
ln -s old new 符号连接
 
?*通配符
大小写区分
 
find命令
默认为当前目录
查找标准 -ctim(+-)天数不迟于/早于几天的最后一次修改的文件
-gid拥有gid
-group由groupid所属的
-name  含有通配符的时候需要有引号
操作:-print   -exec(;结束 加/ 表示)
locate=find -name  /var/lib/locatedb  updatedb修改此文件
whereis (-b二进制 -s源代码 -m手册)
which列出命令在PATH变量中的路径
type指出命令类型 外壳内建命令?外部命令?外壳命令调用别名?函数?
 
grep命令
选项-i不区分大小写 -r递归搜索整个文件系统树  -l仅仅显示文件名 -v不包含搜索内容的行 -n行号 -h不显示文件名
 
 
 
Linux外壳命令
外壳有 /bin/sh(/bin/bash) bash /bin/tcsh /bin/csh
bash外壳  Bourne Again
配置文件 ~/.bashrc
用户登录X窗口管理器时会登录外壳,其他仿真程序则是运行在非登录外壳
 
登录外壳时读取的文件:
/etc/profile所有外壳的配置文件
~/.profile每个新用户创建的文件 自定义配置
/etc/bash.bashrc  bash的配置 别名 颜色
自己系统范围内的配置 由 /etc/bash.bashrc.local来导入到/etc/bash.bashrc
~/.bashrc是用户自定义的配置
 
非登录外壳时读取的文件:
/etc/bash.bashrc
/etc/bash.bash.local
~/.bashrc
 
读取已经更改的文件信息 source 命令 或.命令
用户使用sudo时就是使用root的非登录外壳
 
history功能 主目录的.bash_history文件1000条 可以ctrl+r搜索
 
变量
定义外壳的环境变量,大写字母
常用的有:
PATH
HOME
USER
输出 echo $PATH
赋值  MYVALUE="my value"
 
别名
dir  ——    ls -l
md ——    mkdir -p
命令:alias md
md="mkdir -p"
系统范围内的别名 在 /etc/bash.bashrc文件中
用户自己的别名在 ~/.alias中 被 ~/.bashrc调用
unalias解除别名
 
locale获取本地化变量的列表
 
 
 
\ 字符不被解释
“”除了 $ ‘ \外不被解释
’ ‘全是变量
 
 
管道和重定向
标准输入stdin0
标准输出stdout1
错误输出stderr2
重定向 标准输入>  标准输出>(1>)  追加到文件>>  错误输出2>
进程通讯不仅可以在外壳使用 也可以在进程中使用
管道最多可以保留4KB的数据
tee 命令的输出显示在屏幕上并且被写入文件
程序执行结果 0  正确 大于0 错误
 
 
用户权限
 
用户和用户组
root用户 uid为0
普通用户uid从1000开化寺
每个用户被分到一个用户组
可以添加特殊工种的组中
 
id gee
可以显示uid  gid  以及所属的组的id
groups  自己组的信息
groups gee  该用户的所在组的列表
finger gee 查询该用户的名称、路径、外壳、上次登录等
 
所有用户存在/etc/passwd  和 /etc/shadow中
/etc/passwd中存储用户的名 uid 组 shell  完整路径等信息
/etc/shadow中存储密码 阴影密码 只允许root和阴影组查看
 
useradd新增用户
-m 自动生成主目录
-c注释信息
-u  指定uid
-g 指定gid
-e 指定密码的强制失效日期
passwd gee  添加密码
创建用户时,标准配置信息,例如主目录 有效组 默认外壳等将/etc/default/useradd  /etc/login.defs指定
passws -l 锁定账户 -u解锁 -S 列出当前状态
修改密码选项 -i 密码失效多少天后禁用账户 -n(设置更改密码前得最小天数)  -w(题型提前天数) -x(强制修改天数)
 
/etc/default/passwd 密码的加密方法
一般加密方法是DES   
blowfish
也有MD5
 
管理组
groupadd -g -p 加密密码
groupdel
groupmod -g修改gid  -n water old改名为water -A gee group1 添加用户
gpasswd更改组密码
newgrp 更改执行用户的有效组
 
登陆信息
/etc/issue登陆信息
/etc/issue.net从工作站登陆网络的信息
/etc/mod当天的初始信息
 
文件的许可权限或所有权
ls -l输出的是个字符首字符表示类型
-普通文件 d目录 l连接
 
 
权限修改chmod u g o 拥有者 组 其他
+ - 增加或去除
=有什么权限
-R 可以递归指定整个目录下的所有
 
 
 
chown更改文件的用户和组的属性
chown new-user . new-group file
中间是一个点
chgrp new-group file更改组 root和所有者都可以用(chown .new-group file 同)
 
文本编辑器
 
gedit图形化编辑器 可用于编写脚本和程序文件
openoffice.org write格式化的编辑器 大量无光格式数据 不建议用于编辑程序文件
 
vi编辑器 命令行编辑器
vim会通过链接启动
~表示不存在的行
kjhl(上下左右移动光标)
命令模式-->命令行模式-->编辑模式
在命令模式的选项操作有:
i 进入编辑模式 x 删除当前字符 dd 删除所在行并拷贝到缓存中 yy复制到缓存 D删除其余的当前行 ZZ保存并退出
GUN emacs是功能强大的文本编辑器 提供阅读新闻rss源  html文件 多编程语言文件 对比文件
 
安装包管理
 
 
 
libzypper管理引擎
产品 完整的产品
模式 特殊功能的包列表 字体颜色等
包  rpm格式 各种程序文件 已经安装的包的相关的存储包
增补程序 补丁或更新
 
satsovel
依赖性解析程序
 
RPM
安装RPM格式的命令:
cli命令行中 rpm zypper yast
gui图形界面中 YaST PackageKit
 
zypper
列出安装源 zypper repos
移除   zypper removerepos thereops
添加  zypper ddrepos   http://172.17.8.101 suse
查看安装包  zypper se gvim
安装  zypper in gvim
删除安装包 zypper remove gvim
 
RPM
RPM包管理器
数据库
格式:名称 版本 发型编号.体系结构.rpm
配置文件/usr/lib/rpm/rpmrc
为了使得更新命令后配置不丢失  需要改写 /etc/rpmrc   ~/.rpmrc文件
数据库
/usr/lib/rpm/文件夹下
重新构建数据库 rpm --rebuilddb
校验数据包的额签名
rpm --checksig package name
安装包
rpm -i pack.rpm
-F  更新包
-U 更新包 没有旧包会安装
更新包
配置文件发生更改则.rpmorig  .rpmsave
移除包
rpm -e
--nodeps强制删除
查询表
-q已经安装的包
-p查询存档 未安装
yast安装
yast -i pag 从安装媒体源ethereal中安装 自动解析依赖
yast -i pag.rpm不解析依赖
 
更新包
zypper up
zypper lp列出增补程序
zypper lu列出更新程序
 
rpm更新包
rpm -qp --basedo/
rpm -qPpl newpag.rpm
 
 
 
 
 
 
 
 
 
 
 

转载于:https://www.cnblogs.com/songmaoZh/p/3296824.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值