zoukankan      html  css  js  c++  java
  • ###Linux基础

    点击查看Evernote原文

    #@author:       gr
    #@date:         2014-10-11
    #@email:        forgerui@gmail.com
    

    前言

    1. 为什么学习Linux?:-)
      酷Cool
      了解系统的底层,而不是界面
      工作需求
    2. 这次学习的目标
      基本会使用Linux
      熟悉Linux开发环境
      在Linux下开发程序
    3. 我自己也不是很懂,大家一起共同讨论学习。讲的内容也不是很全,只是一些基础知识,大家如果希望使用好Linux,还要自己多去研究探索。关键就是多练多用多解决问题
    4. 推荐图书《鸟哥的私房菜-基础篇》,如果想了解Shell编程的话,可以看《Linux Shell脚本攻略》。更高级的书《深入理解LINUX内核》,《UNIX环境高级编程》。

    一、Linux文件系统结构

    1. 了解Linux目录结构,及各个目录存放的内容

      Windows进行C盘、D盘分盘不同,Linux的文件系统是以树进行组织的。如图,是根目录/下的文件。
      Alt text

      /: 根目录,所有文件的最高目录
      /bin: 存放常用命令
      /dev: 存放设备文件
      /etc: 存放配置文件
      /home: 用户工作目录
      /lib: 存放共享链接库
      /root: 超级用户的工作目录
      /sbin: 系统管理员的程序
      /tmp: 存放临时文件
      /usr: 存放用户程序的目录
      /proc: 操作系统的实时信息
      /var: 存放系统的日志文件

    2. 了解文件的权限
      文件的权限有r,w,x,代表的数值分别为4,2,1;
      例:如果权限是5,5=4+1;6=4+2;7=4+2+1;
      文件的权限管理。文件有三种权限,分别是该文件的所属用户,与所属用户同组的用户,其他用户。分别表示为u,g,o

    二、Linux基础命令

    1. ls(list): 列出目录下的所有文件
      # 显示/home目录下的文件
      ls /home/
      # 显示所有文件,包括隐藏文件(前面有.)
      ls -a
      # 显示详细信息
      ls -l
      # 按修改时间排序
      ls -c

    2. cd(change directory): 改变当前目录
      路径有绝对路径和相对路径。
      绝对路径是从根目录/开始的。
      相对路径是相对当前工作目录的路径,使用相对路径,可以更简单方便。
      # 返回到上一层目录。 ../ 表示上一层
      cd ../
      # 进入当前目录的Documents子目录下,不必要敲全路径
      cd Documents/

    3. mkdir(make directory): 新建一个目录

       # 在当前目录下新建一个叫workspace的目录
       mkdir workspace
       mkdir -p /home/gr/t/t1
      
    4. rm(remove): 删除文件或目录
      # 删除/home下的test文件
      rm /home/test
      # 删除t/文件夹
      rm -rf t
      注意: 如果不清楚命令的话,慎用rm

    5. mv(move): 移动文件或目录
      mv test /home/
      # 进行重命名
      mv test test1

    6. cp(copy): 拷贝文件或目录
      cp test /home/
      # 拷贝目录
      cp -r t /home/

    7. pwd: 显示当前目录

    8. sudo: 以超级管理员的权限运行,su命令
      # 以超级管理员的权限执行后面的拷贝命令
      sudo cp -r t /home
      # 切换到tmp用户
      su tmp

    9. chmod: 改变文件权限
      上面讲到文件的权限有三组。-代表无权限。如下:
      Alt text
      文件描述一共有10个字符表示,第一个代表文件类型,以后3组分别为文件所有者的读、写和执行权限;与所有者同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。
      # 使文件的权限都变成可读可写可执行
      chmod 777 test
      # 使用/home文件下所有文件都变为可读可写可执行,包括子目录
      chmod -R 777 /home/
      # 文件的所有者添加可执行权限
      chmod u+x test
      # 所有用户都添加可读权限
      chmod a+r test
      # 其他用户去掉可写权限
      chmod o-w test

      注意:权限管理在Linux中很重要,一些问题可能就是因为没有权限导致的。

    10. ifconfig: 查看ip地址
      Alt text

    三、 软件安装

    1. 最基本的是使用源码进行编译安装。
      首先下载程序的源代码,一般编译安装有三个步骤,分别是配置编译安装。如下:
      ./configure
      make
      sudo make install
      当然,也有一些软件使用Cmake进行管理,这时命令稍微有些区别。
      mkdir release
      cd release
      cmake ../
      make install

    2. 使用别人打包好的软件包进行安装。不同的发行版本有不同的软件包管理方式。以Redhat阵容的软件管理使用rpm工具,以Debian阵容的软件管理采用dpkg
      # 安装rpm包
      rpm -ivh tftp.rpm
      # 安装deb包
      dpkg -i tftp.deb

    3. 当有网络时,可以用软件源进行安装。分别使用更高级的yumapt-get更方便。它们会为你自动解决依赖问题,安装需要的软件。

       # Redhat方式
       sudo yum install vim
       # Debian方式
       sudo apt-get install vim
      

    一般软件安装有以上三种方法,但也些软件会提供安装程序,那样直接运行软件的安装程序即可以安装。
    除了源安装,其它的安装一般要手动解决依赖关系,这也是在Linux中安装软件的一大棘手问题。

  • 相关阅读:
    【原创】tyvj1038 忠诚 & 计蒜客 管家的忠诚 & 线段树(单点更新,区间查询)
    [转载]线段树模板
    并查集相当6的一篇文章~~~
    觉得一篇讲SPFA还不错的文章
    【原创】POJ 3259 Wormholes(Bellman-Ford) && 简介Bellman-Ford算法
    【原创】谈谈数据结构课后作业......尴尬不已...《图》 后面的迷宫问题
    MyBatis源码分析(七):动态代理(Mybatis核心机制)
    1026: [SCOI2009]windy数
    Spring Boot 官方文档学习(一)入门及使用
    Spring Hibernate JPA 联表查询 复杂查询
  • 原文地址:https://www.cnblogs.com/gr-nick/p/4069787.html
Copyright © 2011-2022 走看看