以上是第五课和第14课笔记

linux 基本结构:

系统构成:kernel,Modules,Lib,(Shell,Tool)
系统引导:BIOS -> Bootlooder -> Kernel -> Modules
(Kernel+Modules组成内核空间) 之上就是用户这间(api,Glibc,Libs),之上才是应用程序(包括shell,kde,apache,tools等).

一般给内核添加驱动都是以模块(Modules)的形式加载的

Kernel一般位置(/boot/vmlinuz-2.6.9-22.EL),源代码可以在Kernel.org下载,第二个版本号为奇数的版本是测试版,偶数版本是正式发布版.

安全性上来说,linux和windows一样的,由于linux是开源的,可以从开源内核下手,或是通过software的源码下手,实现攻击,所以一定要注意linux的安全性,下载开源程序一定要去官方下载

版本查看 uname -a,发行版的内核一般都是经过发行厂商修复优化,并且加入了对一些硬件的支持的.

2.4内核是2000年发布了,这是一个标杆,已经可以供大家使用了,2.6是2003年发布的这个版本已经基本成熟了.

学习发行版本一定要精通一种,触类旁通.

Moudules,一般是在/lib/modulies/2.6.9-22.el/Kernel/
linux里xwindow是可有可无的,windows的gui是内核态的,内核态的东西才会蓝屏,是必须要启动的,xwindow是独立于内核外的,他是一个软件层的.

linux在GUI下CTRL+ALT+F1~F6都能呼出CLI界面,w程序可以查看当前系统有几个用户登录,tty实际上是一个虚拟终端.pts为动态终端,是根据接入动态生成的,CLI,tty可以用ALT+F1~F6切换,从CLI切换到gui可以直接用ALT+F7,gui默认占用pts/0-1

echo whatsfdsfs > /dev/tty2 可以重定向输出,重定么到别的终端输出

在CLI上如果想要启动window可以用startx,如果startx已经运行,要启动第二个可以用 startx -- :1,开启多gui依次startx -- :2.

可以用skill -9 pts/0 杀掉正在运行的pts/0终端

vi /etc/inittab 可以删除终端,发现centos下的这个文件和rhe6下的这个文件是不同的,没有tty这些设置,此文件的第一行是指定开机启动哪一个runlevels的,文本为下
------------------------------------------------------
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:3:initdefault:
-------------------------------------------------------

前面是注释,id:3:initdefault:为第一行,3为CLI,5为xwindow.

=============================================

初级系统管理命令:

1,hostname,显示/设置主机名
hostname sprite.sprite.com可以直接改主机名
用命令更改只是本次生次,要重启生效的话要改配置文件
/etc/sysconfig/network 里的HOSTNAME字段
这个文件里也可以改网关 GATEWAY

ifconfig eth0 192.168.0.33可以直接改ip,重启不生效
重启生效要改/etc/sysconfig/network-scripts/ifcfg-eth0(可以用工具更改比如netconfig,其实工具也是改配置文件的)

2,uname 显示版本,uname是unix一个通用命令,
-a 显示所有信息,-r 显示内核版本

3,id 显示当用户属性,uid,gid

4,date,查看当前系统日期和时间 后面跟 +%m%d显示月日,
shell下反引号括起来的字符串会被shell解释为命令行
touch `date +m%d%`.log 创建日期.log
cal 显示日历

5 file 显示文件类型,以及显示可执行文件的支持信息,压缩文件的生成信息等.

.6 mount /dev/sda2 /mnt/ 挂载,可以直接把设备挂载到目录,如果mnt目录下原来有文件的话,这个文件就看不到了,但是不会删除,umount还是有的.mount直接回车可以查看当前mount的所有目录和设备,U盘是会被认为scsi设置sdb.mout命令一般可以直接识别文件系统,如果不能识别可以用mount -t vfat /dev/sdb1 /mbt,CD的文件类型iso9660.
可以mount windows共享:mount -t cifs //192.168.0.1/tools /mnt,cifs是网络文件系统
可以mount linux nfs共享 mount 192.168.0.1:/var/ftp/pub /mnt,nfs是linux的网络文件系统.
cat /dev/cdrom > a.iso 将当前光盘生成为iso
mount -t iso9660 -o loop a.iso /mont 将a.iso挂载到/mont下 -o loop 的意思是虚拟为回环设备

7 du 查看文件大小,du -h 友好显示,du -s 查看文件夹总大小

8 df 加载所有资源的信息 -h

9 su user和su - user的区别是su -是彻底切换,切换后往回切换直接用exit(退出shell),而不是再用su.

