Linux学习(一)

从零开始学习linux,这里不多写虚拟机的安装以及centos的设置,简单粗暴从命令行开始;

一、目录介绍

  /bin  存放必要的命令

  /boot  存放内核以及启动所需的文件

  /dev  存放设备文件

  /etc  存放系统配置文件

  /home  普通用户的宿主目录,用户数据存放在其主目录中

  /lib  存放必要的运行库

  /mnt  存放临时的映射文件系统,通常用来挂载使用

  /proc   存放储存进程和系统信息

  /root  超级用户的主目录

  /sbin  存放系统管理程序

  /tmp  存放临时文件

  /usr  存放应用程序,命令程序文件,程序库,手册和其他文件

  /var  系统默认日志存放目录

二、Linux 常用命令

   默认进入系统,我们会看到这样的字符 [root@localhost~]#

   其中#代表当前是root用户登陆,如果是$表示当前是普通用户。

   常用命令:

    cd 命令, cd /home  说明:进入/home 目录

    ls  ./  查看当前目录所有的文件和目录

    ls -a  查看所有的 文件,包含隐藏的文件,以.开头的文件 

    pwd  显示当前所在的目录

    mkdir  创建目录,用法:mkdir test, 命令后面接目录的名称

    rmdir  删除空目录

    rm  删除文件或者目录,用法:rm -rf test.txt   (-r 表示递归, -f表示强制)

    cp   拷贝文件,用法:cp old.txt    /tmp/new.txt, 常用来备份;如果拷贝目录需要加 -r 参数

    mv  重命名或者移动文件或者目录,用法:mv   old.txt   new.txt

    touch  创建文件,用法:touch   test.txt  如果文件存在,则表示修改当前文件的时间

    Useradd  创建用户,用法 useradd wangjie ; userdel  删除用户

    Groupadd  创建组,用法:groupadd wang1;  groupdel  删除组

    find  查找文件或者目录,用法:find   /home  -name  "test.txt"  (命令格式为:find   /home  -name  "*.txt";   查找 /home 目录下, 所有.txt 结尾的文件或者目录)

    vi  修改某个文件,vi 有三种模式(命令行模式,文本输入模式,末行模式)

    cat  查看文件的内容, 用法:cat    test.txt 可以看到 test.txt 内容

    more  查看文件内容,分页查看,cat 是全部查看,如果篇幅很多,只能看到最后的篇幅,可以使用cat  和 more  同时使用, 例如: cat   test.txt | more 分页显示 test 内容, |  符号是管道符,用于把 | 前的输出作为后面命令的输入。

    echo  回显,用于 echo ok,  会显示 ok,  输入什么就打印什么。echo  ok >  test.txt ;  把 ok 字符覆盖 test.txt 内容, >  表示追加并覆盖的意思。 >>  两个大于号表示追加, echo  ok >> test.txt 表示向test.txt 文件追加 ok 字符,不覆盖原文件里的内容。

  初学linux基础命令大概那么多够玩一会儿了。

三、Linux用户权限

  在linux操作系统中,root 的权限是最高的,相当于 windows 的administrator  拥有最高的权限,能执行任何命令和操作,在系统中,通过 UID 来区分用户的权限级别,UID 等于 0 , 表示此用户具有最高的权限,也就是管理员。其他的用户UID 依次增加,通过 /etc/passwd 用户密码文件可以查看到每个用户的独立 UID.

  每个文件或者目录的权限,都包含一个用户的权限,以一个组的权限,其他人的权限,例如:

    标红第一个root 表示该文件所有者是 root 用户, 第二个 root 代表该文件的所属的组为 root 组,其他用户这里默认不标除。

  [ root@ node1~]# ls -l monitor_log.sh

  -rw-r--r--  1 root  root  91 May   7 20:21 monitor_log.sh

  [ root@node1~]#

  如果我们想改变某个文件的所有者或者所属组,可以使用命令  chown

  chown  -R  test:test   monitor_log.sh  即可。

  每一个linux 文件和目录 都具有四个访问权限,即(读r, 写w, 可执行x, 无权限-)利用 ls -l 命令可以查看到某个文件或者目录的权限,它以显示数据的第一个字段为准,第一个字段由10个字符组成,如下:

  [ root@ node1~]# ls -l monitor_log.sh  

  -rw-r--r--  1 root  root  91 May   7 20:21 monitor_log.sh

  [ root@node1~]#

  第一位表示文件类型, -  表示文件,d 表示目录; 后面每三位为一组。

  第一组:2-4位,表示文件所有者的权限,即用户 user 权限,简称 u

  第二组:5-7位,表示文件所有者所属组成员的权限, group 权限,简称 g

  第三组:8-10位,表示所有者所属组之外的用户权限,other 权限,简称 o

  从上面这个文件,我们可以看出, monito_log.sh文件对应的权限为:

    root用户具有读和写的权限 root 组具有读的权限,其他人具有读的权限

  为了能更简单快捷的使用和熟悉权限,rwx 权限可以用数字来表示,分别表示为 r (4)、 w (2) 、x(1)。

  所以上面的文件 monitor_log.sh 的权限是 644

    6=4+2 (r+w)

    4= 4(r)

  如下案例是针对 chmod 修改 文件权限的操作。

