centos没有setting?centos镜像下载

本篇文章给大家谈谈centos没有setting,以及centos镜像下载对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

CentOS下SWAP分区建立及释放内存详解

方法一:

一、查看系统当前的分区情况:

free-m

二、创建用于交换分区的文件:

dd if=/dev/zero of=/whatever/swap bs=block_size(10M)count=number_of_block(3000)

三、设置交换分区文件:

mkswap/export/swap/swapfile

四、立即启用交换分区文件:

swapon/whateever/swap

五、若要想使开机时自启用,则需修改文件/etc/fstab中的swap行:

/whatever/swap swap swap defaults 0 0

方法二

增加交换分区空间的方法:

1.查看一下/etc/fstab确定目前的分区

2.swapoff/dev/hd**

3.free看一下是不是停了.

4.fdisk删了停掉的swap分区

5.重新用FDISK建一个新的SWAP分区

6.mkswap/dev/hd**把新的分区做成swap

7.swapon/dev/hd**打开swap

8.修改/etc/fstab

操作实例:

1.查看系统Swap空间使用

# free

total used free shared buffers cached

Mem: 513980 493640 20340 0 143808 271780

-/+ buffers/cache: 78052 435928

Swap: 1052248 21256 1030992

2.在空间合适处创建swap文件

# mkdir swap

# cd swap

# dd if=/dev/zero of=swapfile bs=1024 count=10000

10000+0 records in

10000+0 records out

# ls-al

total 10024

drwxr-xr-x 2 root root 4096 7月 28 14:58.

drwxr-xr-x 19 root root 4096 7月 28 14:57..

-rw-r--r-- 1 root root 10240000 7月 28 14:58 swapfile

# mkswap swapfile

Setting up swapspace version 1, size= 9996 KiB

3.激活swap文件

# swapon swapfile

# ls-l

total 10016

-rw-r--r-- 1 root root 10240000 7月 28 14:58 swapfile

# free

total used free shared buffers cached

Mem: 513980 505052 8928 0 143900 282288

-/+ buffers/cache: 78864 435116

Swap: 1062240 21256 1040984

生成1G的文件

# dd if=/dev/zero of=swapfile bs=10M count=3000

创建为swap文件

#mkswap swapfile

让swap生效

#swapon swapfile

查看一下swap

#swapon-s

[root@cluster/]# swapon-sFilenameTypeSizeUsedPriority/dev/sda3               partition10201161728-1/state/partition1/swap/swapfile    file307199920-2

加到fstab文件中让系统引导时自动启动

#vi/etc/fstab

/state/partition1/swap/swapfil swap swap defaults 0 0

完毕。

二,LINUX释放内存

细心的朋友会注意到,当你在linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching.这个问题,貌似有不少人在问,不过都没有看到有什么很好解决的办法.那么我来谈谈这个问题.

先来说说free命令

[root@cluster/]# free-m

total   used   free  shared buffers  cached

Mem:    31730  31590   139    0    37  27537

-/+ buffers/cache:   4015  27714

Swap:   30996    1  30994

其中:

total内存总数

used已经使用的内存数

free空闲的内存数

shared多个进程共享的内存总额

buffers Buffer Cache和cached Page Cache磁盘缓存的大小

-buffers/cache的内存数:used- buffers- cached

+buffers/cache的内存数:free+ buffers+ cached

可用的memory=free memory+buffers+cached

有了这个基础后,可以得知,我现在used为163MB,free为86,buffer和cached分别为10,94

那么我们来看看,如果我执行复制文件,内存会发生什么变化.

[root@cluster/]# cp-r/etc~/test/

[root@cluster/]# free-m

total   used   free  shared buffers  cached

Mem:    31730  31590   139    0    37  27537

-/+ buffers/cache:   4015  27714

Swap:   30996    1  30994

在我命令执行结束后,used为244MB,free为4MB,buffers为8MB,cached为174MB,天呐都被cached吃掉了.别紧张,这是为了提高文件读取效率的做法.

引用[url][/url]为了提高磁盘存取效率, Linux做了一些精心的设计,除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换),还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有效缩短了 I/O系统调用(比如read,write,getdents)的时间。

