第1讲 linux介绍
1、linux的特点
      1)免费/开源
      2)支持多线程/多用户
      3)安全性好
      4)对内存和文件管理优越        
            linux最小只需要4M->嵌入式
      要想成为黑客,就要去研究linux的内核代码!
      缺点:操作相对困难
2、学习linux的流程:
      第1阶段:linux平台上的开发,包括vi,gcc,gdb,make,jdk,tomcat,mysql..和linux基本操作。
      第2阶段:加厚c语言功底《c专家编程》或是java语言。
      第3阶段:学习《unix环境高级编程》。
      第4阶段:linux应用系统开发/linux嵌入式开发。
3、内容介绍    
4、linux的由来
     火星计划-->文件系统-->unix系统-->minix系统--linux系统(把minix移植到pc)


第2讲 vi编辑器的使用
1、vi的三种命令模式
   1)命令模式:用于输入命令,简单更改。
   2)插入模式:用于插入文本。
   3)末行模式:用于输入命令,视化操作,查找替换等。
2、vi环境设置
   set nu             添加行号显示
   set nonu           取消行号显示
3、使用vi开发Hello.java:
   1)vi Hello.java
   2)输入i(进入插入模式)
   3)按Esc(进入命令模式)
   4)输入:[wq表示保存退出;q!不保存退出]
   5)编译
      javac Hello.java
   6)运行
      java Hello


第3讲 目录结构
1、linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。
2、linux常用目录及用途:
   /bin        存放使用者最长用的命令,如:cp、ls、cat,等等。 
   /boot       启动linux时使用的一些核心文件。 
   /dev        是device(设备)的缩写,这个目录下是所有linux的外围设备。 D:\document\Chat\MyIM\MyIM\bin\Release
   /etc        这个目录用来存放系统管理所需要的配置文件和子目录。 
   /home       用户的主目录,比如说有个用户叫wang,那他的目录就是/home/wang也可以用~wang来表示。 
   /lib        这个目录是存放着系统最基本的动态连接库,几乎所有的应用程序都须用这些共享库。 
   /lost+found 这个目录平时是空的,当系统不正常关机后,这里就是一些无家可归文件的避难所。 
   /mnt        这个目录是空的,系统提供这个目录是让用户临时挂接别的文件系统。 
   /proc       这个目录是一个虚拟目录,它是系统内存映射,我们可以直接通过访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在
               内存 中。 
   /root       系统管理员(root)的主目录,作为系统的拥有者的特权。 
   /sbin       s就是super user的意义,也就是说这里存放的是系统管理员使用的管理程序。 
   /tmp        这个目录是存放一些临时文件的地方。 
   /usr        我们用到的应用程序的文件几乎都存放这个目录下:
     /usr/X11R6       存放X_Window的目录
     /usr/bin         存放着许多应用程序
     /usr/sbin        给超级用户使用的一些管理程序就放在这个里面
     /usr/include     开发和编译应用程序所需的头文
     /usr/lib         存放一些常用的动态连接共享库和静态归档案库
     /usr/local       这是提供给一般用户的/usr目录,在这里安装软件最合适
     /usr/man         存放帮助文档
     /usr /src        开放的源代码就存在这个目录下
     /var             这个目录存放那些不断扩充的东西,为了保持usr的相对稳定,那些才、经常被修改的目录可以放在这个目录下,如/var/log日志文件。 


第4讲 常用命令
1、命令:init [0123456]
   运行级别
   0:关机
   1:单用户
   2:多用户状态没有网络服务
   3:多用户状态有网络服务
   4:系统未使用保留给用户
   5:图形界面
   6:系统重启
   常用运行级别是3和5,要修改默认的运行级别可改文件/etc/inittab的id:5initdefault这一行中的数字。
   注意:解决修改错误配置的方法:
         1)在进入grub引导界面的时候,输入e
         2)在选中第二行,输入e
         3)在最后输入一个1(1前面有一空格,代表单用户级别)
         4)回车后再按b
   注意:只有单用户级别启动时不会读etc/inittab文件