-rw-r--r--. 1 root root    3 Jan 12 06:56 a.php
drwxr-xr-x. 2 root root 4096 Jan 12 06:09 new.txt
[root@localhost testchild]# ll
total 8
-rw-r--r--. 1 root root    3 Jan 12 06:56 a.php
drwxr-xr-x. 2 root root 4096 Jan 12 06:09 new.txt
[root@localhost testchild]# chmod o+w a.php
[root@localhost testchild]# ll
total 8
-rw-r--rw-. 1 root root    3 Jan 12 06:56 a.php
drwxr-xr-x. 2 root root 4096 Jan 12 06:09 new.txt
[root@localhost testchild]# chmod u+x a.php
[root@localhost testchild]# ll
total 8
-rwxr--rw-. 1 root root    3 Jan 12 06:56 a.php
drwxr-xr-x. 2 root root 4096 Jan 12 06:09 new.txt
[root@localhost testchild]# 

  一次性修改 用户,组员,其他组的 权限

[root@localhost testchild]# chmod u=rwx,g=rwx,o=rwx a.php
[root@localhost testchild]# ll
total 8
-rwxrwxrwx. 1 root root    3 Jan 12 06:56 a.php
drwxr-xr-x. 2 root root 4096 Jan 12 06:09 new.txt
[root@localhost testchild]# 

  更快捷的修改权限 chmod 777 a.php

[root@localhost testchild]# chmod 444 a.php
[root@localhost testchild]# ll
total 8
-r--r--r--. 1 root root    3 Jan 12 06:56 a.php
drwxr-xr-x. 2 root root 4096 Jan 12 06:09 new.txt
[root@localhost testchild]# chmod 777 a.php
[root@localhost testchild]# ll
total 8
-rwxrwxrwx. 1 root root    3 Jan 12 06:56 a.php
drwxr-xr-x. 2 root root 4096 Jan 12 06:09 new.txt
[root@localhost testchild]# 

  修改文件的用户组 chown -R abc:abc a.php

[root@localhost testchild]# useradd abc
[root@localhost testchild]# ls -l a.php
-rwxrwxrwx. 1 root root 3 Jan 12 06:56 a.php
[root@localhost testchild]# chown -R abc:abc a.php
[root@localhost testchild]# ls -l a.php
-rwxrwxrwx. 1 abc abc 3 Jan 12 06:56 a.php
[root@localhost testchild]#   

四、Linux 网络配置

  熟悉了常用的命令Linux权限,那接下来如何让所在的Linux 系统上网呢? 管理 Linux服务器网络有哪些命令呢?

  Linux服务器默认网卡配置文件在 /etc/sysconfig/network-scripts/下,命令的名称一般为:ifcfg-eth0  ifcfg-eth1,    eth0 表示第一块网卡, eth1 表示第二块网卡, 依次类推。 一般 DELLR720 标配有 4 块千兆网卡。

  修改网卡的 IP, 可以使用命令: vi  /etc/sysconfig/network-scripts/ifcfg-eth0    如果是  DHCP 获取的 IP  , 默认配置如下:

  #Advanced Micro Devices [AMD] 79C970 [PCnet32 LANCE]

  1、查看是否能够链接网络