那么有人说过段时间,linux会自动释放掉所用的内存,我们使用free再来试试,看看是否有释放?

[root@cluster/]# free-m

total   used   free  shared buffers  cached

Mem:    31730  31590   139    0    37  27537

-/+ buffers/cache:   4015  27714

Swap:   30996    1  30994

MS没有任何变化,那么我能否手动释放掉这些内存呢???回答是可以的!

/proc是一个虚拟文件系统,我们可以通过对它的读写操作做为与kernel实体间进行通信的一种手段.也就是说可以通过修改/proc中的文件,来对当前kernel的行为做出调整.那么我们可以通过调整/proc/sys/vm/drop_caches来释放内存.操作如下:

[root@cluster/]# cat/proc/sys/vm/drop_caches

0

首先,/proc/sys/vm/drop_caches的值,默认为0

[root@cluster/]# sync

手动执行sync命令(描述:sync命令运行 sync子例程。如果必须停止系统,则运行 sync命令以确保文件系统的完整性。sync命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O和读写映射文件)

[root@server test]# echo 3/proc/sys/vm/drop_caches

[root@server test]# cat/proc/sys/vm/drop_caches

3

将/proc/sys/vm/drop_caches值设为3

[root@server test]# free-m

total   used   free  shared buffers  cached

Mem:     249    66   182    0    0    11

-/+ buffers/cache:    55   194

Swap:    511    0   511

再来运行free命令,发现现在的used为66MB,free为182MB,buffers为0MB,cached为11MB.那么有效的释放了buffer和cache.

有关/proc/sys/vm/drop_caches的用法在下面进行了说明

/proc/sys/vm/drop_caches(since Linux 2.6.16)

Writing to this file causes the kernel to drop clean caches,

dentries and inodes from memory, causing that memory to become free.

To free pagecache, use echo 1/proc/sys/vm/drop_caches;

to free dentries and inodes, use echo 2/proc/sys/vm/drop_caches;

to free pagecache, dentries and inodes, use echo 3/proc/sys/vm/drop_caches.

Because this is a non-destructive operation and dirty objects

这几天发现linux系统内存一直涨,即使把apache和mysql关闭了,内存也不释放,可以使用以下脚本来释放内存:

脚本内容:

#!/bin/sh

# cache释放:

# To free pagecache:

/bin/sync

/bin/sync

#echo 1/proc/sys/vm/drop_caches

# To free dentries and inodes:

#echo 2/proc/sys/vm/drop_caches

# To free pagecache, dentries and inodes:

echo 3/proc/sys/vm/drop_caches

利用系统crontab实现每天自动运行:

crontab-e

输入以下内容:

00 00***/root/Cached.sh

每天0点释放一次内存,这个时间可以根据自己需要修改设置

在运行./Cached.sh时如果提示错误:Permission denied权限的问题,可以运行

centos6.5安装到U盘出问题

usblinux把linux系统安装到u盘里

加电

BIOS找启动方式,找设备

MBR

grub

vmlinux initrd

产生init

/etc/inittab-->找到应该启动的级别

按照不同的级别启动不同类型的服务/etc/rcX.d/

/etc/rc.sysinit

/etc/rc.local

产生终端可以登录

ls/root/install.log

livecd不用安装,直接可以使用系统的CD,DVD

回顾开机启动的过程:

开机-->bios(配置主板的程序,basic input and output system,加电自检,找到启动设备的编号)-->找到mbr(master bootloader record,它是属于硬盘的0磁盘0扇区)-->grub-->通过grub找到vmlinuz和initrd(驱动硬件)-->内核启动,产生init进程-->/etc/inittab(确定系统的启动级别)-->/etc/rc.sysinit(获取主机的网络环境和主机类型,测试与载入设备,是否启动selinux,模块的加载,设置系统时间.................)-->/etc/rc.local

与USB有关的模块

[root@li~]# lsmod|grep ci

uhci_hcd 25421 0

ohci_hcd 24553 0

ehci_hcd 33869 0

--因为U盘分区在windows下不认,所以我这里两G的U盘,直接都用来做usblinux

1,首先删除U盘里原有分区

第一种:用fdisk/dev/sdb,然后用d命令去删除

