Difference between revisions of "Tutorials and Howtos"

From Alpine Linux
Jump to: navigation, search
(Other Servers)
(Installation: New use cases: by arch)
 
(114 intermediate revisions by 51 users not shown)
Line 1: Line 1:
 +
{{Todo|This material needs to be re-organized .. as '''Howtos are smaller articles''' and '''tutorials are more detailed document''' both need to be reordered as independent sections }}
 +
 
[[Image:package_edutainment.svg|right|link=]]
 
[[Image:package_edutainment.svg|right|link=]]
 
{{TOC left}}
 
{{TOC left}}
 
'''Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.'''
 
'''Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.'''
  
The tutorials are hands-on and the reader is expected to try and achieve the goals described in each step, possibly with the help of a good example. The output in one step is the starting point for the following step.
+
'''The tutorials are hands-on''' and the reader is expected to try and achieve the goals described in each step, possibly with the help of a good example. The output in one step is the starting point for the following step.
  
Howtos are smaller articles explaining how to perform a particular task with Alpine Linux.
+
'''Howtos are smaller articles''' explaining how to perform a particular task with Alpine Linux, that expects a minimal knowledge from reader to perform actions.
  
We encourage people to send in both complete articles as well as requesting topics to be covered. If you think you have the skills and knowledge to write an Alpine Linux related article please do so on this Wiki. If you want to request a topic, please add your request in this page's [[Talk:Tutorials_and_Howtos|Discussion]].
+
'''IMPORTANT:''' contributions on those pages must be complete articles as well as requesting topics to be covered, dont override already made contributions. If you want to request a topic, please add your request in this page's [[Talk:Tutorials_and_Howtos|Discussion]].
 +
 
 +
-----------------------------------------------------------------
 +
 
 +
All of '''those linked pages here will help you make many things''' over the Alpine '''O'''perating '''S'''ystem or Alpine '''OS'''.
 +
 
 +