[root@localhost testchild]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:DD:B4  inet addr:192.168.217.128  Bcast:192.168.217.255  Mask:255.255.255.0inet6 addr: fe80::20c:29ff:fe28:ddb4/64 Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1RX packets:10215 errors:0 dropped:0 overruns:0 frame:0TX packets:2749 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:10984914 (10.4 MiB)  TX bytes:161147 (157.3 KiB)lo        Link encap:Local Loopback  inet addr:127.0.0.1  Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING  MTU:16436  Metric:1RX packets:12 errors:0 dropped:0 overruns:0 frame:0TX packets:12 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0 RX bytes:720 (720.0 b)  TX bytes:720 (720.0 b)[root@localhost testchild]# ping www.baidu.com
ping: unknown host www.baidu.com
[root@localhost testchild]# 

  由此可见,目前还访问不到网络,那么开始修改网卡地址,继续往下走  cd /etc/sysconfig/network-scripts/

[root@localhost testchild]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@localhost network-scripts]# ls
ifcfg-eth0   ifdown-isdn    ifup-aliases  ifup-plusb     init.ipv6-global
ifcfg-lo     ifdown-post    ifup-bnep     ifup-post      net.hotplug
ifdown       ifdown-ppp     ifup-eth      ifup-ppp       network-functions
ifdown-bnep  ifdown-routes  ifup-ippp     ifup-routes    network-functions-ipv6
ifdown-eth   ifdown-sit     ifup-ipv6     ifup-sit
ifdown-ippp  ifdown-tunnel  ifup-isdn     ifup-tunnel
ifdown-ipv6  ifup           ifup-plip     ifup-wireless
[root@localhost network-scripts]# vi ifcfg-eth0
[root@localhost network-scripts]# 

  修改文件前是这个样子的如下:

DEVICE="eth0"           //第一块网卡
BOOTPROTO="dhcp"            //动态获取的,通过dhcp 云服务端动态获取的ip地址
HWADDR="00:0C:29:28:DD:B4"  //mack 地址
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"           //开机重启,网卡是否开启的意思,控制网卡的地方
TYPE="Ethernet"
UUID="8134b9c3-0d66-4983-ac3f-23ec133f8d9e"  

  修改后是这个样子的如下:

DEVICE="eth0"
BOOTPROTO=static   //静态ip 
HWADDR="00:0C:29:28:DD:B4"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="8134b9c3-0d66-4983-ac3f-23ec133f8d9e"
IPADDR=192.168.217.129  //ip地址
NETMASK=255.255.255.0  //子网
GATEWAY=192.168.217.2  //网关

  网卡配置完毕,还需要重启网卡;还需要用如下命令重启一下网络服务:# service network restart

[root@localhost network-scripts]# /etc/init.d/network restart

  查看 ip 命令:ifconfig  查看当前服务器所有的网卡ip , 可单独指定, ifconfig eth0 查看 eth0 的ip

  网卡配置完毕,如果来配置 DNS, 首先要指定DNS 配置在哪个目录下, vi  /etc/resolv.conf

  文件: 该文件里面添加如下两条:

  nameserver   202.106.0.20

  nameserver   8.8.8.8

  从上到下,分别表示主 DNS , 备 DNS. 配置完毕后,不需要重启网卡, DNS立即生效。这个时候 ping www.baidu.com  看看效果;  

  我这里链接不了,就是因为上面这些文字没有操作导致的:

  我的错误是这样的:这个时候好像 ping www.baidu.com  貌似还是链接不上 比如出现 ping host not font www.baidu.com

  因为我们要修改dns  则继续修改:

[root@localhost network-scripts]# vi /etc/resolv.conf

  修改完是这个样子的如下:[root@localhost network-scripts]# cat /etc/resolv.conf

# Generated by NetworkManager# No nameservers found; try putting DNS servers into your
# ifcfg files in /etc/sysconfig/network-scripts like so:
#
nameserver 192.168.217.2    //跟 GATEWAY=192.168.217.2是一样的