第二种:dd if=/dev/zero of=/dev/sdb bs=1024 count=1--删除磁盘分区信息

重新按照规划的去分区:

Disk/dev/sdb: 2000 MB, 2000570368 bytes

62 heads, 62 sectors/track, 1016 cylinders

Units= cylinders of 3844* 512= 1968128 bytes

Device Boot Start End Blocks Id System

/dev/sdb1* 1 763 1466455 83 Linux

/dev/sdb2 764 1016 486266 82 Linux swap/ Solaris

Command(m for help): w

--或者分为1G做usblinux,500m做swap,500m留给fat32

Disk/dev/sdb: 2000 MB, 2000570368 bytes

62 heads, 62 sectors/track, 1016 cylinders

Units= cylinders of 3844* 512= 1968128 bytes

Device Boot Start End Blocks Id System

/dev/sdb1* 1 509 978267 83 Linux

/dev/sdb2 510 764 490110 82 Linux swap/ Solaris

/dev/sdb3 765 1016 484344 b W95 FAT32

Command(m for help): w

[root@li~]# partprobe

--有些U盘报kerenl相关的两到三段信息,就不要使用多分区,就分一个分区。

2,格式化分区,并挂载

[root@li www]# partprobe--fdisk分区后,都要用此命令刷新

--这一步,有很多U盘会报错,如果报错的话最好去windows虚拟机下全格一下,再重新在linux下来做

[root@li www]# mkfs-t ext3/dev/sdb1

[root@li www]# mkswap/dev/sdb2

[root@li www]# mkdir/usb

[root@li www]# mount/dev/sdb1/usb/--建立一个目录,挂载/dev/sdb1

3,安装基本的目录结构

准备光盘iso文件,挂载到一个目录去

[root@li www]# mount/share/iso/rhel-5.4-server-i386-dvd.iso/yum/-o loop

[root@li www]# cd/yum/Server/

[root@li Server]# rpm-qip filesystem-2.4.0-2.i386.rpm

Description:

filesystem软件包是安装在红帽 Linux系统上的一个基本

软件包。filesystem含有一个 Linux操作系统的基本目录布局,

包括各目录的正确许可权限。

要使用--nodeps脱离依赖性才可以安装

[root@li Server]# rpm-ivh--root=/usb/--nodeps filesystem-2.4.0-2.i386.rpm

或者先装setup包,再装filesystem包

[root@li~]# rpm-ivh--root=/usb/share/yum/Server/setup-2.5.58-7.el5.noarch.rpm

[root@li~]# rpm-ivh--root=/usb/share/yum/Server/filesystem-2.4.0-2.i386.rpm

[root@li~]# ls/usb--一个基本的目录布局就已经装好了

bin etc lost+found opt sbin sys var

boot home media proc selinux tmp

dev lib mnt root srv usr

4,安装相应的软件包,也就是定制功能

下面最主要的一步就是安装系统的软件包,首先要思考安装的这个USB系统需要什么功能,比如最基本的命令ls,cd等

这里可以选择使用busybox(是一个基本命令工具集),但如果对其不是特别熟悉,还是按基本命令一个一个的来选

首先要装bash包,包含50多个内部命令

[root@dns Server]# chroot/usb--不装bash无法 chroot进去