10 ssh user@192.168.0.1 以user用户登录192.168.0.1
11 关机 shutdown -h now,init 0(关服务),halt -p -f(关电源),重启 shutdown -r now ,init6,reboot(halt)

linux系统结构和系统命令初步的更多相关文章

  1. Linux 系统结构详解

    Linux 系统结构详解 Linux系统一般有4个主要部分: 内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统 ...

  2. Linux菜鸟学习笔记--Linux系统结构

      什么是Linux? Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核.严格来讲,Linux这个词本身只表示Linux内核,但实际上人 ...

  3. Linux系统结构与终端控制台

    Linux系统结构与终端控制台 作者:Vashon 时间:20150418 以下主要是对Linux系统终端控制台切换及基本操作的范例,其他的理论就不多说了,直接进入实践部分. Starting.... ...

  4. Linux 系统结构,nglinx

    Linux 系统结构 Linux系统一般有4个主要部分:内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统. N ...

  5. Linux系统结构

        Linux系统一般有4个主要部分: 内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统.部分层次结构如图 ...

  6. 体验CoreCLR的stack unwinding特性在Linux/Mac上的初步实现

    有了stack unwinding特性,才能在.NET程序中获取调用堆栈(call stack)信息,才能在异常时显示调用堆栈信息.这个特性之前只在Windows上有实现,Linux/Mac上的实现最 ...

  7. linux shutdown关闭系统命令使用介绍(转)

    shutdown命令是最常用的关闭系统命令,不仅可以用于立即关闭系统,还可以在指定时间关闭系统   linux关闭系统命令之shutdown 关闭.重启系统 Linux是一个多用户.多任务系统,如果不 ...

  8. Linux 系统结构

    Linux的系统结构一般由四部分组成 内核 1)内核 操作系统的核心,具有最基本的功能:内存管理.进程管理.设备驱动管理.文件系统管理,网络管理 内核版本(kernel)查看的三种方法 cat /pr ...

  9. Linux ext2文件系统之初步思考

    数据存放在磁盘中,磁盘最小存取单位sector(512Byte);文件系统中存储的最小单位是 块(Block),大小通常(1KB,2KB,4KB...), 一个block对应多个sector,因而可用 ...

随机推荐

  1. Python学习笔记整理(五)Python中的列表.

    列表和字段,这两种类型几乎是Python所有脚本的主要工作组件.他们都可以在原处进行修改,可以按需求增加或缩短,而且包含任何种类的对象或者被嵌套. 一.列表 列表的主要属性: *任意对象的有序集合 从 ...

  2. 编译cwm-recovery(含部分修改步骤)[转]

    1. 同步cm10.1的源码,具体操作请百度之-- 2. 打开终端,到源码目录下: cd Android/cm10.1                   //我的源码目录 3. 如果不想使用cm10 ...

  3. nginx+uwsgi+flask搭建python-web应用程序

    Flask本身就可以直接启动HTTP服务器,但是受限于管理.部署.性能等问题,在生产环境中,我们一般不会使用Flask自身所带的HTTP服务器. 从现在已有的实践来看,对于Flask,比较好的部署方式 ...

  4. Android开发的体会

    View Functionality--------------->逻辑 Data----------------------->实体,包括从View.Net.其他对象比如Location ...

  5. 关于TCP的三次握手和四次分手(整理)

    这个协议非常重要,这里把它的链接和释放整理一下 首先是三次握手: 1.  客户端发起,像服务器发送的报文SYN=1,ACK=0,然后选择了一个初始序号:seq=x. SYN是干什么用的? 在链接的时候 ...

  6. java cannot find the tag library descriptor for "http://java.sun.com/jsp/jstl/core"

    出现java cannot find the tag library descriptor for "http://java.sun.com/jsp/jstl/core" 主要的愿 ...

  7. android开发论坛

    http://www.hiapk.com/ http://bbs.hiapk.com/ http://bbs.gfan.com/ http://bbs.anzhi.com/ http://www.ap ...

  8. 【转】Ubuntu 修改hosts

    原文网址:http://l.14551.org/2009/12/2166 Ubuntu系统的Hosts只需修改/etc/hosts文件,在目录中还有一个hosts.conf文件,刚开始还以为只需要修改 ...

  9. Qt Creator中,include路径包含过程(或如何找到对应的头文件)

    Qt Creator中,include路径包含过程(或如何找到对应的头文件) 利用Qt Creator开发程序时,需要包含利用#include来添加头文件. 大家都知道,#include <&g ...

  10. shell输出加颜色

    shell输出加颜色 #cat a.sh #!/bin/sh blue=`tput setaf 4` reset=`tput sgr0` echo "${blue}[INFORMATION] ...