Backing up Your Files on Windows Using Rsync

Total Page:16

File Type:pdf, Size:1020Kb

Backing up Your Files on Windows Using Rsync Backing up your files on Windows using rsync By John Bent, © 2012 Many of you will be familiar with a variety of Windows copying tools - such as xcopy, robocopy and SyncToy. These tools are great at copying data from one place to another - either on the same PC or to different PCs on the local network. However, in today's Internet-connected world, it is often desirable to copy files to a remote computer over the Internet, which is where a lot of the standard copying tools fall short: Mapping a network drive to another computer across the Internet is not recommended due to the security implications of opening up the NetBIOS/SMB ports (135-139 and 445). To securely map a drive over the Internet you should consider setting up a VPN (virtual private network) connection to the remote computer. This keeps data secure by encrypting it using a secure tunnel. Once you've established a secure connection, you can safely use xcopy, robocopy and similar tools to transfer your files to the remote computer. The next problem you will encounter however is that tools such as xcopy and robocopy perform no file compression, and always copy the entire contents of a file - even if only a single byte has changed. Introducing rsync The rsync tool has been commonplace on Unix and Unix-style systems for many years. Its purpose is to efficiently copy files from one location to another. It provides a number of key benefits that aren't found in any of the standard Windows tools: - The delta copying algorithm means that only the portions of the file that have changed are copied, significantly speeding up the backup time and reducing the required bandwidth. - When used with SSH, rsync provides a totally secure means of transferring files - without the need for a VPN connection. - rsync is totally platform-agnostic; you can use it on Unix, Linux, Mac and Windows. - It's free, open-source and has an extensive history of safe and reliable operation. In this article I will look at using the rsync client on Windows to back up to a rsync server. Any Unix or Linux system can act as a rsync server out of the box. Getting a rsync server running on Windows requires a little more work – this is something I will cover in a future article. Where to get rsync for Windows I spent a lot of time looking for the best port of rsync for Windows, and eventually settled on CWRsync. Although cwRsync is a commercial product, they make their older versions available for download free-of-charge. It is this free version that I will refer to for the remainder of this article. The only issue I ran into with the downloaded version was that it seemed to use up a lot of my CPU while copying. I tracked this down to an outdated Cygwin DLL - and once I'd updated the Cygwin DLLs to the latest version, the problem went away. For convenience, I have produced a ZIP package containing cwRsync together with the updated Cygwin libraries. You can download it here. Installing CWRsync Once you have downloaded the cwRsync package, you should extract the files to C:\Program Files\cwRsync. I strongly recommend installing to this location, otherwise you will need to modify some of the path settings. Setting up your public/private key pair You need to create, and upload, an SSH public key so that your rsync backups can occur without you being prompted for a password each time you perform your backup. It is VERY IMPORTANT that the user who creates the key is the SAME user as the one who runs the automated backup. The easiest way to ensure this is to log in as the local "administrator" to perform the following steps: Click the start button, and choose "run". In the run dialog box, type "cmd" and hit enter. The command prompt window (DOS prompt) will open. In this command prompt, type: cd "c:\program files\cwrsync\bin" and hit enter. Then type: ssh-keygen -t rsa -N '' and hit enter. (Note that the line ends with TWO single quote characters, one after another) You will be asked to "enter file in which to save the key" - just hit enter to accept the default that is given. Now, upload the newly created key to your remote rsync server using this command: rsync -avs "/cygdrive/c/documents and settings/administrator/.ssh/id_rsa.pub" username@server- name:.ssh/authorized_keys Note: Substitute username@server-name for your own user ID and rsync server, e.g. [email protected] On Windows Vista and Windows 7, the Documents and Settings folder is renamed to Users, so you will need to amend the above path accordingly. When you run this rsync command, you will be asked to confirm the first connection - enter "yes", and when prompted for your password, enter the password for your user account on the remote server. Your RSA public key is now uploaded to your remote rsync server and any further logins over ssh that this Windows user (in this case, administrator) performs will not require a password. Choosing What to Back Up The next step is to add one or more rsync commands to the end of the rsync script, telling rsync exactly what to back up. Locate the rsync.cmd file in C:\Program Files\CWRsync. Right-click the file and choose Edit to open the file in Notepad. Leave the file exactly as it is - the settings in place are very important. You are simply going to add one or more rsync commands to the end of it, one for each folder or file you want to back up. Note: If you decided to install CWRsync into a different folder, you should modify this file to change any references to C:\Program Files\CWRSync so that they point to your chosen installation directory. In this example we are adding a single line to the end of the file: rsync -avs --chmod u+rwx "/cygdrive/c/Documents and Settings/administrator" username@server-name: You can see how the source directory: C:\Documents and Settings\administrator is entered as /cygdrive/c/Documents and Settings/administrator this transformation is required for all Windows source folders. You can add as many rsync lines to the end of this script as you like - one for each folder you wish to back up. Once the rsync lines have been added to the script, you should save the file and exit Notepad. Scheduling the Backup All that is left now is to schedule the backup, which is done through Task Scheduler, which is a standard Windows feature. Open Task Scheduler by choosing: Start Menu, Programs, Accessories, System Tools, Scheduled Tasks. The Scheduled Tasks explorer will open. Double click the item named "Add Scheduled Task". In the first Window, simply click "Next". In the second Window, you are asked to "click the program you want windows to run". Do not choose a program from the list. Instead, click the "browse" button. Choose the program c:\program files\cwrsync\cwrsync.cmd In the third window, you are asked to "type a name for this task" - you can name it whatever you like. Perhaps "rsync Backup". You are also asked, in this third window, how often to perform the task. In this example we will choose to perform the backup weekly. In the fourth window, you are asked to choose a start time. We suggest sometime between 10pm and 6am. You should not perform these backups during the business day, as the network traffic they consume could affect your work. In the fifth window, you are asked to "Enter the name and password of a user" - this is the Windows login that the backup will run under, and it is important that you choose the same Windows login that you used to create your RSA key, above. The username is entered in the form computername\username ... for instance: server01\administrator The password should be entered as well. In the sixth and final window, click "finish". Testing your Backup It is extremely important that you test your backup. You are testing not only that the backup works properly and transfers the files you think it will, but also that it will properly log into your remote rsync server without prompting you for a password. The first test, making sure the automated backup is not prompted for a password, is performed simply by running the backup yourself. From the start menu, choose Run, and type in the location of your backup script: c:\progra~1\cwrsync\cwrsync.cmd You should see the backup run in the command prompt that appears, and it should complete without asking you for a password. After you have completed a successful backup, and periodically as time goes on, you should log into your remote rsync server and browse your file system to ensure the files you expect to be there are indeed present. Hints and Tips - When testing your backup, be sure that Administrator is NOT logged onto the system twice - otherwise the DOS window that appears when your backup runs automatically from the Windows scheduler may appear in the other session (perhaps a remote access login). Having the administrator account logged into the system more than once can cause you not to see error messages that will help you diagnose the batch file if it is not running properly from the Windows scheduler. - Alternatively, consider creating a new local user account called rsync, used entirely for performing your rsync backups.
Recommended publications
  • Towards Web-Based Delta Synchronization for Cloud Storage Services
    Towards Web-based Delta Synchronization for Cloud Storage Services He Xiao Zhenhua Li ∗ Ennan Zhai Tianyin Xu Tsinghua University Tsinghua University Yale University UIUC Yang Li Yunhao Liu Quanlu Zhang Yao Liu Tsinghua University Tsinghua University Microsoft Research SUNY Binghamton Abstract savings in the presence of users’ file edits [29, 39, 40]. Delta synchronization (sync) is crucial for network-level Unfortunately, today delta sync is only available for efficiency of cloud storage services. Practical delta sync PC clients and mobile apps, but not for the web—the most pervasive and OS-independent access method [37]. techniques are, however, only available for PC clients 0 and mobile apps, but not web browsers—the most per- After a file f is edited into a new version f by users, vasive and OS-independent access method. To under- Dropbox’s PC client will apply delta sync to automati- stand the obstacles of web-based delta sync, we imple- cally upload only the altered bits to the cloud; in contrast, Dropbox’s web interface requires users to manually up- ment a delta sync solution, WebRsync, using state-of- 0 1 the-art web techniques based on rsync, the de facto delta load the entire content of f to the cloud. This gap sig- sync protocol for PC clients. Our measurements show nificantly affects web-based user experiences in terms of that WebRsync severely suffers from the inefficiency of both sync speed and traffic cost. JavaScript execution inside web browsers, thus leading Web is a fairly popular access method for cloud stor- to frequent stagnation and even hanging.
    [Show full text]
  • Bulk Data Migration Using Robocopy
    Bulk Data Migration Using Robocopy Created by: Nasuni Support Last update: 6/14/2011 Contents Overview...................................................................................................................................................................... 2 Using Robocopy to copy data to the Nasuni Filer....................................................................................... 2 2011 © Nasuni Corporation. All Rights Reserved Resizing the Cache and Snapshots Disks in Nasuni Filer v2.7 Robocopy and the Nasuni Filer cache ............................................................................................................. 2 Conclusion ................................................................................................................................................................... 3 Overview The information in this document applies to Nasuni Filer 2.x versions. It explains how to use Robocopy, a Microsoft Windows tool, to migrate data from a Windows file server to the Nasuni Filer. Robocopy has been bundled with Windows operating systems since Vista and Server 2008. Using Robocopy to copy data to the Nasuni Filer Robocopy is a Windows command line tool. To migrate data to the Nasuni Filer using Robocopy follow the steps below. 1. Identify the data set you want to migrate to the Nasuni Filer 2. Create/locate a share on the Nasuni Filer to write your data set to 3. Run cmd.exe 4. Run the command below from the source server’s command line. robocopy (path to source data) (path to Filer share)
    [Show full text]
  • This Document Explains How to Copy Ondemand5 Data to Your Hard Drive
    Copying Your Repair DVD Data To Your Hard Drive Introduction This document explains how to copy OnDemand5 Repair data to your hard drive, and how to configure your OnDemand software appropriately. The document is intended for your network professional as a practical guide for implementing Mitchell1’s quarterly updates. The document provides two methods; one using the Xcopy command in a DOS window, and the other using standard Windows Copy and Paste functionality. Preparing your System You will need 8 Gigabytes of free space per DVD to be copied onto a hard drive. Be sure you have the necessary space before beginning this procedure. Turn off screen savers, power down options or any other program that may interfere with this process. IMPORTANT NOTICE – USE AT YOUR OWN RISK: This information is provided as a courtesy to assist those who desire to copy their DVD disks to their hard drive. Minimal technical assistance is available for this procedure. It is not recommended due to the high probability of failure due to DVD drive/disk read problems, over heating, hard drive write errors and memory overrun issues. This procedure is very detailed and should only be performed by users who are very familiar with Windows and/or DOS commands. Novice computers users should not attempt this procedure. Copying Repair data from a DVD is a time-consuming process. Depending on the speed of your processor and/or network, could easily require two or more hours per disk. For this reason, we recommend that you perform the actual copying of data during non-business evening or weekend hours.
    [Show full text]
  • Cheat Sheet – Common Ports (PDF)
    COMMON PORTS packetlife.net TCP/UDP Port Numbers 7 Echo 554 RTSP 2745 Bagle.H 6891-6901 Windows Live 19 Chargen 546-547 DHCPv6 2967 Symantec AV 6970 Quicktime 20-21 FTP 560 rmonitor 3050 Interbase DB 7212 GhostSurf 22 SSH/SCP 563 NNTP over SSL 3074 XBOX Live 7648-7649 CU-SeeMe 23 Telnet 587 SMTP 3124 HTTP Proxy 8000 Internet Radio 25 SMTP 591 FileMaker 3127 MyDoom 8080 HTTP Proxy 42 WINS Replication 593 Microsoft DCOM 3128 HTTP Proxy 8086-8087 Kaspersky AV 43 WHOIS 631 Internet Printing 3222 GLBP 8118 Privoxy 49 TACACS 636 LDAP over SSL 3260 iSCSI Target 8200 VMware Server 53 DNS 639 MSDP (PIM) 3306 MySQL 8500 Adobe ColdFusion 67-68 DHCP/BOOTP 646 LDP (MPLS) 3389 Terminal Server 8767 TeamSpeak 69 TFTP 691 MS Exchange 3689 iTunes 8866 Bagle.B 70 Gopher 860 iSCSI 3690 Subversion 9100 HP JetDirect 79 Finger 873 rsync 3724 World of Warcraft 9101-9103 Bacula 80 HTTP 902 VMware Server 3784-3785 Ventrilo 9119 MXit 88 Kerberos 989-990 FTP over SSL 4333 mSQL 9800 WebDAV 102 MS Exchange 993 IMAP4 over SSL 4444 Blaster 9898 Dabber 110 POP3 995 POP3 over SSL 4664 Google Desktop 9988 Rbot/Spybot 113 Ident 1025 Microsoft RPC 4672 eMule 9999 Urchin 119 NNTP (Usenet) 1026-1029 Windows Messenger 4899 Radmin 10000 Webmin 123 NTP 1080 SOCKS Proxy 5000 UPnP 10000 BackupExec 135 Microsoft RPC 1080 MyDoom 5001 Slingbox 10113-10116 NetIQ 137-139 NetBIOS 1194 OpenVPN 5001 iperf 11371 OpenPGP 143 IMAP4 1214 Kazaa 5004-5005 RTP 12035-12036 Second Life 161-162 SNMP 1241 Nessus 5050 Yahoo! Messenger 12345 NetBus 177 XDMCP 1311 Dell OpenManage 5060 SIP 13720-13721
    [Show full text]
  • Preparation of Papers in Two-Column Format
    Protecting Media Production Companies against Ransomware Rob Gonsalves Avid Technology, Inc. Burlington Massachusetts [email protected] Abstract - Ransomware, a type of malicious software designed to block access to digital assets until a sum of money is paid, represents a growing threat for media production companies, as digital media assets are a valued target for hackers. To protect their media assets and mitigate the risk of these types of attacks, companies can implement a set of security policies, procedures and systems. Deploying and operating Disaster Recovery (DR) systems with specific safeguards against ransomware will help companies retrieve valuable files without having to pay FIGURE 1 - INITIAL RANSOMWARE ATTACK cyber-criminals. This paper will discuss the growing threat of ransomware to media companies and cover the key The initial attack often comes when a user inadvertently concepts for understanding and building security and DR downloads and installs malware from a website. After systems with specific safeguards against ransomware. installation, the ransomware quietly searches for and Using these techniques, critical business functions can encrypts files. Its goal is to stay below the radar until it can continue in the event of an attack. find and encrypt all of the files that could be of value to the user. By the time the company is presented with the RANSOMWARE malware’s message with the ransom demand, the damage has already been done [2]. Ransomware is a form of malware that encrypts data files and holds these files for ransom. After the initial infection, the malware begins encrypting files on local drives, shared storage, and potentially other computers on the network.
    [Show full text]
  • 1. Xcopy 2. No, You Cannot Use the Xcopy Command in Your Assignment
    Intro to Operating Systems CNET 173 Assignment #4 Windows / LINUX Command Line Commands You are to list twenty-five command line commands of each operating system (WINDOWS and LINUX). That’s twenty- five WINDOWS commands and twenty-five LINUX commands. For each command you are to give: 1. The command a. Description/Attribute of the command b. Syntax of the command and c. A maximum of five Parameters used with the command and a description of the parameter. (If there are less than five parameters, list all parameters associated with the command.) Each command should be numbered and grouped (all WINDOWS commands with WINDOWS commands). Command information should be listed in the 1, a, b, c order listed above (i.e. command, description, syntax and parameters). This assignment must be typed and submitted through CANVAS. It should include a title page consisting of your name, course name, number, day and time, assignment name, instructor’s name, and due date and the assignment instructions. Example listed below. Windows Command Line Commands 1. xcopy a) Description - Copies files and directories, including subdirectories. b) Syntax xcopy Source [Destination] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:mm-dd-yyyy]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:file1[+[file2]][+[file3]] [{/y|/-y}] [/z] c) Parameters /w : Displays the following message and waits for your response before starting to copy files: Press any key to begin copying file(s) /p : Prompts you to confirm whether you want to create each destination file. /c : Ignores errors. /v : Verifies each file as it is written to the destination file to make sure that the destination files are identical to the source files.
    [Show full text]
  • How to Cheat at Windows System Administration Using Command Line Scripts
    www.dbebooks.com - Free Books & magazines 405_Script_FM.qxd 9/5/06 11:37 AM Page i How to Cheat at Windows System Administration Using Command Line Scripts Pawan K. Bhardwaj 405_Script_FM.qxd 9/5/06 11:37 AM Page ii Syngress Publishing, Inc., the author(s), and any person or firm involved in the writing, editing, or produc- tion (collectively “Makers”) of this book (“the Work”) do not guarantee or warrant the results to be obtained from the Work. There is no guarantee of any kind, expressed or implied, regarding the Work or its contents.The Work is sold AS IS and WITHOUT WARRANTY.You may have other legal rights, which vary from state to state. In no event will Makers be liable to you for damages, including any loss of profits, lost savings, or other incidental or consequential damages arising out from the Work or its contents. Because some states do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply to you. You should always use reasonable care, including backup and other appropriate precautions, when working with computers, networks, data, and files. Syngress Media®, Syngress®,“Career Advancement Through Skill Enhancement®,”“Ask the Author UPDATE®,” and “Hack Proofing®,” are registered trademarks of Syngress Publishing, Inc.“Syngress:The Definition of a Serious Security Library”™,“Mission Critical™,” and “The Only Way to Stop a Hacker is to Think Like One™” are trademarks of Syngress Publishing, Inc. Brands and product names mentioned in this book are trademarks or service marks of their respective companies.
    [Show full text]
  • List of NMAP Scripts Use with the Nmap –Script Option
    List of NMAP Scripts Use with the nmap –script option Retrieves information from a listening acarsd daemon. Acarsd decodes ACARS (Aircraft Communication Addressing and Reporting System) data in real time. The information retrieved acarsd-info by this script includes the daemon version, API version, administrator e-mail address and listening frequency. Shows extra information about IPv6 addresses, such as address-info embedded MAC or IPv4 addresses when available. Performs password guessing against Apple Filing Protocol afp-brute (AFP). Attempts to get useful information about files from AFP afp-ls volumes. The output is intended to resemble the output of ls. Detects the Mac OS X AFP directory traversal vulnerability, afp-path-vuln CVE-2010-0533. Shows AFP server information. This information includes the server's hostname, IPv4 and IPv6 addresses, and hardware type afp-serverinfo (for example Macmini or MacBookPro). Shows AFP shares and ACLs. afp-showmount Retrieves the authentication scheme and realm of an AJP service ajp-auth (Apache JServ Protocol) that requires authentication. Performs brute force passwords auditing against the Apache JServ protocol. The Apache JServ Protocol is commonly used by ajp-brute web servers to communicate with back-end Java application server containers. Performs a HEAD or GET request against either the root directory or any optional directory of an Apache JServ Protocol ajp-headers server and returns the server response headers. Discovers which options are supported by the AJP (Apache JServ Protocol) server by sending an OPTIONS request and lists ajp-methods potentially risky methods. ajp-request Requests a URI over the Apache JServ Protocol and displays the result (or stores it in a file).
    [Show full text]
  • 17 Basic Networking Clients
    Certification Basic Networking Clients UNIT 17 Basic Networking Clients 1 Rev RH033-RHEL3-1 Copyright © 2003 Red Hat, Inc. UNIT 16: Objectives ? Learn basic network commands ? Learn how to communicate securely with remote hosts ? Understand the use of rsync and wget 2 Rev RH033-RHEL3-1 Copyright © 2003 Red Hat, Inc. UNIT 17: Agenda ? ssh / scp / telnet ? lftp ? links ? mutt ? rsync / wget ? ping / traceroute / host 3 Rev RH033-RHEL3-1 Copyright © 2003 Red Hat, Inc. ssh: Secure Shell ? Public-key encryption technology replacement for various unsecure services ? Allows secure access to remote systems · $ ssh joe@barney -or- · $ ssh -l joe barney joe@barney's password: · $ ssh barney ls /tmp 4 Rev RH033-RHEL3-1 Copyright © 2003 Red Hat, Inc. scp: Secure copy ? Secure replacement for rcp ? Layered on top of ssh · $ scp source destination ? Remote files can be specified using: · user@host:/path/to/file · -r option enables recursion · -p preserves times and permissions · -C compresses datastream 5 Rev RH033-RHEL3-1 Copyright © 2003 Red Hat, Inc. telnet and the “r” services ? Insecure protocols ? telnet: Login names and passwords pass over the network in clear text ? “r” services (rsh, rlogin, rcp): generally insecure authentication mechanism ? telnet client can be used to connect to services running on arbitrary ports ? Example: testing your mail server: $ telnet localhost 25 6 Rev RH033-RHEL3-1 Copyright © 2003 Red Hat, Inc. lftp ? Versatile command-line FTP client ? Anonymous or real-user sessions $ lftp ftp.cdrom.com $ lftp -u joe ftp.myserver.com ? Automated transfers with lftpget 7 Rev RH033-RHEL3-1 Copyright © 2003 Red Hat, Inc.
    [Show full text]
  • The Nmap Project
    Insecure.Org The Nmap Project Fotis Hantzis aka ithilgore sock-raw.org FOSSCOMM 2016 Insecure.Org whoami • Exploiting TCP and the Persist Timer Infiniteness (Phrack #66) • Abusing Network Protocols (stealthy portscanning through XMPP exploitation) • Nmap developer, Ncrack author • Startup ventures @ithilgore Insecure.Org http://phrack.org/issues/51/11.html#article Insecure.Org Ndiff NSE Npcap Zenmap Insecure.Org Trinity uses Nmap in Matrix Reloaded Insecure.Org CIA using Zenmap in Bourne Ultimatum Insecure.Org Die Hard 4 Insecure.Org And many more: http://nmap.org/movies Elysium Insecure.Org > 1000 students $5.000 stipends 3 – 4 months ~ 150 open source organizations Insecure.Org Past Nmap GSoC Accomplishments o Nping – generic packet crafting tool o Ncat – the modern netcat o Npcap – packet sniffing library (WPF) o Ncrack – network auth cracking tool o NSE – Nmap Scripting Engine o Zenmap – GUI for Nmap o Ndiff – diff for network scans Insecure.Org http://nmap.org/ncrack High speed network authentication cracking tool Insecure.Org Ncrack’s Main Features o Intelligent Core Engine o Service Recognition through Nmap (-oN, -oX) o Fine-grained timing control (cl, CL, to, cd, at, T1-T5) o Built-in username/password lists o Session stop/resume o Modular architecture o Nsock based (asynchronous) Insecure.Org Ncrack modules o SSH – custom opensshlib based on OpenSSH o RDP – extremely hard protocol by MS SMB o • Telnet o SIP • FTP • HTTP (basic/digest) • PostgreSQL • MySQL Contributions • VNC • POP3 • Redis Insecure.Org New Ncrack 0.5 release
    [Show full text]
  • Falcon DOS Portable Terminals Advanced User's Guide
    ! " #$% & " ' ()**%++,,,&% & " !"# $ $ % &' $ % ( ( % )*+ (*,' (% $ )(+ $ - !!. !!/$ 0 1 2 + + 2 3'4 0 5 -../ .+ 0 % &6 (*, % $ & & &/,( % & & ( &/,( 0 &(*, % & ! "#$%#$&#'%#'&( !! ! )!* 0 $ $ 0 3&7 4 8 $ 9 8 % 2 $ : $ 1 0 ; < $ ; * $ , . % $ / ) = ) $ # 0 , $ # 0 ( ( " & > 0 & > ? ! % , < 9 $ ; 0 ++ . 0 + = 0 & 2
    [Show full text]
  • Pragma Systems & Stay-Linked™: Remote SSH Connectivity Done Right
    WHITE PAPER Pragma Systems & Stay‐Linked™: Remote SSH Connectivity Done Right This paper is designed to serve as a primer for upgrading – or choosing and implementing – a highly effective, secure SSH connectivity solution. This document provides an overview of key regulatory and market developments driving the need to make remote computing systems more secure; takes a look at the origins of SSH and the factors that have led to its becoming the enterprise security protocol of choice; outlines key components of an optimal SSH‐based security approach; and, then, examines the market’s most trusted, effective, end‐to‐end, server and client SSH security solution, offered in partnership by Pragma Systems and Stay‐Linked. Pragma Systems & Stay‐Linked™: Remote SSH Connectivity Done Right Contents Executive Summary ............................................................................................................................................. 3 Takin’ it to the streets ......................................................................................................................................... 3 Clearly, it’s time to leave clear text behind ........................................................................................................ 4 Regulatory rundown ........................................................................................................................................... 4 Gaga for gadgets ................................................................................................................................................
    [Show full text]