Alpine are the main program named '''OS''' (means Operating System), that's runs on top of the '''machine/PC/laptop''', and subsequently over this '''OS''' run the programs such like the internet web browser ({{Pkg|firefox}}, {{Pkg|chromium}}), and the web pages like "facebook" runs over that internet web browser.
  
 
{{Clear}}
 
{{Clear}}
 +
 +
== New users and Newbies ==
 +
 +
* [[Newbie Alpine Ecosystem]] (for overall information in funny sections)
 +
 +
==== Installation: Use cases ====
 +
 +
* [[Alpine newbie install manual]]
 +
** [[Alpine Install: from a disc to a new computer single only boot]]
 +
** [[Alpine Install: from a disc to a old computer single only boot]]
 +
** [[Alpine Install: from a disc to a virtualbox machine single only]]
 +
** [[Alpine Install: from a iso to a virtualbox machine with external disc]]
 +
* [[Alpine_newbie_install_manual#Ways_to_install_Alpine_listed_by_architectures|Ways to install listed by architectures]]
 +
** [[Alpine_newbie_install_manual#x86_64_x86_32_x86|x86_64 x86_32 x86 s390]]
 +
** [[Alpine_newbie_install_manual#armhf_armv7|armhf armv7 aarch64]]
 +
** [[Alpine_newbie_install_manual#ppc64le|ppc64le others PPC]]
 +
 +
==== Postinstall: desktops and applications ====
 +
 +
* [[Alpine newbie apk packages|Overall info and minimal packages common to any working desktop]]
 +
** [[Alpine newbie desktops|Alpine newbie desktops, (overall information only)]]
 +
** [[Alpine Newbies XFCE Desktop Environment]]
 +
** [[Alpine Newbies LXDE Desktop Environment]]
 +
** [[Alpine Newbies Openbox Window Manager|Alpine Newbies Xorg and Openbox Window Manager]]
 +
** [[Alpine Newbies MATE Desktop Environment]]
 +
* [[Alpine and UEFI|Alpine and UEFI Support Status and related topics]]
 +
 +
==== Developers: compilers, IDE's and tools ====
 +
 +
* [[Alpine newbie developer]]
 +
** [[Alpine_newbie_developer: gitea|Alpine_newbie_developer: Git management web frontend gitea]]
 +
** [[Alpine newbie developer: full stack web]]
 +
 +
==== Servers: deploy in production ====
 +
 +
* [[Alpine production deploy]]
 +
** [[Production Web server: Lighttpd‎‎]]
 +
** [[Production DataBases : mysql]]
 +
** [[Production LAMP system: Lighttpd + PHP + MySQL‎‎]]
 +
* Alpine production monitoring
 +
** [[Cacti: traffic analysis and monitoring network]]
 +
 
== Storage ==
 
== Storage ==
  
Line 17: Line 67:
  
 
* [[Setting up disks manually]] <!-- Installation and Storage -->
 
* [[Setting up disks manually]] <!-- Installation and Storage -->
* [[Setting up a software RAID1 array]]
+
* [[Setting up a software RAID array]]
 
<!-- ** [[Setting up a /var partition on software IDE raid1]]  Obsolete, Installation and Storage -->  
 
<!-- ** [[Setting up a /var partition on software IDE raid1]]  Obsolete, Installation and Storage -->  
 +
* [[Raid Administration]]
 
* [[Setting up encrypted volumes with LUKS]]
 
* [[Setting up encrypted volumes with LUKS]]
 +
* [[Setting up LVM on LUKS]]
 
* [[Setting up Logical Volumes with LVM]]
 
* [[Setting up Logical Volumes with LVM]]
 
** [[Setting up LVM on GPT-labeled disks]]
 
** [[Setting up LVM on GPT-labeled disks]]
 +
** [[Installing on GPT LVM]]
 
* [[Filesystems|Formatting HD/Floppy/Other]] <!-- just a stub -->
 
* [[Filesystems|Formatting HD/Floppy/Other]] <!-- just a stub -->
  
 
* [[Setting up iSCSI]]
 
* [[Setting up iSCSI]]
 
** [[iSCSI Raid and Clustered File Systems]]
 
** [[iSCSI Raid and Clustered File Systems]]
 +
* [[Setting up NBD]]
 +
* [[Setting up ZFS on LUKS]]
 +
* [[Setting up ZFS with native encryption]]
 
* [[High performance SCST iSCSI Target on Linux software Raid]] ''(deprecated)'' <!-- solution -->
 
* [[High performance SCST iSCSI Target on Linux software Raid]] ''(deprecated)'' <!-- solution -->
 
* [[Linux iSCSI Target (TCM)]]
 
* [[Linux iSCSI Target (TCM)]]
Line 31: Line 87:
  
 
* [[Burning ISOs]] <!-- just some links now -->
 
* [[Burning ISOs]] <!-- just some links now -->
* [[Bootmanagers]]
+
* [[Partitioning and Bootmanagers]]
 
* [[Migrating data]]
 
* [[Migrating data]]
 +
* [[Create a bootable SDHC from a Mac]]
 +
* [[Alpine on ARM]]
  
 
== Networking ==
 
== Networking ==
Line 41: Line 99:
 
* [[Vlan]]
 
* [[Vlan]]
 
* [[Bridge]]
 
* [[Bridge]]
 +
* [[Bridge wlan0 to eth0]]
 +
* [[OpenVSwitch]]
 
* [[How to configure static routes]]
 
* [[How to configure static routes]]
 +
* [[Configure a Wireguard interface (wg)]]
  
 
* [[Alpine Wall]] - [[How-To Alpine Wall]] - [[Alpine Wall User's Guide]] ''(a new firewall management framework)''
 
* [[Alpine Wall]] - [[How-To Alpine Wall]] - [[Alpine Wall User's Guide]] ''(a new firewall management framework)''
 +
 +
* [[PXE boot]]
  
 
* [[Using serial modem]]
 
* [[Using serial modem]]
Line 64: Line 127:
 
* [[Multi_ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''
 
* [[Multi_ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''
 
* [[OwnCloud]] ''(Installing OwnCloud)''
 
* [[OwnCloud]] ''(Installing OwnCloud)''
 +
 +
* [[Seafile: setting up your own private cloud]]
 +
 +
* [[GNUnet]]
  
 
== Post-Install ==
 
== Post-Install ==
<!-- If you edit this, please coordinate with Installation#Post-Install and Developer_Documentation#Package_management.  Note that these three sections are not exact duplicates. -->
+
<!-- If you edit this, please coordinate with Installation and Developer_Documentation#Package_management.  Note that these three sections are not exact duplicates. -->
  
 +
* [[Alpine_newbie_apk_packages|Alpine newbie users post install and easy setups]]
 +
** [[Alpine_newbie_apk_packages#New_users:_hostname_and_network_wired_connection|First steps at post install]]
 +
** [[Alpine_newbie_apk_packages#New_users:_common_needed_package_to_install|Enable repositories]]
 +
** [[Alpine_newbie_apk_packages#New_users:_management_of_users_and_logins|Added the first user to use the system]]
 +
** [[Alpine_newbie_apk_packages#install_basic_tools|First packages to install]] (need the previous [[Alpine_newbie_apk_packages#New_users:_common_needed_package_to_install|Enable repositories]]) already done!
 +
 +
* [[Setting up a new user]]
 +
* [[Enable Community Repository]] ''(Providing additional packages)''
 
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''
 
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''
 
   <!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] -->
 
   <!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] -->
Line 77: Line 152:
 
** [[Multiple Instances of Services]]
 
** [[Multiple Instances of Services]]
 
   <!-- [[Writing Init Scripts]] -->
 
   <!-- [[Writing Init Scripts]] -->
 +
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]
 
* [[Upgrading Alpine]]
 
* [[Upgrading Alpine]]
 
<!-- Obsolete
 
<!-- Obsolete
Line 91: Line 167:
  
 
* [[Enable Serial Console on Boot]]
 
* [[Enable Serial Console on Boot]]
 +
<!-- Obsolete?
 
* [[Error message on boot: Address space collision: host bridge window conflicts with Adaptor ROM]]
 
* [[Error message on boot: Address space collision: host bridge window conflicts with Adaptor ROM]]
 +
-->
 +
* [[How to get regular stuff working]] ''some notes on need-to-know topics''
 +
* [[Installing Oracle Java]]
 +
* [[Rsnapshot|Setting up periodic backups with <samp>rsnapshot</samp>]]
 +
 +
== Virtualization==
 +
 +
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''
 +
* [[Xen Dom0 on USB or SD]]
 +
* [[Create Alpine Linux PV DomU]]
 +
* [[Xen PCI Passthrough]]
 +
* [[Xen LiveCD]]
 +
* [[qemu]]
 +
* [[KVM]] ''(Setting up Alpine as a KVM hypervisor)''
 +
* [[LXC]] ''(Setting up a Linux container in Alpine Linux)''
 +
* [[Docker]]
 +
* [[Install_Alpine_on_VirtualBox]]
 +
* [[Install Alpine on VMWare]]
  
 
== Desktop Environment ==
 
== Desktop Environment ==
  
* [[XFCE Setup]] and [[Xfce Desktop|Desktop Ideas]]
+
* [[Awesome(wm) Setup]]
 +
* [[dwm]] ''(dynamic window manager for X)''
 
* [[EyeOS]] ''(Cloud Computing Desktop)''
 
* [[EyeOS]] ''(Cloud Computing Desktop)''
 +
* [[Gnome Setup]]
 +
* [[MATE|MATE Setup]]
 
* [[Oneye]] ''(Cloud Computing Desktop - Dropbox Alternative)''
 
* [[Oneye]] ''(Cloud Computing Desktop - Dropbox Alternative)''
 
* [[Owncloud]] ''(Cloud Computing Desktop - Dropbox Alternative)''
 
* [[Owncloud]] ''(Cloud Computing Desktop - Dropbox Alternative)''
 
** (to be merged with [[OwnCloud]] ''(Your personal Cloud for storing and sharing your data on-line)'')
 
** (to be merged with [[OwnCloud]] ''(Your personal Cloud for storing and sharing your data on-line)'')
* [[Gnome Setup]]
+
* [[Remote Desktop Server]]
* [[Awesome(wm) Setup]]
+
* [[Suspend on LID close]]
 +
* [[Sway]]
 +
* [[XFCE Setup]] and [[Xfce Desktop|Desktop Ideas]]
 +
* [[Installing Adobe flash player for Firefox]]
 +
* [[Sound Setup]]
 +
* [[Printer Setup]]
 +
* [[Default applications]]
 +
 
 +
== Raspberry Pi ==
 +
 
 +
* [[Raspberry Pi|Raspberry Pi (Installation)]]
 +
* [[Classic install or sys mode on Raspberry Pi]]
 +
* [[RPI Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)''
 +
* [[Linux Router with VPN on a Raspberry Pi]]
 +
* [[Linux Router with VPN on a Raspberry Pi (IPv6)]]
 +
* [[Raspberry Pi 4 - Persistent system acting as a NAS and Time Machine]]
 +
* [[Raspberry Pi 3 - Configuring it as wireless access point -AP Mode]]
 +
* [[Raspberry Pi 3 - Setting Up Bluetooth]]
 +
* [[Raspberry Pi 3 - Browser Client]]
 +
* [[Raspberry Pi Zero W - Installation]]
 +
* [[Raspberry Pi - Headless Installation]]
 +
 
 +
== PowerPC ==
 +
 
 +
* [[Ppc64le|Powepc64le (Installation)]]
 +
 
 +
== IBM Z (IBM z Systems) ==
 +
 
 +
* [[s390x|s390x (Installation)]]
  
 
== Applications ==
 
== Applications ==
Line 119: Line 245:
 
** [[ISP Mail Server Upgrade 2.x]]
 
** [[ISP Mail Server Upgrade 2.x]]
 
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''
 
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''
 +
** [[ISP Mail Server 3.x HowTo]]
 
* [[Roundcube]] ''(Webmail system)''
 
* [[Roundcube]] ''(Webmail system)''
 
* [[Setting up postfix with virtual domains]]
 
* [[Setting up postfix with virtual domains]]
Line 124: Line 251:
 
* [[Setting up clamsmtp]]
 
* [[Setting up clamsmtp]]
 
* [[Setting up dovecot with imap and ssl]]
 
* [[Setting up dovecot with imap and ssl]]
 +
* [[relay email to gmail (msmtp, mailx, sendmail]]
  
 
=== HTTP ===
 
=== HTTP ===
Line 132: Line 260:
 
* [[Cherokee]]
 
* [[Cherokee]]
 
* [[Nginx]]
 
* [[Nginx]]
 +
** [[Nginx_with_PHP#Nginx_with_PHP|Nginx with PHP]]
 +
** [[Nginx as reverse proxy with acme (letsencrypt)]]
 
* [[Apache]]
 
* [[Apache]]
 +
** [[Apache with php-fpm]]
 +
** [[Setting Up Apache with PHP]]
 
** [[Apache authentication: NTLM Single Signon]]
 
** [[Apache authentication: NTLM Single Signon]]
  
Line 146: Line 278:
 
* [[MediaWiki]] ''(Free web-based wiki software application)''
 
* [[MediaWiki]] ''(Free web-based wiki software application)''
 
* [[DokuWiki]]
 
* [[DokuWiki]]
 +
* [[Darkhttpd]]
 +
* [[Tomcat]]
  
 
=== Other Servers ===
 
=== Other Servers ===
 
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''
 
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''
  
 +
* [[Setting up a nfs-server]]
 +
* [[Setting up a samba-server]] ''(standard file sharing)''
 +
* [[Setting up a samba-ad-dc]] ''(Active Directory compatible domain controller)''
 
* [[Phpizabi]] ''(Social Networking Platform)''
 
* [[Phpizabi]] ''(Social Networking Platform)''
 
* [[Statusnet]] ''(Microblogging Platform)''
 
* [[Statusnet]] ''(Microblogging Platform)''
Line 155: Line 292:
 
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]
 
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]
  
 +
* [[Patchwork]] ''(Patch review management system)''
 
* [[Redmine]] ''(Project management system)''
 
* [[Redmine]] ''(Project management system)''
 
* [[Request-Tracker]] ''(Ticket system)''
 
* [[Request-Tracker]] ''(Ticket system)''
Line 160: Line 298:
 
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''
 
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''
  
 +
* [[Alpine_newbie_developer: gitea|Setting up Git management web frontend gitea]]
 
* [[Cgit]]
 
* [[Cgit]]
 
** [[Setting up a git repository server with gitolite and cgit]] <!-- doesn't exist yet -->
 
** [[Setting up a git repository server with gitolite and cgit]] <!-- doesn't exist yet -->
Line 168: Line 307:
 
* [[Cups]]
 
* [[Cups]]
 
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''
 
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''
 +
* [[How To Setup Your Own IRC Network]] ''(Using {{Pkg|charybdis}} and {{Pkg|atheme-iris}})''
 
* [[OpenVCP]] ''(VServer Control Panel)''
 
* [[OpenVCP]] ''(VServer Control Panel)''
 
* [[Mahara]] ''(E-portfolio and social networking system)''
 
* [[Mahara]] ''(E-portfolio and social networking system)''
 
* [[Chrony and GPSD | Using chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]
 
* [[Chrony and GPSD | Using chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]
 +
* [[Sending SMS using gnokii]]
 +
* [[IPTV How To|Internet Protocol television (IPTV)]]
 +
* [[UniFi_Controller]]
 +
* [[DNSCrypt-Proxy]] ''Encrypt and authenticate DNS calls from your system''
 +
* [[Odoo]]
  
 
=== Monitoring ===
 
=== Monitoring ===
 +
* Setting up [[collectd]]
 
* [[Traffic monitoring]] <!-- Networking and Monitoring -->
 
* [[Traffic monitoring]] <!-- Networking and Monitoring -->
 
* [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring -->
 
* [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring -->
 
* [[Setting up monitoring using rrdtool (and rrdcollect)]]
 
* [[Setting up monitoring using rrdtool (and rrdcollect)]]
* [[Setting up Cacti|Cacti]] ''(Front-end for rrdtool networking monitor)''
+
* [[Cacti: traffic analysis and monitoring network]] ''(Front-end for rrdtool networking monitor)''
 +
* [[LTTng]] ''(Kernel and userspace tracing)''
 
* [[Setting up Zabbix|Zabbix]] ''(Monitor and track the status of network services and hardware)''
 
* [[Setting up Zabbix|Zabbix]] ''(Monitor and track the status of network services and hardware)''
 
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server -->
 
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server -->
Line 202: Line 349:
  
 
* [[Setting up lm_sensors]]
 
* [[Setting up lm_sensors]]
 +
 +
* [[ZoneMinder video camera security and surveillance]]
  
 
== Misc ==
 
== Misc ==
Line 210: Line 359:
 
* [[:Category:Drivers]]
 
* [[:Category:Drivers]]
 
* [[:Category:Multimedia]]
 
* [[:Category:Multimedia]]
 +
* [[Kernel Modesetting]]
 +
* [[CPU frequency scaling]]
  
 
== Complete Solutions ==
 
== Complete Solutions ==
 +
* [[DIY Fully working Alpine Linux for Allwinner and Other ARM SOCs]]
 
* [[Replacing non-Alpine Linux with Alpine remotely]]
 
* [[Replacing non-Alpine Linux with Alpine remotely]]
 
* [[High performance SCST iSCSI Target on Linux software Raid]]
 
* [[High performance SCST iSCSI Target on Linux software Raid]]
 
* [[Fault Tolerant Routing with Alpine Linux]]
 
* [[Fault Tolerant Routing with Alpine Linux]]
 
* [[Experiences with OpenVPN-client on ALIX.2D3]]
 
* [[Experiences with OpenVPN-client on ALIX.2D3]]
 +
* [[Building a cloud with Alpine Linux]]
  
 
* [[ISP Mail Server HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-serivce ISP mail server)''
 
* [[ISP Mail Server HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-serivce ISP mail server)''
Line 223: Line 376:
 
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft -->
 
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft -->
 
* [[Streaming Security Camera Video with VLC]]
 
* [[Streaming Security Camera Video with VLC]]
* [[Dynamic Multipoint VPN (DMVPN)]]
+
* [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small_Office_Services]]
  
  
Line 240: Line 393:
 
* [[Disk Replication with DRBD]]
 
* [[Disk Replication with DRBD]]
 
-->
 
-->
 +
 +
 +
[[Category:Newbie]]

Latest revision as of 21:38, 12 July 2020

Underconstruction clock icon gray.svg
Todo: This material needs to be re-organized .. as Howtos are smaller articles and tutorials are more detailed document both need to be reordered as independent sections


Package edutainment.svg

Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.

The tutorials are hands-on and the reader is expected to try and achieve the goals described in each step, possibly with the help of a good example. The output in one step is the starting point for the following step.

Howtos are smaller articles explaining how to perform a particular task with Alpine Linux, that expects a minimal knowledge from reader to perform actions.

IMPORTANT: contributions on those pages must be complete articles as well as requesting topics to be covered, dont override already made contributions. If you want to request a topic, please add your request in this page's Discussion.


All of those linked pages here will help you make many things over the Alpine Operating System or Alpine OS.

Alpine are the main program named OS (means Operating System), that's runs on top of the machine/PC/laptop, and subsequently over this OS run the programs such like the internet web browser (firefox, chromium), and the web pages like "facebook" runs over that internet web browser.


New users and Newbies

Installation: Use cases

Postinstall: desktops and applications

Developers: compilers, IDE's and tools

Servers: deploy in production

Storage

Networking

Post-Install

Virtualization

Desktop Environment

Raspberry Pi

PowerPC

IBM Z (IBM z Systems)

Applications

Telephony

Mail

HTTP

Other Servers

  • Patchwork (Patch review management system)
  • Redmine (Project management system)
  • Request-Tracker (Ticket system)
  • OsTicket (Ticket system)
  • Trac (Enhanced wiki and issue tracking system for software development projects)

Monitoring

  • Webmin (A web-based interface for Linux system)
  • PhpPgAdmin (Web-based administration tool for PostgreSQL)
  • PhpMyAdmin (Web-based administration tool for MYSQL)
  • PhpSysInfo (A simple application that displays information about the host it's running on)
  • Linfo

Misc

Complete Solutions