译者:ChenYi
在本系列先前的文章中,我们讨论了关于怎样在Windows10上开启WSL之旅[1]的内容。作为本系列的最后一篇文章,我们打算阐述一些能在Windows10上广泛使用的Linux命令。
话题深入之前,请先让我们明晰本教程所适用的人群。本文适用于使用Windows10系统,而且又想在Azure、AWS或是私有云平台上学习Linux的中级开发者。换句话说,就是为了帮助初次接触Linux系统的Windows10用户。
您的工作任务决定了您所须要的命令,而我的需求可能和您的不一样。本文致力帮助您在Windwos10上舒服的使用Linux。不过请谨记,WSL并不提供硬件访问的功能,例如声卡、GPU,起码官方是如此描述的。并且这可能并不能制止Linux用户的折腾精神。好多用户除了完成了硬件访问,甚至早已在Windows10上安装上了Linux桌面程序。并且本文并不会涉及那些内容,我们可能会讨论这种,但不是现今。
下边是我们须要着手的任务。
怎么让您的Linux系统保持到最新的版本
由于Linux运行在了Windows系统中,所以您将被剥夺Linux系统所提供的所有安全特点。另外,若果不及时给Linux系统打补丁,你的Windows设备将被迫曝露在外界恐吓中,所以还请保持您的Linux为最新版本。
WSL官方支持openSUSE/SUSELinuxEnterprise和Ubuntu。您也可以安装其他发行版,并且我只须要它们当中的两者之一就可以完成我的所有工作,虽然,我只须要访问一些Linux基础程序。
更新openSUSELeap:
sudozypperup
倘若您想升级系统,您可以运行下边的命令:
sudozypperdup
更新Ubuntu:
sudoapt-getupdate
sudoapt-getdist-upgrade
这样你就安全了,因为Linux系统的更新是渐进式的,所以更新系统成为了我的日常。不像Windows10的更新一般须要重启系统,而Linux不同,通常只有KB或是MB级的更新,无需重启。
管理文件目录
系统更新以后,我们来瞧瞧一些或普通或不太普通的任务。
系统更新之外的第二重要的任务是使用Linux管理本地和远程文件。我承认我更偏爱图形界面程序,而且终端能提供更可靠、更有价值的服务。要不你使用资源管理器联通1TB的文件试试?我一般使用rsync命令来联通大量文件。假如中断任务,rsync可以在下次停止的位置继续工作。
尽管您可能更习惯使用cp或是mv命令复制、移动文件,而且我还是喜欢灵活的rsync命令linux模拟,了解rsync对远程文件传输也有帮助。使用rsync大半为了完成下边三个任务:
使用rsync复制整个目录:
rsync-avzP/source-directory/destinationdirectory
使用rsync联通文件:
rsync--remove-source-files-avzP/source-directory/destination-directory
在成功复制目标目录以后,此命令将删掉源文件。
使用rsync同步文件:
我的文件可能在多处储存。并且,我只会在主要位置中降低或是删掉。若果不使用专业的软件,同步文件可能会给用户带来挑战,而rsync正好可以简化这个过程。这个命令可以让两个目录文件内容同步。不过要注意,这是一个双向同步,即从源位置同步到目标位置。
rsync--delete-avzP/source-directory/destination-directory
假如源目录中没有找到文件,上述命令将删掉目标目录中的文件。换言之,它创建了源目录的一个镜像。
文件手动备份
保持文件备份是一项平庸的工作。为了保持我的设备的完全同步,我运行了一个cron作业在夜里保持我的所有目录同步。不过我会留一个外部驱动器,基本上每周我就会自动同步一次。因为可能删除我不想删掉的文件,所以我并没有使用--delete选项。我会按照情况自动决定是否使用这个选项。
创建cron作业,打开crontab:
crontab-e
联通大文件时,我会选择在系统空闲的凌晨执行该命令。此命令将在每晚下午1点运行,您大约可以这样更改它:
#01***rsync-avzP/source-directory/destination-directory
这是使用crontab的定时作业的命令结构:
#mhdommondowcommand
在此,m=分钟,h=小时,dom=本月的某日,mon=月,dow=本周的某日。
我们将在每晚下午1点运行这条命令。您可以选择dow或是dom(例如,每月5号)等。您可以在这儿[2]阅读更多相关内容。
管理远程服务器
在Windows系统上使用WSL的优势之一就是能便捷管理云上的Linux服务器,WSL能提供原生的Linux工具给您。首先,您须要使用ssh命令登陆远程Linux服务器。
例如linux 打开端口命令,我的服务器ip是192.168.0.112;端口为2018(不是默认的22端口);Linux用户名是swapnilpuppy linux,密码是“就不告诉你”。
ssh-p2018swapnil@192.168.0.112
它会向您寻问用户密码,之后您就可以登陆到Linux服务器了。如今您可以在Linux服务器上执行任意您想执行的所有操作了。不需使用PuTTY程序了。
使用rsync,您可以很轻易的在本地机器和远程机器之间传输文件。源目录还是目标目投档决于您是上传文件到服务器linux 打开端口命令,还是下载文件到本地目录,您可以使用username@IP-address-of-server:/path-of-directory来指定目录。
假如我想复制一些文本内容到服务器的home目录,命令如下:
rsync-avzP/source-directory-on-local-machine‘ssh-p2018’swapnil@192.168.0.112:/home/swapnil/Documents/
这将会复制这种文件到远程服务器中Documents目录。
总结
本教程主要是为了证明您可以在Windows10系统上通过WSL完成Linux方面的很大一部份的任务。一般来说,它提升了生产效率。如今,Linux的世界早已向Windwos10系统张开怀抱了,恣意探求吧。倘若您有任何疑惑,或是想了解WSL涉及到的其他层面,欢迎在下方的评论区分享您的看法。
在AdministeringLinuxonAzure(LFS205)[3]课程中了解更多,可以在这儿[4]注册。
via:
作者:SAPNILBHARTIYA[5]译者:CYLeft校对:wxy
本文由LCTT原创编译,Linux中国荣誉推出