nameserver 202.186.0.20 //网通的DNS(建议加上)
# DOMAIN=lab.foo.com bar.foo.com

  然后在去 ping  可见已经成功了,特别开心,之前改 dns 时 nameserver   192.168.217.2  写成了 nameserver = 192.168.217.2  总是失败,原因是我写错了,当然如果不改这个文件还是链接不了网

  有朋友说如果不改该文件还有另外一种方案可以上网:(虚拟机开了NAT就行,然后启动network就行了)我没有测试过;

[root@localhost network-scripts]# ping www.baidu.com
PING www.a.shifen.com (115.239.211.112) 56(84) bytes of data.
64 bytes from www.baidu.com (115.239.211.112): icmp_seq=1 ttl=128 time=8.36 ms
64 bytes from www.baidu.com (115.239.211.112): icmp_seq=2 ttl=128 time=9.18 ms
64 bytes from www.baidu.com (115.239.211.112): icmp_seq=3 ttl=128 time=8.53 ms
^C  

 

五、远程工具链接Linux服务器

  常见的 Linux远程链接工具有:putty,  secureCRT(主流) , xshell, xmanger 等工具。

  我比较喜欢 xshell, 网上下载,安装就可以使用。

  这里我用的是xshell 

  

  输入自己的主机ip,  就可以了, 端口号默认为22, 这样就可以模拟 服务器一样使用服务器了。

  

  这样我就可以通过这个工具去远程操作某一台服务器。

  

转载于:https://www.cnblogs.com/dump/p/8277165.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571276.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

打印机服务器ip修改,怎么样更改打印机服务器的ip地址

怎么样更改打印机服务器的ip地址 内容精选换一换实例常用端口如表1所示。您可以通过配置安全组规则放通实例对应的端口,详情请参见配置安全组规则。无法访问公有云某些端口问题现象:访问公有云特定端口,在部分地区部分运营商无法访问&#xf…

nginx只能访问80端口_nginx 访问不了非80端口

