1、Linux简介
发行版本
Redhat 9
Linux内核 2.4 2.6
4大组成:内存、进程、文件、驱动
Linux------Windows
多用户、多任务--------------不是
shell
Xterm 终端
有2大 Linux图形环境
KDE---------Qt
GNOME-------Gtk++
echo $TERM ----查询当前 显示器的类型
//
1 Linux入门
1.1 什么是Linux
1.1.1 由四个组件组成
内核、GNU系统实用程序、图形桌面环境、应用软件----发行版本Linux的组成
1.1.2 内核kernel
1.1.2.1 内核功能组成
内存管理、进程管理、硬件管理(驱动管理)、文件系统管理
1.1.2.2 内存管理
虚拟内存:物理内存 交换空间
命令:cat /proc/meminfo
1.1.2.3 进程管理
内核创建第1个进程init
初始进程根据进程表,启动其它很多进程
命令:cat /etc/inittabs
运行级别:1 3 5
命令:ps ax
PID stat(R运行 S休眠 SW休眠并等待) 有[]的进程不活动已换出
1.1.2.4 硬件管理
在内核中插入设备驱动程序的方法
设备文件的种类: c、b、网络
内核与设备通信,通过设备节点来完成
命令: ls -al sda* ttyS* (硬盘、COM端口)
1.1.2.5 文件系统管理
内核使用虚拟文件系统(VFS)与每个文件系统进行连接。
挂载mount文件系统的概念:VFS在内存中缓存相关信息
ext ext2 ext3 msdos(FAT16) vfat(FAT32) ntfs
1.1.3 GNU系统实用程序
GNU组织:开源软件思想
1.1.3.1 GNU软件包
组成:处理文件 操作文本 管理进程
1.1.3.2 shell
默认是bash shell
1.1.4 图形桌面环境
Linux有多个图形桌面环境可选择
1.1.4.1 X Windows系统(不是桌面环境)
XFree86软件包:支持Linux
X.org软件包:支持Linux
1.1.4.2 KDE桌面(1996)
KDE项目开发的桌面环境和许多应用程序:Koffice Kmail
1.1.4.3 GNOME桌面(1999)
GNOME项目开发的桌面环境和许多应用程序:gedit epiphany(IE)
1.2 Linux发行版
将上述四个组件进行集成
2 shell
Linux早起,只能使用命令行方式进行操作
2.1 模拟终端包
图形界面下,一个模拟终端包可以模拟多个终端
2.2 Linux控制台
虚拟控制台有多个
2.3 xterm终端
古老
2.4 Konsole终端
KDE带的模拟终端
2.5 GNOME终端
3 基本的bash shell命令
3.1 启动shell
/etc/passwd 可查看启动的shell类型
启动时,自动执行用户主目录的.bashrc文件中的命令
/etc/bashrc文件 :环境变量
3.2 shell格式符
3.3 man命令-----可以查看 命令 的 帮助
命令: man bash
3.4 文件系统
无盘符概念、使用正斜杠
3.4.1 文件系统概述
虚拟目录
根驱动器:第1个硬盘
挂载点目录(mount point):
常见的Linux虚拟目录名称:如/mnt挂载目录
3.4.2 命令:cd
3.5 文件和目录的列表
ls -F -R
ls -l ls -il
3.6 文件处理
创建文件
touch sample
复制文件
cp test1 test2 cp -r参数 -R参数的区别
cp -f强制
链接文件(硬链接 软链接)
cp -l 或 cp -s
重命名文件或目录
mv
删除文件
rm -r
3.7 目录处理
创建目录
mkdir
删除目录
rmdir
rm -rf
3.8 查看文件内容
查看文件统计数据
stat
查看文件类型
file
查看整个文件
cat more less tail head
4 其它命令
4.1 监控程序
进程查看
ps ps -ef ps -l ps -efH ps -ef --forest
实时进程监控
top
停止进程
4.2 监控磁盘空间
挂载介质
mount umount
查看磁盘空间
df -h
显示文件或目录占用磁盘情况
du
kill PID号 killall 进程名
1.shell历史
有多种shell:sh csh ksh tcsh bash
查询系统已知shell: /etc/shells
设置默认shell: /etc/passwd
2 shell如何执行命令
2.1 执行交互式命令
shell的内建命令:即不创建新进程;
which查不到程序文件位置
没有man手册
如:cd为内建命令;cp为外部命令,会创建新进程,which可以查到
2 文件的权限
2.1 安全性
根用户账户 普通用户账户 系统用户账号
2.1.1 /etc/passwd文件
UID GID HOME目录 默认shell
2.1.2 /etc/shadow
存密码
2.1.3 添加新用户
先查默认值有哪些 useradd -D
useradd test
修改默认值
useradd -D -s(shell) -g(GID) -b
2.1.4 删除用户
userdel -r test
2.1.5 修改用户账户信息(不讲)
2.2 用户组
2.2.1 /etc/group文件
2.2.2 创建组
groupadd zu
将某个用户加入
usermod -G zu test
2.2.3 修改用户组(不讲)
2.3 文件权限
//
一、Linux简介
1 Linux与windows不同
1.1 windows内核包含了图形界面,MS自带系统实用软件/应用软件
1.2 Linux内核不包含
系统实用软件:GNU
应用软件:KDE GNOME
2. linux
GNU/Linux
开源开始流行
Ineternet出现了
3 Linux发行版本组成
3.1 内核
内存管理(虚拟内存:物理内存+交换空间swapp)
进程管理
硬件管理(外围设备)驱动管理
文件系统管理:磁盘文件/字符文件(键盘显示器)/块文件
3.2 GNU
UNIX,POSIX接口标准, GCC编译器 G++编译器 Emacs编辑器
3.3 图形桌面环境:KDE GNOME
X Windows: xFree86 x.org
3.4 应用软件
二、shell命令
1.概念
内核与用户间的一个接口,就象windows资源管理器
2 命令
2.1 更改目录
cd
2.2 查看当前目录
pwd
2.3 查看当前目录下的文件名
ls
ls pro*
2.4 新建立一个目录
mkdir mulu
2.5 新建立一个文件
touch aa.sh
2.6 编辑shell脚本
gedit aa.sh
第一行为 #!/bin/sh
其它行为 各种命令
2.7 修改aa.sh为可执行文件
chmod +x aa.sh
2.8 运行shell文件
./aa.sh
2.9 复制一个文件
cp aa.sh /home
2.10 删除一个文件
rm aa.sh
2.11 删除一个目录
rmdir mulu
2.12 光查看一个文件内容,而不编辑
cat aa.sh
2.13 查看当前shell窗口下的进程信息
ps
2.14 查看linux下所有的进程
ps -ef
2.14 查看动态进程
top
2.15 停止进程kill
ps -e
kill PID
kill -s HUP PID
kill -9 PID
2.16 查看磁盘空间
df
df -h
2.17 设备文件名和挂载点
mount
mount -t 文件系统类型 设备文件名 目录
umount 设备 或 目录
1 shell的种类
1.1 bash sh cshelll
1.2 查看用户的默认shell类型
cat /etc/passwd
1.3 linux支持那些shell类型
cat /etc/shells
2 登录shell
3 交互式shell
4.1 显示用户账号信息
/etc/passwd
4.2 增加用户账号
useradd
4.3 修改用户属性
useradd -D
4.4 查看用户组
/etc/group
4.5 创建组
groupadd group1
4.5 将某一用户移到另一用户组
usermod -G 组 用户账号
如何创建新用户liwei 和 chenqunfeng
useradd liwei
useradd chenqunfeng
创建新用户后,如何更改 新用户密码:
passwd liwei
根据提示,输入新密码即可
修改当前用户的密码:
passwd
根据提示,输入新密码即可
当前用户是 root,如何又登录到 liwei
su - liwei
没有密码要求,直接登录成功了
当前用户是liwei ,如何登录到 chenqunfeng
su - chenqunfeng
根据提示,输入chenqunfeng的密码
当前用户是chenqunfeng ,如何登录到 root
su - root
根据提示,输入root的密码
1 环境变量
1.1 概念
全局 本地
1.1.1全局环境变量
printenv
1.1.2 本地环境变量
set显示多了,减掉全局的就是
1.2 设置
设置本地环境变量
test=aaa
设置全局
export test
1.3 移除
unset test
1.4 默认的shell环境变量
PATH HOME
1.5 更改PATH
PATH=$PATH:.
1.6 定位系统环境变量
1.6.1 登录式shell的启动文件
会查找/etc/profile文件 /home/sunhong/.bash_profile
1.6.2 交互式shell的启动文件
/home/sunhong/.bashrc
1.6.3 非交互式shell的启动文件
先查看BASH_ENV环境变量
1.7 环境变量数组(不使用)
1.8 别名
显示 alias -p
3.1 全局环境变量
3.1.2 查看
printenv
3.1.3 增加
PATH_SUN=/root:/home:.:/mnt/cdrom
export PATH_SUN
3.1.4 echo的使用
echo "input data of int: "
3.1.5 chmod使用
chmod +x aaa.sh
3.1.6 文件权限
3.1.7 重定向
3.2 局部环境变量
3.2.1 查看局部变量
set
3.2.2 增加局部变量