首页 > 代码库 > Linux基础知识day-5
Linux基础知识day-5
基础命令:
51.mkfs:用于格式化磁盘。例如:格式化/dev/sdb1
mkfs.ext4 /de/sdb1
mkfs.ext3 /de/sdb1
mkfs.xfs /de/sdb1
mkfs.vfat /de/sdb1
1 [root@localhost ~]# mkfs.xfs /dev/sdb1 2 meta-data=http://www.mamicode.com/dev/sdb1 isize=512 agcount=4, agsize=65472 blks 3 = sectsz=512 attr=2, projid32bit=1 4 = crc=1 finobt=0, sparse=0 5 data = http://www.mamicode.com/bsize=4096 blocks=261888, imaxpct=25"color: #008080"> 6 = sunit=0 swidth=0 blks 7 naming =version 2 bsize=4096 ascii-ci=0 ftype=1 8 log =internal log bsize=4096 blocks=855, version=2 9 = sectsz=512 sunit=0 blks, lazy-count=1 10 realtime =none extsz=4096 blocks=0, rtextents=0 11 12 [root@localhost /]# mkfs.ext4 /dev/sdb1 13 mke2fs 1.42.9 (28-Dec-2013) 14 Filesystem label= 15 OS type: Linux 16 Block size=4096 (log=2) 17 Fragment size=4096 (log=2) 18 Stride=0 blocks, Stripe width=0 blocks 19 65536 inodes, 261888 blocks 20 13094 blocks (5.00%) reserved for the super user 21 First data block=0 22 Maximum filesystem blocks=268435456 23 8 block groups 24 32768 blocks per group, 32768 fragments per group 25 8192 inodes per group 26 Superblock backups stored on blocks: 27 32768, 98304, 163840, 229376 28 29 Allocating group tables: done 30 Writing inode tables: done 31 Creating journal (4096 blocks): done 32 Writing superblocks and filesystem accounting information: done 33 34 [root@localhost /]#
52.mkswap和swapon
mkswap:用于创建交换分区
swapon:用户挂载交换分区
例如:
1 [root@localhost /]# mkswap /dev/sdb1 2 mkswap: /dev/sdb1: warning: wiping old ext4 signature. 3 Setting up swapspace version 1, size = 1047548 KiB 4 no label, UUID=8392318c-5956-492a-96c0-f98f484bd1ef 5 [root@localhost /]# 6 [root@localhost /]# swapon /dev/sdb1 7 [root@localhost /]# lsblk 8 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT 9 sda 8:0 0 8G 0 disk 10 ├─sda1 8:1 0 1G 0 part /boot 11 └─sda2 8:2 0 7G 0 part 12 ├─cl-root 253:0 0 6.2G 0 lvm / 13 └─cl-swap 253:1 0 820M 0 lvm [SWAP] 14 sdb 8:16 0 1G 0 disk 15 └─sdb1 8:17 0 1023M 0 part [SWAP] 16 sr0 11:0 1 4G 0 rom /var/www/html/iso 17 [root@localhost /]#
53.ifconfig:用于查看激活的网卡信息
如果没有ifconfig命令,可以安装net-tools包就有了。
ifup:激活一块网卡
ifdown:停用一块网卡
ifconfig [网卡名] [IP/Netmask] :临时配置一个IP
1 [root@localhost ~]# ifconfig 2 ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 3 inet 192.168.119.129 netmask 255.255.255.0 broadcast 192.168.119.255 4 inet6 fe80::d060:4681:d1fd:8d0 prefixlen 64 scopeid 0x20<link> 5 ether 00:0c:29:c3:86:17 txqueuelen 1000 (Ethernet) 6 RX packets 311 bytes 90725 (88.5 KiB) 7 RX errors 0 dropped 0 overruns 0 frame 0 8 TX packets 222 bytes 32237 (31.4 KiB) 9 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 10 11 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 12 inet 127.0.0.1 netmask 255.0.0.0 13 inet6 ::1 prefixlen 128 scopeid 0x10<host> 14 loop txqueuelen 1 (Local Loopback) 15 RX packets 0 bytes 0 (0.0 B) 16 RX errors 0 dropped 0 overruns 0 frame 0 17 TX packets 0 bytes 0 (0.0 B) 18 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 19 20 virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 21 inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255 22 ether 52:54:00:67:b1:2a txqueuelen 1000 (Ethernet) 23 RX packets 0 bytes 0 (0.0 B) 24 RX errors 0 dropped 0 overruns 0 frame 0 25 TX packets 0 bytes 0 (0.0 B) 26 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
54.网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-XXXX :ifcfg-XX开头的网卡对应名称文件。可更改配置文件然后重启网络服务生效配置。
如果网卡没有下列条目,可以手动添加至文件中。
TYPE:类型
BOOTPROTO:网卡工作模式(静态or动态)
IPADDR:IP地址
NETMASK:子网掩码
ONBOOT:服务启动时,是否启动网卡
DNS1:主DNS地址
DNS2:副DNS地址
GATEWAY:网关地址
55.nmcli:使用命令配置网卡信息。此种方式相较于上面的命令复杂但是管理很方便。推荐新手使用上面的两种方式。
nmcli中connection指的是一种逻辑上的网卡。device指的是真实的物理设备。connection和device绑定起来就相当于给某个device配置上网络信息。
nmcli connection show:显示连接信息
1 [root@localhost ~]# nmcli connection show 2 NAME UUID TYPE DEVICE 3 ens33 97218e89-b4d0-49a8-a37a-ac86d833c081 802-3-ethernet ens33 4 virbr0 d3bbdc43-cead-4a09-811f-8c0661350ad8 bridge virbr0 5 [root@localhost ~]#
nmcli device show:显示设备信息
1 [root@localhost ~]# nmcli device show 2 GENERAL.DEVICE: virbr0 3 GENERAL.TYPE: bridge 4 GENERAL.HWADDR: 52:54:00:67:B1:2A 5 GENERAL.MTU: 1500 6 GENERAL.STATE: 100 (connected) 7 GENERAL.CONNECTION: virbr0 8 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1 9 IP4.ADDRESS[1]: 192.168.122.1/24 10 IP4.GATEWAY: 11 IP6.GATEWAY: 12 13 GENERAL.DEVICE: ens33 14 GENERAL.TYPE: ethernet 15 GENERAL.HWADDR: 00:0C:29:C3:86:17 16 GENERAL.MTU: 1500 17 GENERAL.STATE: 100 (connected) 18 GENERAL.CONNECTION: ens33 19 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/0 20 WIRED-PROPERTIES.CARRIER: on 21 IP4.ADDRESS[1]: 192.168.119.129/24 22 IP4.GATEWAY: 23 IP4.DNS[1]: 192.168.119.1 24 IP4.DOMAIN[1]: localdomain 25 IP6.ADDRESS[1]: fe80::d060:4681:d1fd:8d0/64 26 IP6.GATEWAY: 27 28 GENERAL.DEVICE: lo 29 GENERAL.TYPE: loopback 30 GENERAL.HWADDR: 00:00:00:00:00:00 31 GENERAL.MTU: 65536 32 GENERAL.STATE: 10 (unmanaged) 33 GENERAL.CONNECTION: -- 34 GENERAL.CON-PATH: -- 35 IP4.ADDRESS[1]: 127.0.0.1/8 36 IP4.GATEWAY: 37 IP6.ADDRESS[1]: ::1/128 38 IP6.GATEWAY:
nmcli connection [up|down|reload] [连接名]:来启用、关闭、重载某个连接
[root@localhost ~]# nmcli connection show NAME UUID TYPE DEVICE eth1 8d601dba-ddb1-433f-8934-8f79cf9d8c67 802-3-ethernet ens33 ens33 97218e89-b4d0-49a8-a37a-ac86d833c081 802-3-ethernet -- [root@localhost ~]# nmcli connection down eth1 [root@localhost ~]# nmcli connection show NAME UUID TYPE DEVICE ens33 97218e89-b4d0-49a8-a37a-ac86d833c081 802-3-ethernet ens33 eth1 8d601dba-ddb1-433f-8934-8f79cf9d8c67 802-3-ethernet -- [root@localhost ~]#
nmcli connection add con-name [连接名] type [连接类型] ifname [设备名]:添加一个连接并绑定设备
1 [root@localhost ~]# nmcli connection add con-name eth1 type ethernet ifname ens33 2 Connection ‘eth1‘ (8d601dba-ddb1-433f-8934-8f79cf9d8c67) successfully added. 3 [root@localhost ~]# nmcli connection show 4 NAME UUID TYPE DEVICE 5 ens33 97218e89-b4d0-49a8-a37a-ac86d833c081 802-3-ethernet ens33 6 eth1 8d601dba-ddb1-433f-8934-8f79cf9d8c67 802-3-ethernet -- //ens33设备目前绑定在 ens33连接上,所以 eth1 的DEVICE信息为“--”。 7 [root@localhost ~]#
nmcli connection modify eth1 ipv4.addresses "192.168.119.130/24" ipv4.gateway 192.168.1.1 ipv4.dns 114.114.114.114 ipv4.method manual connection.autoconnect yes
//上面的命令是为 eth1 配置 IP地址:192.168.119.130/24 网关:192.168.1.1 DSN地址:114.114.114.114 地址为静态地址并设置为开机自动启动。
nmcli connection modify [连接名] ipv4.addresses "[IP地址/掩码]" ipv4.gateway [网关地址] ipv4.dns [DNS地址] ipv4.method [模式] connection.autoconnect yes[开机自启]
1 [root@localhost ~]# nmcli connection modify eth1 ipv4.addresses "192.168.119.130/24" ipv4.gateway 192.168.1.1 ipv4.dns 114.114.114.114 ipv4.method manual connection.autoconnect yes 2 3 [root@localhost ~]# nmcli connection show eth1 4 connection.id: eth1 5 connection.uuid: 8d601dba-ddb1-433f-8934-8f79cf9d8c67 6 connection.stable-id: -- 7 connection.interface-name: ens33 8 connection.type: 802-3-ethernet 9 connection.autoconnect: yes 10 connection.autoconnect-priority: 0 11 connection.timestamp: 1496156248 12 connection.read-only: no 13 connection.permissions: 14 connection.zone: -- 15 connection.master: -- 16 connection.slave-type: -- 17 connection.autoconnect-slaves: -1 (default) 18 connection.secondaries: 19 connection.gateway-ping-timeout: 0 20 connection.metered: unknown 21 connection.lldp: -1 (default) 22 802-3-ethernet.port: -- 23 802-3-ethernet.speed: 0 24 802-3-ethernet.duplex: -- 25 802-3-ethernet.auto-negotiate: yes 26 802-3-ethernet.mac-address: -- 27 802-3-ethernet.cloned-mac-address: -- 28 802-3-ethernet.generate-mac-address-mask:-- 29 802-3-ethernet.mac-address-blacklist: 30 802-3-ethernet.mtu: auto 31 802-3-ethernet.s390-subchannels: 32 802-3-ethernet.s390-nettype: -- 33 802-3-ethernet.s390-options: 34 802-3-ethernet.wake-on-lan: 1 (default) 35 802-3-ethernet.wake-on-lan-password: -- 36 ipv4.method: manual 37 ipv4.dns: 114.114.114.114 38 ipv4.dns-search: 39 ipv4.dns-options: (default) 40 ipv4.dns-priority: 0 41 ipv4.addresses: 192.168.119.130/24 42 ipv4.gateway: 192.168.1.1 43 ipv4.routes: 44 ipv4.route-metric: -1 45 ipv4.ignore-auto-routes: no 46 ipv4.ignore-auto-dns: no 47 ipv4.dhcp-client-id: -- 48 ipv4.dhcp-timeout: 0 49 ipv4.dhcp-send-hostname: yes 50 ipv4.dhcp-hostname: -- 51 ipv4.dhcp-fqdn: -- 52 ipv4.never-default: no 53 ipv4.may-fail: yes 54 ipv4.dad-timeout: -1 (default) 55 ipv6.method: auto 56 ipv6.dns: 57 ipv6.dns-search: 58 ipv6.dns-options: (default) 59 ipv6.dns-priority: 0 60 ipv6.addresses: 61 ipv6.gateway: -- 62 ipv6.routes: 63 ipv6.route-metric: -1 64 ipv6.ignore-auto-routes: no 65 ipv6.ignore-auto-dns: no 66 ipv6.never-default: no 67 ipv6.may-fail: yes 68 ipv6.ip6-privacy: -1 (unknown) 69 ipv6.addr-gen-mode: stable-privacy 70 ipv6.dhcp-send-hostname: yes 71 ipv6.dhcp-hostname: -- 72 ipv6.token: -- 73 [root@localhost ~]#
56.route:查看本机的路由信息
添加网关:
route add default gw [网关IP] dev [网卡名]
删除网关:
route add default gw [网关IP]
57.systemctl :控制服务的启动停止。
systemctl [stop|start|restart] [服务名]
58.rpm:用于安装本地的rpm包。
用法rpm [选项] [参数]
-qa:查询系统已安装的所有软件包
-ivh:安装软件包
-qi:查询软件包信息
-ql:查询软件包中的文件
-qf:查看某个文件是那个rpm包产生的
-e:卸载rpm包
59.yum:centos/redhat/Fedora中的 软件包管理程序。
安装软件包:
yum install [软件包名]
删除软件包:
yum remove [软件包名]
查询软件包:
yum search [软件包名]
建立yum源缓存:
yum makecache
查看源列表:
yum repolist
安装软件包组:
yum groupinstall [软件包组名]
删除软件包组:
yum groupremove [软件包名]
清空yum缓存:
yum clean all
创建仓库:
createrepo [rpm包文件夹]
自定义repo文件,使用本地iso内的源:
1)编辑配置文件:vim /etc/yum.repos.d/iso.rpeo ,并移除其他所有的repo文件。
2)文件内容如下:
[name] //源名称,不允许包含空格
name=lcoal iso //源简介,随意填写
baseurl=file:///media //源地址,支持http、ftp、file(本地文件)
gpgcheck=0 //是否校验,0不校验,1校验(需提供密钥文件)
enabled=1 //是否启用这个源,1启用,0不启用
3)确保本地iso挂载正确,baseurl填写的挂载点对。执行yum clean all 清空缓存。
4)执行yum makecache,建立缓存。
源码安装软件:
例如安装Python3.6.1:
1)从官网获取源码包:https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
2)解压Python-3.6.1.tgz。
1 [root@localhost Downloads]# tar xvf Python-3.6.1.tgz
3)进入解压出的目录执行:./configure --prefix=/usr/local/python36 ,--prefix参数用于指定安装目录。
1 [root@localhost Python-3.6.1]# ./configure --prefix=/usr/local/python36
4)通过检查之后执行make && make install,如报错请查询错误原因解决。
1 [root@localhost Python-3.6.1]# make && make install
5)进入安装目录,执行./python3,正确执行安装完毕。想在系统任何位置调用Python就添加路径变量到系统就行。
[root@localhost bin]# cd /usr/local/python36/ [root@localhost python36]# ls bin include lib share [root@localhost python36]# cd bin/ [root@localhost bin]# ls 2to3 easy_install-3.6 idle3.6 pip3.6 pydoc3.6 python3.6 python3.6m python3-config pyvenv-3.6 2to3-3.6 idle3 pip3 pydoc3 python3 python3.6-config python3.6m-config pyvenv [root@localhost bin]# ./python3 Python 3.6.1 (default, May 31 2017, 01:22:32) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> exit() [root@localhost bin]#
Linux基础知识day-5