在CentOS服务器上装好了nginx,直接通过公网ip可以正常显示nginx 的 index.html页面。同时我在3000端口跑了node应用,现在我想通过 公网ip:8089的形式访问nginx的配置代码:server {listen 8089;server_name 公网ip;location / {root /usr/web;…

Python中os模块使用方法

os模块提供了对系统环境、文件、目录等操作系统级的接口函数。本文主要描述os模块和os.path模块常用函数以及常用实例。 os模块函数 os.getcwd() 获取当前工作的目录。 os.listdir(dirname) 获取指定目录下的文件和目录,以列表形式输出 os.makedirs(dirname1/dirnam…

66319d电源使用说明书_电热水壶怎么使用?电热水壶烧不开水的问题是什么?

电热水壶可在最短的时间里面给人们煮出热水,是目前人们见到的最为常见的小家电产品,但是电热水壶怎么使用?在使用电热水壶时,有遇到烧不开水的问题,这就影响到正常使用水壶了,电热水壶烧不开水的问题是什么?一、电热…

django 项目中遇到的问题(持续更新中)

问题1:in include provide the namespace argument to include() instead 描述:在最外层的urls.py 添加项目的urls后报错,错误显示:in include provide the namespace argument to include() instead." 解决方案:…

机械制图中外螺纹的画法_机械制图基础知识之图样简化画法

机械制图时是否觉得图样很复杂,很难?那就看看下面的方法吧。1)当物体具有若干相同结构(齿、槽等),并按一定规律分布时,只需画出几个完整的结构,其余用细实线连接,并注明结构的总数相同结构与简化画法2)若干直径相同且…

获取程序执行的时间

编写程序到一定程度的,我们就不得不考虑成都所占用的内存、时间。那么如何获取程序执行的时间呢?需要用到currentTimeMillis方法。 在程序开始时获取一个时间,结束时获取一个时间,两者相减,即为程序所用时间。 下面程序…

mfc编程 孙鑫_孙鑫VC++视频教程笔记-(3)MFC程序框架的剖析 附1-SDI程序流程图

1,寻找WinMain人口:在安装目录下找到MFC文件夹下的SRC文件夹,SRC下是MFC源代码。路径:MFC|SRC|APPMODUL.CPP:_tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPTSTR lpCmdLine, int nCmdShow){// call shared/exported …

每天一个linux命令(性能、优化):【转载】free命令

free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。在Linux系统监控的工具中,free命令是最经常使用的命令之一。 1.命令格式: free [参数] 2.命令功能: free 命令显示系统使用和空闲…

gitee存放代码_git / gitee 提交本地仓库代码到Git或Gitee流程 及 常见报错

前提:在 Windows 下安装 git 客户端然后直接在 base 中执行命令1、本地初始化 git 设置git config --global user.name "你的名字或昵称"git config --global user.email "你的邮箱"2、进入项目文件夹,初始化目录 --通过命令 git in…

mysql可以存文档_MySQL 文档存储介绍

MySQL 文档存储 可以跳过底层数据结构创建、数据规范化和其它使用传统数据库时需要做的工作,直接存储数据。MySQL 可以提供 NoSQL JSON 文档存储Document Store了,这样开发者保存数据前无需规范化normalize数据、创建数据库,也无需在开发之前…

Maven项目配置、检出、运行

副标题:JDK安装到Maven运行 关键字:JDK SVN Maven Tomcat Eclipse IDEA 一、JDK 1、JDK包 JDK包 ../Java/jdk1.8 # 按需 图例 2、环境变量 步骤 计算机 → 属性 → 高级系统设置 → 环境变量 → 系统变量 → 新建/编辑 设置 JAVA_HOME ..…

mysql 存储过程代码_MySQL存储过程及常用函数代码解析

mysql存储过程的概念:存储在数据库当中可以执行特定工作(查询和更新)的一组SQL代码的程序段。mysql函数的概念:函数是完成特定功能的SQL语句,函数分为内置函数和自定义函数(user-defined function UDF)MySQL存储过程和函数的区别存储过程可以…

MySQL数据库恢复(使用mysqlbinlog命令)

1:开启binlog日志记录 修改mysql配置文件mysql.ini,在[mysqld]节点下添加 复制代码代码如下:# log-bin log-bin E:/log/logbin.log 路径中不要包含中文和空格。重启mysql服务。通过命令行停止和启动mysql服务 复制代码代码如下:c:\>net stop mysql…

mysql 创建数据库文件_mysql学习之通过文件创建数据库以及添加数据

1、# 创建数据库语句create database mydb default character set utf8;# 运用数据库语句use mydb;# 创建表格,这里只简单的创建一张表格# 设置InnoDB主要是为了事务操作的需要create table mytable(id int primary key auto_increment,name varchar(20),count int …

angularjs启动项目报ERROR in AppModule is not an NgModule解决方法

这主要是ts编译器版本问题,一般是因为ts编译器版本过高导致。 解决方式: npm uninstall -g typescriptnpm install -g typescripttsc -v 查看安装的typescript版本修改package.json中的typescript版本为当前电脑所安装版本 删除node_module重新安装cnpm …

mysql gtid 备份恢复_MYSQL数据库备份恢复

在实例存活的情况,可以在实例状态中查询ALL_GTID。在实例崩溃的情况,无法在实例状态中查询ALL_GTID。可以通过查询BINLOG中的Previous-GTIDs计算来获得ALL_GTID。下面列举与ALL_GTID相关的变量。与ALL_GTID相关的变量Previous-GTIDsPrevious-GTIDs格式如…

PMP 笔记

项目: 为创造独特的产品、服务或结果而进行的临时性工作。 项目特征: 独特性:Unique、临时性:Temporary、渐进明细。 渐进明细:预算越来越精细。比如三峡工程中,预算从10亿级的误差到1亿误差,再…

在mysql怎样查询地址和电话_Mysql数据查询

Mysql查询数据多次过滤条件:from、where、group by、having、distinct、order by、limit > 层层筛选后的结果查:select [distinct] 字段1 [[as] 别名1],...,字段n [[as] 别名n] from [数据库名.]表名 [条件];注:一条查询语句,可…

谷歌搜索技巧:搜索语法+隐藏彩蛋+高级设置

Google是一个非常精密成熟的搜索引擎,其搜索结果的丰富性和准确度较其他搜索引擎都要好,但大多数用户都还只是停留在搜索框中输入一两个关键字,然后点击“搜索”按钮的阶段,这一过程是非常低效和无谓的。学习一些搜索引擎常用的搜…