chroot: cannot run command `/bin/bash': No such file or directory

[root@dns Server]# rpm-qf/bin/ls

coreutils-5.97-23.el5

[root@dns Server]# rpm-qf `which vi`

vim-minimal-7.0.109-6.el5

[root@dns Server]# rpm-qf `which vim`

vim-enhanced-7.0.109-6.el5

[root@dns Server]# rpm-qf `which ping`

iputils-20020927-46.el5

[root@dns Server]# rpm-qf `which mount`

util-linux-2.13-0.52.el5

[root@dns Server]# rpm-qf `which tar`

tar-1.15.1-23.0.1.el5

[root@dns Server]# rpm-qf `which rpm`

rpm-4.4.2.3-18.el5

[root@dns Server]# rpm-qf `which man`

man-1.6d-1.1

[root@dns Server]# rpm-qf `which ssh`

openssh-clients-4.3p2-36.el5

[root@dns Server]# rpm-qf `which awk`

gawk-3.1.5-14.el5

[root@dns Server]# rpm-qf `which sed`

sed-4.1.5-5.fc6

[root@dns Server]# rpm-qf `which grep`

grep-2.5.1-55.el5

[root@dns Server]# rpm-qf `which find`

findutils-4.2.27-6.el5

[root@dns Server]# rpm-qf `which locate`

mlocate-0.15-1.el5.2

[root@dns Server]# rpm-qf `which useradd`

shadow-utils-4.0.17-14.el5

[root@dns Server]# rpm-qf `which passwd`

passwd-0.73-1

[root@dns Server]# rpm-qf `which init`

SysVinit-2.86-15.el5

[root@dns Server]# rpm-qf `which clear`

ncurses-5.5-24.20060715

[root@dns Server]# rpm-qf `which ps`

procps-3.2.7-11.1.el5

[root@dns Server]# rpm-qf/usr/bin/which

which-2.16-7

[root@dns Server]# rpm-qf `which ifconfig`

net-tools-1.60-78.el5

[root@dns Server]# rpm-qf `which fdisk`

util-linux-2.13-0.52.el5

[root@dns Server]# rpm-qf `which partprobe`

parted-1.8.1-23.el5

[root@li~]# rpm-qf `which showmount`

nfs-utils-1.0.9-42.el5

[root@li~]# rpm-qf `which service`

initscripts-8.45.30-2.el5

[root@li Server]# rpm-qf `which bzip2`

bzip2-1.0.3-4.el5_2

[root@li Server]# rpm-qf `which gzip`

gzip-1.3.5-10.el5

--经过上面对基本命令的包查找,最终安装下列这些基本包

[root@dns Server]# yum install--installroot=/usb bash coreutils vim-minimal vim-enhanced iputils util-linux tar rpm man openssh-clients gawk sed grep findutils mlocate shadow-utils passwd SysVinit ncurses procps which net-tools util-linux parted nfs-utils initscripts bzip2 gzip

--如果上面步骤安装完后,有忘记安装的包,再使用yum装不上去

[root@li~]# yum install--installroot=/usb iptables

Loaded plugins: downloadonly, rhnplugin, security

This system is not registered with RHN.

RHN support will be disabled.

Setting up Install Process

No package iptables available.

Nothing to do

--所以再安装的话使用rpm去安装

[root@li~]# rpm-ivh--root=/usb/share/yum/Server/iptables-1.3.5-5.3.el5.i386.rpm

5,安装启动引导文件和模块

[root@li Server]# chroot/usb--使用此命令,就是以/usb目录为根目录了

bash-3.2# ls/boot/--可以看到现在usblinux里的/boot目录没有任何文件

bash-3.2# exit--用exit退出chroot模式

exit

[root@li~]# cp/etc/skel/.bash*/usb/root/-rf

--拷环境变量模版过去

定制支持usb存储启动的ramdisk(initrd文件)

[root@li Server]# mkinitrd--with usb_storage/usb/boot/initrd.img `uname-r`

从真机上拷贝vmlinuz到usblinux对应目录

[root@li Server]# cp/boot/vmlinuz-2.6.18-164.el5/usb/boot/vmlinuz

从真机上拷贝内核模块到usblinux对应目录

[root@li Server]# cp/lib/modules/2.6.18-164.el5//usb/lib/modules/-rf

拷内核源码,可选步骤

[root@li Server]# mkdir/usb/usr/src/kernels/

[root@dns Server]# cp/usr/src/kernels/2.6.18-164.el5-i686//usb/usr/src/kernels/-rf

6,安装并手动写grub

--如果是用真实机分区来代替U盘做usblinux的话,这一步不用做,只需要把这个分区的引导信息加入到真实机的配置文件里就可以了

安装grub包,用--nodeps脱离依赖性

[root@li Server]# rpm-ivh--nodeps--root=/usb grub-0.97-13.5.i386.rpm

--脱离依赖安装,会没有splash.xpm.gz图片,可以从真机拷一个

也可以按下面安装

[root@li~]# rpm-ivh--root=/usb/share/yum/Server/*logos*

warning:/share/yum/Server/redhat-logos-4.9.16-1.noarch.rpm

[root@li~]# rpm-ivh--root=/usb/share/yum/Server/grub-0.97-13.5.i386.rpm

--但这样安装完后,grub目录下只有一个背景图片

[root@dns Server]# ls/usb/boot/grub/

splash.xpm.gz

grub-install安装到/dev/sdb

[root@li Server]# grub-install--root-directory=/usb--recheck/dev/sdb

--如果是用真实机分区来做的话,这里/dev/sdb改成/dev/sda

--grub-install之后,grub目录的基本文件就有了(除了配置文件grub.conf)

[root@dns Server]# ls/usb/boot/grub/

device.map iso9660_stage1_5 splash.xpm.gz vstafs_stage1_5

e2fs_stage1_5 jfs_stage1_5 stage1 xfs_stage1_5

fat_stage1_5 minix_stage1_5 stage2

ffs_stage1_5 reiserfs_stage1_5 ufs2_stage1_5

修改device.map

[root@li Server]# vim/usb/boot/grub/device.map

(hd0)/dev/sdb

--如果是用真实机分区来做的话,这里/dev/sdb改成/dev/sda

手动写grub.conf文件

--下面是以u盘来做的写法

[root@li Server]# vim/usb/boot/grub/grub.conf

default=0

timeout=-1

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title usblinux

root(hd0,0)

kernel/boot/vmlinuz ro root=/dev/sdb1

initrd/boot/initrd.img

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

--因为我这次是使用真实机的/dev/sda14来做根./dev/sda15做swap

上面的第6步不用做,只做这一小段就好了

所以把下面这段加到真实机的/boot/grub/grub.conf里

title usblinux

root(hd0,13)--因为我模拟的这个usblinux的根为sda14,所以这里写13

kernel/boot/vmlinuz ro root=/dev/sda14

initrd/boot/initrd.img

# grub-install/dev/sda--加完后,就grub-install安装一下

--------------------------------------------------

7,拷贝密码文件,拷贝环境变量

--这一步可以不拷,因为现在usblinux上默认有passwd和group文件,没有shadow和gshadow

--里面默认有root用户和系统用户

[root@li Server]# cp/etc/passwd/usb/etc/passwd

[root@li Server]# chroot/usb/--再次chroot到/usb目录,提示符就变了

[root@li/]# pwconv--同步/etc/passwd和/etc/shadow

[root@li/]# grpconv--同步/etc/group和/etc/gshadow

[root@li/]# passwd root--修改root的密码,到时候登录需要

8,手动编写fstab文件

[root@li/]# vim/etc/fstab--注意这里是usblinux系统里的fstab,因为已经chroot进来了

/dev/sdb1/ ext3 defaults 0 0

/dev/sdb2 swap swap defaults 0 0

devpts/dev/pts devpts gid=5,mode=620 0 0

sysfs/sys sysfs defaults 0 0

proc/proc proc defaults 0 0

tmpfs/dev/shm tmpfs defaults 0 0

--用真实机的/dev/sda14来做根./dev/sda15做swap的话,就把上面的sdb1换成sda14,sdb2换成sda15,其它的不变

9,让usblinux支持网络

从真机拷贝eth0的配置文件到usblinux对应目录中:

[root@li Server]# cp/etc/sysconfig/network-scripts/ifcfg-eth0/usb/etc/sysconfig/network-scripts/

修改网络配置文件,可以改成静态IP

[root@li Server]# vim/usb/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=dhcp

ONBOOT=yes

从真机拷贝全局网络配置文件到usblinux对应目录中

[root@li Server]# cp/etc/sysconfig/network/usb/etc/sysconfig/

从真机拷贝modprobe.conf到usblinux对应目录中

[root@li Server]# cp/etc/modprobe.conf/usb/etc/

alias eth0 8139too--注意这一句在不同的系统里可能要修改,现在这里的网卡模块是8139too,所以这里是8139too就可以;这个在虚拟机里为pcnet32

然后重启系统,在bios选择使用usb引导进入系统,去验证功能

--如果是真实机分区做的,就不用改bios,直接在grub选择菜单选择usblinux引导进入就可以了

-------------------------------------------------------------

上面的步骤里还没有去加的功能有动态获取IP(需要安装dhclient包)

没有yum命令,没有图形界面(有需要的话,自己使用rpm安装yum命令后,使用yum安装图形包的两个组)

启动时有大量无用信息,可以在grub.conf里加rhgb quiet来解决

但重启后还会有一个错误信息:

(会有一个usb_storage的报错信息,但此信息没有影响,是mkinitrd--with usb_storage时造成的)

如果一定要除掉这句报错,可以手工修改initrd文件

# cd/tmp

# cp/usb/boot/initrd.img/tmp/initrd.img.gz

# gunzip initrd.img.gz

# cpio-i--make-directories< initrd.img

# rm initrd.img

# vim init--打开,删除以下的几行

echo"loading usb-storage.ko module"

insmod/lib/usb-storage.ko

echo waiting for dirver initialization

stabilized/proc/bus/usb/devices

echo waiting for driver initializtin

# find.| cpio-c-o>../initrd.img

# gzip-9../initrd.img

# cp../initrd.mg.gz/usb/boot/initrd.img

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

怎样在CentOS 7.0上安装和配置VNC服务器

1.安装 X-Window

首先我们需要安装 X-Window,在终端中运行下面的命令,安装会花费一点时间。

# yum check-update# yum groupinstall"X Window System"

installing x windows

#yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts

install gnome classic session

###设置默认启动图形界面# unlink/etc/systemd/system/default.target# ln-sf/lib/systemd/system/graphical.target/etc/systemd/system/default.target

configuring graphics

# reboot

在服务器重启之后,我们就有了一个工作着的 CentOS 7桌面环境了。

现在,我们要在服务器上安装 VNC服务器了。

2.安装 VNC服务器

现在要在我们的 CentOS 7上安装 VNC服务器了。我们需要执行下面的命令。

# yum install tigervnc-server-y

vnc server

3.配置 VNC

然后,我们需要在/etc/systemd/system/目录里创建一个配置文件。我们可以将/lib/systemd/sytem/vncserver@.service拷贝一份配置文件范例过来。

# cp/lib/systemd/system/vncserver@.service/etc/systemd/system/vncserver@:1.service

copying vnc server configuration

接着我们用自己最喜欢的编辑器(这儿我们用的 nano)打开/etc/systemd/system/vncserver@:1.service,找到下面这几行,用自己的用户名替换掉。举例来说,我的用户名是 linoxide所以我用 linoxide来替换掉:

ExecStart=/sbin/runuser-l<USER>-c"/usr/bin/vncserver%i"PIDFile=/home/<USER>/.vnc/%H%i.pid

替换成

ExecStart=/sbin/runuser-l linoxide-c"/usr/bin/vncserver%i"PIDFile=/home/linoxide/.vnc/%H%i.pid

如果是 root用户则

ExecStart=/sbin/runuser-l root-c"/usr/bin/vncserver%i"PIDFile=/root/.vnc/%H%i.pid

configuring user

好了,下面重启 systemd。

# systemctl daemon-reload

最后还要设置一下用户的 VNC密码。要设置某个用户的密码,必须要有能通过 sudo切换到用户的权限,这里我用 linoxide的权限,执行“su linoxide”就可以了。

# su linoxide$ sudo vncpasswd

setting vnc password

确保你输入的密码多于6个字符

4.开启服务

用下面的命令(永久地)开启服务:

$ sudo systemctl enable vncserver@:1.service

启动服务。

$ sudo systemctl start vncserver@:1.service

5.防火墙设置

我们需要配置防火墙来让 VNC服务正常工作。

$ sudo firewall-cmd--permanent--add-service vnc-server$ sudo systemctl restart firewalld.service

allowing firewalld

现在就可以用 IP和端口号(LCTT译注:例如 192.168.1.1:1,这里的端口不是服务器的端口,而是视 VNC连接数的多少从1开始排序)来连接 VNC服务器了。

6.用 VNC客户端连接服务器

好了,现在已经完成了 VNC服务器的安装了。要使用 VNC连接服务器,我们还需要一个在本地计算机上安装的仅供连接远程计算机使用的 VNC客户端。

阅读剩余
THE END