您的位置:首页 > 运维架构 > Linux

Linux基础命令以及基础知识

2016-07-09 23:54 274 查看
uname -r 查看当前使用的Linux内核版本信息
cat/proc/cpuinfo 查看当前主机的CPU型号、规格等信息
cat/proc/meminfo 查看当前主机的内存信息
hostname 查看当前主机的完整名称
ifconfig eth0 查看第一块以太网卡的地址信息等
shutdown -h now 关机
shutdown -r now 重启
pwd 显示用户当前所在的工作目录位置
-------------------------------------------------------------------------------------------
cd 将用户的工作组目录更改到其他位置
. -当前的工作目录
.. -当前目录的上一级目录
~用户名 -指定用户的宿主目录,省略用户名时为当前用户
_ -上一次的工作目录
-------------------------------------------------------------------------------------------
ls 显示目录中的内容,包括子目录和文件相关属性信息

-l -以长格式显示,包括权限、大小、最后更新时间等信息
-a -显示所有子目录和文件,包括隐藏目录和隐藏文件
-d -显示目录本身的属性,而不是显示目录中的内容

-h -以K、M等单位显示大小,而不是默认的字节
---------------------------------------------
du         统计指定目录(或文件)所有磁盘空间的大小
-a        -统计时间包括所有的文件,而不仅仅只统计目录
-h -以K、M等单位显示统计结果
-s -只统计参数所占总大小,而非子目录,文件的大小
-------------------------------------------------------------------------------------------
mkdir 用于创建新的空目录
-p -一次性创建嵌套的多层目录
-------------------------------------------------------------------------------------------
touch 创建空文件
-------------------------------------------------------------------------------------------
ln 为目录或文件创建链接文件(类似windows的快捷方式)
-s -创建软连接
-------------------------------------------------------------------------------------------
cp 复制文件或目录
-f -覆盖同名文件或目录时候不进行提醒,直接强制复制
-i -覆盖同名文件或目录时候提醒用户确认
-p -复制时保持源文件的权限,属性及时间标记等属性不变
-r -复制目录时使用,表示递归复制所有文件及目录
-------------------------------------------------------------------------------------------
rm 用于删除指定的文件或目录
-f -删除文件或目录时不进行提醒,而直接强制删除
-i -删除文件或目录时提醒用户确认

-r -删除目录时使用,表示递归删除整个目录
-------------------------------------------------------------------------------------------
mv 指定的文件或目录转移位置,如果目标位置与源位置相同,则效果相当于为文 件或目录改名
-------------------------------------------------------------------------------------------
which 查找用户所执行的命令文件存放的目录
-------------------------------------------------------------------------------------------
find 查找文件或目录
-name -根据目标文件的名称进行查找,可使用“#”及“?”通配符
-size -根据文件大小进行查找
-user -根据文件是否属于目标用户进行查找
-type -根据文件的类型(f/d/b/c)进行查找
-------------------------------------------------------------------------------------------
linux发展史:
linux操作系统由内核和各种外围程序组成
内核(心脏):CPU分配,内存分配,进程调度,设备驱动等主要面向硬件方面
外围程序:分析用户指令的解释器,网络服务程序,图形程序等,主要面向用户

芬兰大学 李纳斯.托沃斯(Linus Torvalds)C
1991年linux 0.02版发布
1994年linux 1.0版发布
1996年linux 2.0版发布

目前最新的是RHEL7
吉祥物:(Tux)企鹅

linux内核版本:
uname -r 查看内核版本号

XX.YY.ZZ
XX 主版本号
YY 次版本号
ZZ 末版本号

YY 奇数 开发版,增加新功能
偶数 稳定版,修改错误

GNU项目与GPL,LGPL协议
GNU:编写大量兼容于UNIX系统的可自由传播使用的软件用来替换UNIX系统中的商业软件
GPL:通用公共许可证
源代码免费开放
可以执行,复制,在开发,学习,修改与强化自由软件
可以出售(附带技术支持和服务)
使用开源软件代码的软件必须遵循GPL规定
开源软件没有售后服务

LGPL:次级公共许可证
如果你对遵循LGPL的软件进行调用,而不是包含,则允许封闭源代码

Red Hat (红帽) 市场用户量最多的厂商