2、linux命令
   shutdown -h now 立即进行关机
   shutdown -r now 立即重新启动计算机
   reboot           现在重新启动计算机
   startx           进入图形界面
   clear           清除 shell 提示屏幕
   init 3         red hat linux从窗口模式进入命令模式
   init 5               从命令模式进入窗口模式
   reset                 刷新 shell 提示屏幕
   history               显示历史命令
   history N             显示最后N条历史命令
   !N                                     执行历史编号为N的命令
   pwd                   显示当前所在目录
   useradd 用户名         添加用户
   useradd -g 组名 用户名              添加用户,同时指定用户到哪个组
   passwd 用户名           修改此用户的密码
   userdel 用户名         删除用户
   userdel -r 用户名     删除用户以及用户主目录
   ls                   列出文件和目录
   ls -a                 显示隐藏文件
   ls -l                 显示长列表格式
   cat 文件名                   查看文件(可以是二进制的)内容
   mkdir                       建立目录
   rmdir                       删除空目录
   cp -r 源文件 目的文件       递归复制子目录信息
   mv 源文件 目的文件         移动或更改文件、目录名称
   mv 原文件名 新文件名                   修改文件名
   who                         查看系统中的使用者
   su 用户名                   更改用户的账号与口令
   ps                           查看系统目前的进程
   jobs                       查看正在后台中执行的进程
   kill 进程标识符             结束或终止进程
   命令 &                     后台执行进程的命令
   info 命令                        显示说明命令
   man 命令                   命令在线帮助
   命令 --help                 显示命令的帮助信息并离开
   more 文件名                 显示文件内容,带分页
   less 文件名                 显示文件内容,带分页
   grep -n “关键字” 文件名   查询文件中的关键字及所在行号
   |                           管道命令
   find / -name 文件名         在根(可改成其他)目录下查找该文件
   grep -n "ab" a.java > a.txt 列表的内容写入文件a.txt中(覆盖写)
   grep -n "ab" a.java >> a.txt 列表的内容追加到文件a.txt的末尾
   env                                    查看当前操作系统的环境变量
   ls -l /bin/*sh                         查看系统中所有的shell
   chsh -s 输入新的shell                  更换shell
   runlevel                               查看系统运行级别
3、linux快捷键
   ctrl+alt+F1         red hat linux从窗口模式进入命令模式
   Tab                   自动补全命令或显示匹配你键入字符的所有命令
4、linux中的 | 就是管道命令,理解?
   把上一个命令的结果交给 | 后面的命令处理
5、linux中的每个用户必须属于一个组,不能独立于组外。


第5、6讲 文件权限 用户组
1、groupadd 组名                      添加组
   groupdel 组名                      删除组
   usermod -g 组名 用户名             改变用户所在的组
   usermod -d 目录名 用户名           改变用户登录的初始目录
   chown 用户名 文件名                修改文件的所有者
   chgrp 组名 文件名                  修改文件所在的组
2、权限分为三种:
   1)r   可读     用4表示
   2)w   可写     用2表示
   3)x   可执行   用1表示
3、改变文件或目录的读、写、执行的权限,如:chmod 777 用户名     
   7:rwx的意思,即4+2+1=7
   第1个7表示对用于进行修改;第2个7表示对用户所在组进行修改;第3个7表示对其他组进行修改。


第7讲 j2ee环境(jdk、tomcat)搭建
1、挂载光驱,并启动光驱:mount /mnt/cdrom/
   卸载:umount /mnt/cdrom/
2、linux使用win文件的方式:
   1)挂载
   2)虚拟机->设置->选项->共享文件夹
3、jdk的安装步骤
   1)把.iso挂载到linux上
      a)在vm做好配置
      b)mount /mnt/cdrom
   2)把安装文件拷贝到/home
      cp 文件 /home
   3)切换到/home目录,安装
      tar -zxvf 文件名
   4)配置jdk环境变量
      vi /etc/profile  【环境配置文件】
      vi /home/liyuiln/.bashrc
      在以上两个文件尾分别加入:
      JAVA_HOME=/home/liyulin/program\ file/jdk1.7.0_45
      JRE_HOME=$JAVA_HOME/jre
      PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
      CLASSPATH=.:$JAVA_HOME/lib/jt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
      export JAVA_HOME JRE_HOME PATH  CLASSPATH 
      注意:空格要转义!
   5)重启
4、eclipse安装
   1)前面步骤同jdk安装
   2)装完后,到eclipse目录,输入以下命令启动:
      ./eclipse
5、linux文件安装
   1).bin文件
      ./ 文件名
   2)tar.gz文件
      tar -zxvf 文件名
6、linux文件
   1)白颜色:普通文件
   2)绿颜色:可执行文件
   3)蓝颜色:文件夹
   
第8讲 linux分区
1、分区
   1)硬盘分区主要分为基本分区(Primary Partion)和扩展分区(Extension Partion)两种。
   2)基本分区和扩展分区的数目之和不能大于4个。
   3)基本分区可以马上被使用但不能再分区。扩展分区必须再进行分区后才能使用。
   4)扩展分区再分下去就是逻辑分区(Logical Partion),而且逻辑分区没有数量上的限制。
2、硬盘分为IDE硬盘和SCSI硬盘。
   1)对于IDE硬盘,驱动器标识符为“hdx~”。
      1.1)“hd”表明分区所在设备的类型,这里是指IDE硬盘
      1.2)“x”为盘符(a为基本牌盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘)
      1.3)“~”代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始是逻辑分区。
   2)对于SCSI硬盘,标识符为“sdx~”。
      2.1)“sd”表示分区所在设备的类型。
      2.2)其余则和IDE硬盘的表示方法一样。
3、mount /mnt/cdrom                   挂载光驱
   umount /mnt/cdrom                  卸载光驱
   fdisk -1                           查看linux系统分区具体情况
   fd [目录全路径]                    查看某个目录是在哪个分区


第9讲 linux安装
1、安装两种方式
   1)独立安装(双系统那种)
   2)虚拟机安装


第10讲 shell介绍
1、《linux命令、编辑器和shell编程》
2、samba服务器


第11讲 tcp、ip基础
1、美国国防部(1969年,阿帕网,军用)---->民间机构(1972年,华盛顿开发,通讯协议)---->tcp/ip协议(1974年,美国国防部)
2、OSI与TCP/IP参考模型
    
3、学习网络圣经
   1)《TCP/IP详解 卷1:协议》
   2)《TCP/IP详解 卷2:实现》
   3)《TCP/IP详解 卷3:TCP事务协议HTTP NNTP和UNIX域协议》
   备注:另外两部经典书籍
         1)《UNIX环境高级编程》
         2)《UNIX网络编程》


第12讲 ip地址和包 解 网络环境配置
1、tracert 目标ip/域名                追踪路由
   ping 目标ip                        测试两个ip是否畅通
   ipconfig/all                       在windows下查看ip情况
   ifconfig                           在linux/unix下查看ip情况
2、特殊ip地址
   全1                                        局域网广播
   主机号全1                                  对一个子网广播
   网络号127,主机号任意值(除全0全1)        回路
3、linux网络环境配置
   方法一
   1)用root身份登录,运行setup命令进入到text mode setup utiliy对网络进行配置,这里可以进行ip、子网掩码、默认网关dns设置。
   2)这时网卡的配置没有生效。运行/etc/rc.d/init.d/network restart命令,设置才生效。
   方法二
   1)ifconfig eth0 x.x.x.x 对网卡进行设置
   2)ifconfig eth0 network x.x.x.x 对子网掩码设置
      对广播地址和DNS使用默认的。
      注意:这样配置网络将会立即生效(临时生效,重启后,将恢复到以前的设置)。
   方法三
   1)修改/etc/sysconfig/network-scripts/ifcfg-eth0。这个文件里各个属性可以修改,包括ip、子网掩码、广播地址、默认网关。
   2)然后,运行/etc/rc.d/init.d/network restart命令,设置生效。
      注意:这种方法是最底层的修改方法。


第13讲 rpm管理 samba安装配置使用
1、RPM:一种用于互联网下载包的打包及安装工具。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件
   格式名称虽然打上了RedHat的标志,但是其原始设计理念是开发式的,现在包括OpenLinux、S.u.S.E以及Turbo Linux等Linux的发行版本都有采用,可以算是
   公认的行业标准了。
2、RPM包名称格式说明:apache-1.3.23-11.i386.rpm
   “apache”软件名称
   “1.3.23-11”软件的版本号,主版本号和次版本号
   “i386”是软件所运行的硬件平台
   “rpm”文件扩展名,代表RPM包
3、rpm常用命令
   rpm -qa                         查询所安装的所有rpm软件包
   rpm -q 软件包名                 查询软件包是否安装
   rpm -qi 软件包名                查询软件包信息
   rpm -ql 软件包名                查询软件包中的文件
   rpm -qf 文件全路径名            查询文件所属的软件包
   rpm -qp 包文件名                查询包的信息对这个软件包的介绍    
 
   安装RPM包
   rpm -i RPM包全路径名称          安装包到当前系统
   rpm -ivh RPM包全路径名称        安装包到当前系统有提示信息
   参数说明:i=install             安装
             v=verbose             提示
             h=hash                进度条
   
   rpm -e RPM包的名称             删除RPM包 
   rpm -e --nodeps RPM包的名称    强制删除rpm包   
   rpm -U RPM包全路径             升级RPM包       
7、samba服务器:能够使windows与linux之间实现资源共享。
8、samba服务器的安装步骤:
   1)检查是否已经安装了samba
      rpm -q samba
   2)如果已经安装了samba,可以卸载
      rpm -e samba
   3)挂载samba安装文件,并将其复制到/home目录下
   4)安装
   5)建立用户
   6)设置samba密码(将/etc/passwd中的用户都加到smbpasswd中)
      cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
   7)启动samba服务
      service smb start             启动
      service smb stop              停止
      service smb restart           重启


第14讲 crontab详解
1、任务调度:指系统在某个时间执行的特定的命令或程序。
2、设置个人任务调度:crontab -e 命令
3、每天凌晨两点向/home/mydate文件写入(追加)日期:0 2 * * * date >> /home/mydate
   说明:“0 2 * * *”的格式--分 时 日 月 星期
4、多个任务调度方式
   1)在crontab -e中直接写。
   2)可以把所有的任务写入到一个可执行文件(shell编程)。
5、终止任务调度
   crontab -r          终止任务调度
   crontab -l          列出当前所有任务调度


第15讲 进程的介绍与管理
1、进程与线程的区别
   1)进程:正在执行的程序
   2)线程
      2.1)轻量级的进程
      2.2)进程有独立的地址空间,线程没有。
      2.3)线程不能独立存在,它是由进程创建。
      2.4)相对讲,线程耗费的cpu和内存小于进程。
2、ps命令:查看系统进程
   ps -a            显示当前终端的所有进程信息
   ps -u            以用户的格式显示进程的信息
   ps -x            显示后台进程运行的参数
3、结束或终止进程:kill 进程标识符         
4、top:显示正在执行的进程。top与ps最大的不同在于top在执行一段时间可以更新正在运行的进程。   
   1)监视特定用户
      输入top按回车后;再输入u,回车;然后输入用户名即可。
   2)终止指定的进程
      输入top按回车后;再输入k,回车;然后输入要结束的进程ID号。
   3)指定系统状态更新的时间
      top -d N分钟      指定系统更新进程的时间为N分钟


第16讲 top详解、监控网络状态
1、系统时间
   date                       显示系统时间
   date MMDDHHMMCCYY.SS       更新系统时间(月月日日时时分分年年年年.秒秒)
   cal 11 2013                查看2013年11月的月历
   cal 2013                   查看2013年的年历
2、显示网络统计信息:netstat
3、显示数据包经过历程命令:traceroute


第17讲 mysql安装 配置 使用
1、mysql特点:
   1)免费
   2)跨平台
   3)轻
   4)支持多并发
   备注:从节约成本的角度考虑,mysql特别适合中、小项目。
2、mysql数据库的安装
   1)将mysql安装文件拷到/home目录下
   2)依次执行下面命令
      groupadd mysql                             创建mysql组
      useradd -g mysql mysql                     创建mysql用户,并放入到mysql组
      scripts/mysql_install_db --user=mysql      初始化数据库
      chown -R root .                            修改文件的所有者
      chown -R mysql data                        修改data文件夹的所有者
      chgrp -R mysql .                           改变用户组
      bin/mysqld_safe --user=mysql &             启动mysql 
      ./mysql -u root -p                         进入mysql(前提:cd bin)  
   注意:mysql的驱动要放在jdk下(/jre/lib/ext/),否则,java程序连接mysql数据库可能报错!
3、mysql备份、恢复
   1)备份:mysqldump -u root -p密码 数据库名 > data.bak
   2)恢复:mysql -u root -p密码 数据库名 < data.bak
   注意:密码后面没有空格
4、mysql命令
   user 数据库名A                  使用数据库A
   show tables                     查看数据库中的表
   show databases                  查看mysql中的所有数据库


第18讲 ssh的安装、配置、使用
1、ssh(secure shell)是一款集远程操作linux,和进行文件上传和下载的软件。
   特点:安全、方便。
2、linux默认安装sshd服务,默认是启动的,监听的端口是22。


第19讲 linux补讲
1、shell使用通配符:
   * 代表多个字母或数字
   ?代表一个字母或数字
2、给命令起别名alias用法:
   alias llh='ls -l /home'
   下次只要输入llh就可。


第20讲 linux启动过程分析
1、linux系统启动过程如下:
   1)BIOS自检
   2)启动GRUB/LILO
   3)运行linux内核并检测硬件
   4)运行系统的第一个进程init
   5)init读取系统引导配置文件/etc/inittab中的信息进行初始化
   6)/etc/rc.d/rc.sysinit系统初始化脚本
   7)/etc/rc.d/rcX.d/[KS]* - 根据运行级别X配置服务
          终止以“K”开头的服务
          启动以“S”开头的服务
   8)/etc/rc.d/rc.local 执行本地特殊配置
   9)其他特殊服务


第21讲 压缩、解压缩、linux下java网络编程
1、压缩、解压
   zip xxx.zip filename1                                  压缩文件filename1,以xxx.zip存储
   zip xxx.zip filename1 filename2 filename3 ...          压缩文件filename1、filename2、filename3,以xxx.zip存储
   unzip file.zip                                         解压文件file.zip
   gunzip file.gz                                         解压文件file.gz
GitHub 加速计划 / li / linux-dash
6
1
下载
A beautiful web dashboard for Linux
最近提交(Master分支:3 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