Red Hat Enterprise Linux (简称RHEL),在生产环境中可简称为 企6、企7,目前最新版本是RHEL7.x 6系列版本中最高的为RHEL6.6。
Fedora社区版由Red Hat资助的社区维护,定位于个人桌面用户,目前最新版本是Fedora 21
CentOS社区版Community Enterprise Operating System(社区企业操作系统),目前最新版本为CentOS 7.x

硬盘分区表示方法
/dev/[sh]d[abc...][123...]
/dev 所有硬件设备目录
hd---IDE硬盘
sd---SCSI硬盘(包括SATA)

硬盘号:
a---第一块硬盘
b---第二块硬盘
c---依次类推

分区号:
1-4代表主分区(包括扩展分区)
5代表第一个逻辑分区
6代表第二个逻辑分区
7依次类推

例如:第二块SCSI接口,第三个主分区 /dev/sdb3

linux使用的文件系统类型
EXT4 第4代扩展文件系统,用于存放数据(RHEL6)
SWAP 虚拟文件系统(交换分区),用于帮助物理内存缓解压力,可理解为,虚拟内存

EXT3 (RHEL5)
XFS (RHEL7)

Linux 支持Unix的JFS,也支持Windows的FAT32和NTFS(访问需要安装ntfs-3g软件包)

Linux的引导过程:
1、开机自检
BIOS(Basic Input/Output System 基本输入输出系统)
作用:
加电自检
初始化
引导操作系统(移交给硬盘)

2、MBR引导
位于硬盘的第0个磁道,第0个柱面,第1个扇区,大小为512字节
446:引导程序
64: 分区表(每个主分区占用16个字节)
2: 校验

3、GRUB菜单:配置文件位置:/boot/grub/grub.conf
default=0 #指定从第一个内核启动
timeout=5 #内核启动前的等待时间
splashimage=(hd0,0)/grub/splash.xpm.gz #指定背景图片位置
hiddenmenu
title Red Hat Enterprise Linux 6 (2.6.32-504.el6.x86_64) #指定系统启动标题
root (hd0,0) #用于指定/boot分区位置,指定内核文件位置,指定临时镜像位置
kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=/dev/mapper/vg_rhel6server3-lv_root rd_NO_LUKS rd_LVM_LV=vg_rhel6server3/lv_root rd_NO_MD rd_LVM_LV=vg_rhel6server3/lv_swap crashkernel=auto LANG=zh_CN.UTF-8 KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-504.el6.x86_64.img

4、加载Linux内核
预先编译好的二进制文件,介于硬件资源与系统程序之间,负责资源调度与分配

5、init进程初始化
程序位置 /sbin/init PID号永远等于1,是所有进程的父进程(始祖)
加载配置文件:/etc/inittab

Upstart 启动:
/etc/inittab #配置默认运行级别
/etc/sysconfig/init #控制tty终端的开启数量,终端颜色方案
/etc/init/rcS.conf #加载rc.sysinit脚本,完成系统初始化任务
/etc/init/rc.conf #兼容脚本,负责各运行级别的调用处理
/etc/init/rcS-sulogin.conf #为单用户模式启动/sbin/sushell环境
/etc/init/control-alt-delete.conf #控制终端下的Ctrl+Alt+Del热键操作
/etc/init/start-ttys.conf #配置tty终端的开启数量,设备文件
/etc/init/tty.conf #控制tty终端的开启

Linux 各运行级别概述:
0:关机
1:单用户
2: 多用户,不支持网络
3:完整多用户(字符模式)
4:未使用
5:图形
6:重启

id:runlevels:action:process
标记:运行级别:动作类型:程序或脚本

动作类型:动作类型字段描述了该行配置所对应的操作类别,一般为固定值
initdefault:设置初始化系统后默认进入的运行级别
sysinit:设置系统初始化的操作脚本
wait:init进程将等待该行配置所对应的脚本操作完成后,再继续执行其他操作
ctrlaltdel:设置当用户按下Ctrl+Alt+Delete组合键后的操作
powerfail:设置当系统收到断电信号(使用不间断电源)时采取何种动作
powerokwait:设置当系统收到恢复供电信号时采取何种动作
respawn:一旦该行配置所对应的进程被终止,则重新启动该进程

程序或脚本:指定该行配置所对应的实际操作,可以是具体的命令、脚本程序等

系统服务控制:
service 服务名称 控制类型
/etc/init.d/服务名称 控制类型

/etc/rc.d/init.d = /etc/init.d/

控制类型:
start:启动
stop:停止
restart:重新启动
reload:重新加载
status:查看服务状态

例如:
service sshd restart
/etc/init.d/sshd restart

查看并切换级别:
[root@localhost ~]# runlevel
N 3
N-------->上一次运行级别(N表示上一次没级别,S--------->1)
5-------->当前运行级别

改变系统的运行级别
init [0-6]

设置服务开机时的运行状态:

ntsysv --level 级别
提供一个交互式、可视化窗口/可以在字符终端运行/便于集中管理多个服务

例如:
ntsysv
ntsysv --level 35

chkconfig --level 0~6 服务名 动作(on/off)(下次启动生效)
不提供交互式、可视化窗口/管理单个服务效率更高

chkconfig --list 查看所有服务的状态

例如:
chkconfig 服务名 on/off
chkconfig --level 级别列表 服务名 on|off
chkconfig --level 2345 network on
chkconfig --list
chkconfig --list network

Linux服务控制方式:
1、独立管理方式
service network restart
2、集中管理方式
[root@localhost ~]# vim /etc/xinetd.d/rsync
disable = no
[root@localhost ~]# service xinetd restart

=================================================================================================
额外知识点补充:

安装系统时生成的文件:
/root/install.log #当前计算机中安装的所有的软件包
/root/anaconda-ks.cfg #当前计算机安装的指令

Linux系统基本操作
图形界面切换到字符界面(虚拟字符控制台 tty1-6)
ctrl+alt+(F2-F7)
从字符模式返回其他模式
alt+(F1-F7)

2、命令提示符
[root@localhost ~]#

root #表示当前登录用户
localhost #表示当前的主机名
~ #表示当前工作位置

# #表示当前登录用户为管理员
$ #表示当前登录用户为普通用户

Linux的目录结构
“/”
|
--------------------------------------------------------------------
| | | | | | | | | | | |
/root /bin /boot /dev /etc /home /var /lib /usr /media /tmp ……
| |
--------------------------------- -------------------------
| | | | | |
/root/Desktop /root/Maildir …… /usr/bin /usr/src /usr/local

/ 根分区 linux文件系统的起点
/bin 普通命令
/sbin 管理类的命令,只有管理员能使用
/home 普通用户的宿主目录(家目录) 例如:bob 用户的宿主目录为 /home/bob
/root 管理员的宿主目录
/boot linux启动所需的文件,内核,grub,内核引导文件
/dev 设备文件,硬盘,键盘鼠标,光驱等
/usr 存放应用程序相关文件 /usr/src:源码包的解压路径 /usr/local:源码包的安装路径
/opt 安装额外软件时的存放路径
/etc 配置文件
/var 存放可变的文件,日志文件,邮件等
/proc 虚拟文件系统(计算机内核的信息,CPU...)不占用硬盘真实空间,数据都在内存中
/lib 库文件,驱动
/selinux 美国国家安全属研发的安全机制
/tmp 临时文件存放目录(公共文件夹)
/media 挂载点 等同于 /mnt
/sys 系统相关文件
/srv 启动的服务需要访问的数据目录

基本命令
whoami #查看当前登录用户
uname -r #查看内核版本号
cat /etc/redhat-release #查看系统版本
cat /proc/cpuinfo #查看CPU相关信息
cat /proc/meminfo #查看内存相关信息

ifconfig eth0 #查看IP地址
ifconfig eth0 IP #设置IP地址

关机类命令:
init 0
halt
poweroff
shutdown -h now

重启类命令:
init 6
reboot
shutdown -r now

推迟关机:
shutdown -h +15 “The system in 15 minutes after the explosion”
取消:
shutdown -c && Ctrl+c

date #查看时间
cal [04] 2014 #查看日期
history #查看历史命令

cd #切换工作目录
ls #显示当前路径下的文件
touch #创建一个空文件
mkdir #创建一个目录
pwd #显示当前工作路径
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux