Linux Ch4 Common Programs

  1. Using a Linux Desktop Environment
    • Used more by regular user
    • Set of programs that control screen displays
    • Small utilities programs to perform tasks:
    • –Managing files
    • –Setting permissions
    • –Administering users
    • –Changing configuration settings
    • –Configuring desktop settings and much more
  2. KDE
    • K Desktop Environment
    • www.kde.org
    • Default for Mandriva and SUSE
    • Many powerful tools
    • Built using Qt widget set
    • Qt widget set
    • –Application framework for developing application software with a Graphical User Interface
    • –Can develop command line programs as well
    • –Open Source–Standard language C++, but supports others
    • KDE most like traditional desktops
  3. GNOME
    • GNU Network Object Model Environment
    • www.gnome.org
    • Rival to KDE
    • Default for Fedora and Debian
    • Built using GIMP Tool Kit (GTK+)
    • GIMP Tool Kit (GTK+) widget set
    • –Application framework for developing application software with a Graphical User Interface
    • –Can develop command line programs as well
    • –Open Source
    • –Language support C++, Java, Perl, Python, Ruby + others
  4. LXDE
    • Lightweight X11 Desktop Environment
    • www.lxde.org
    • Intended to consume few resource
    • Good for old less powerful systems
  5. Unity
    • Publisher of Ubuntu release this desktop in 2010
    • Similar to GNOME
    • Good for inexperienced users
  6. Xfce
    • www.xfce.org
    • Intended to consume few resource
    • Build using Gimp TK
    • Very configurable
  7. Build-Your-Own desktop environment
    • Build a desktop from component you like
    • Need a Windows Manager (many available)
    • Need other components like File Manager and productivity tools
    • Not suited for the average users
  8. Launching Programs
    • Desktop Menus
    • –Available along the top, bottom, or sides of screen
    • –Access to preselected applications
    • –Add to or remove from
    • Desktop Icons
    • –Place commonly used application icons on desktop
    • –Quick access
    • Panels
    • –Usually located on sides of the screens
    • –Common application appear there
    • Context Menus
    • –Right click in an used part of screen to obtain a context menu
    • –Provide a variety of options
    • Searching for Programs
    • –Some desktop provide a prominent search feature (GNOME)–Used to find programs by name–Use wildcards
    • Terminals
  9. Using a File Manager
    • Many available for Linux
    • GNOME
    • –Nautilus
    • –Default for GNOME
    • –Similar to other file managers in different O/S’s
    • –Icon resembles a “Filing Cabinet”
    • –Found in “Favorites” panel or “Computer” icon on desktop
    • Location may vary depending on distribution or version
    • –Automount – file manager automatically is launched -Available when a USB device is inserted
    • –Different sections of the display- Left side displays series of locations
  10. File Manager Categories
    • –User’s Home Directory–Desktop–File System–Network–Other file systems Included disk partitions
    • –Trash (Recycle Bin)–Documents–Music–Pictures –Videos–Downloads and more
  11. Web Browsers
    • Chrome
    • –Technical commercial software but download for free
    • FireFox
    • –Most popular for Linux
    • –Can consume resources
    • Web
    • –Originally called “Epiphany”
    • –wiki.gnome.org/Apps/Web
    • –lightweight
    • Konqueror
    • –KDE
    • –Web browser and file manager
    • Lynx
    • –Text based
    • Opera
    • –Commercial (download for free)
  12. Web Browsers Problems
    • –Web sites log user access data (Marketing/Junk)
    • –Dynamic Web sites can download Java type program to local machine (can be used to deliver Malware)
    • –Malicious web site can trick user into giving up sensitive data
    • –Some web sites are not secure (https)
    • –Passwords on web site may not be secure
    • Hard to remember all logins for different sites
    • Some browsers remember logins (Facebook)
    • Vulnerable to theft or loss
  13. Email Clients
    • –Read and write emails
    • –Requires a email server
    • –Mailbox locations:
    • On local device: POP3
    • On Server: IMAP
    • Evolution: projects.gnome.org/evolution
    • GUI email client
    • Groupware and scheduling features
    • KmailKDE: userbase.kde.org/Kmail
    • Also can be used with other desktops
    • mutt: www.mutt.org
    • Text based
    • Thunderbird: www.mozilla.org/thunderbird/
    • Associated to Firefox Web browser
  14. GNOME Office
    • –live.gnome.org/gnomeOffice
    • –AbiWord:  word processor
    • –Evince:  document viewer
    • –Evolution:  groupware and Email client
    • –Gnumeric:  spreadsheet
    • –Inkscape:  Vector graphics and presentation creation
    • –Ease:  presentation
  15. Calligra
    • –Split from KDE office suite
    • –www.calligra.org
    • –Word processor, Presentation, Spreadsheet, Flowcharting, Database
  16. LibreOffice
    • –Forked from OpenOffice
    • –Becoming very popular with Linux users
    • –Writer:  word processor
    • –Calc:  spreadsheet
    • –Impress:  presentation
    • –Base:  database
    • –Draw:  vector graphics
    • –Math:  equation editor
    • –May be slow on older systems
  17. Apache OpenOffice
    • –Corporate sponsor Oracle stopped supporting development
    • –Donated to Apache group
    • –Has a full suite of applications
  18. Using Multimedia Applications
    • Audacity
    • Blender
    • GIMP
    • ImageMagick
    • HandBrake
    • MythTV
  19. Cloud Computing
    • Offerings
    • –Private cloud
    • –Public cloud
    • –Hybrid cloud
    • Services
    • –SaaS  (Software as a Service)
    •    On-demand software
    •    Application and Database software
    • –PaaS  (Platform as a Service)
    •    Operating Systems, Database, Web Servers
    • –IaaS  (Infrastructure as a Service)
    •    Physical computing resources, Virtualization etc
  20. Android
    • Linux based O.S.
    • Different applications than on desktop or server
    • “apps”  small programs for mobile devices
    •   Are small usually commercial
    •   Provide quick and specialized computation
    •   Download “apps” using app called “Market”
    •   market.android.com
  21. Linux server
    • Linux is a powerful O.S. for running server programs
    • Wide variety of server programs
    • Many Network Protocols
    • Protocols are defined by RFC (Request for Comments)
    • –RFC have a number associated i.e. RFC1035 for DNS
    • –Ports are used to transfer data: 0-65535 ports
    • –Ports and their use are found in /etc/services
    • –Servers attach to a port number and receives all incoming requests on that port
    • DNS, DHCP, Apache, D/B
  22. Common Network Ports
    • 22      SSH     OpenSSH
    • 23      Telnet  telnetd
    • 53      DNS    dnsmasq, named
    • 80      HTTP    Apache, NGINX
    • 118    SQL     MySQL, PostgreSQL, MariaDB
    • 443    HTTPS  Apache, NGINX
  23. Installing and Launching Servers
    • Usually via configuration file(s)
    • Service in Linux is called Daemon
    • Daemons started at boot time or when needed
    • Daemons run in background
    • Scripts used to launch daemon
    • systemd  - system and services manager Directory structure for scripts:  sysVinit   /etc/init.d/rc.d
    • Directory structure many change depending upon distribution
    • Super Server:xinetd or inetd
    •    Can control specific daemons
    •    Can provide some security
    • Systemctl start httpd
  24. Compiled vs Interpreted
    • Complied: - Convert source code into machine code
    • Compilation could take awhile depending on program size
    • May fail because of syntax errors
    • Even if compiles successfully no guarantee program will function as required
    • Interpreted: Converted to machine code when the program is run
    • Line by line bases
  25. Assembly Language
    • Low-level language
    • Requires a good deal of skill
    • Produces very compact and efficient programs
  26. C
    • Important language for Linux
    • Most of the Kernel is written in C
    • Fairly efficient
    • Filenames that end in .c (main source code) or .h (header files)
    • Compiled using “gcc” compiler
  27. Common Programming Languages
    • C++: Extension to C that adds Object-Oriented features
    • Different file extensions .cc, .cpp., .cxx
    • Java: Created by Sun Microsystems (owned by Oracle)
    • Cross between compiled and interpreted
    • Popular for web site development
    • Perl: Interpreted language
    • Used to manipulate text
    • PHP: PHP Hypertext Preprocessor – interpreted language
    • Used on Web Servers for dynamic content
    • Shopping carts, dynamic logins
    • Python: Interpreted language
    • Support OOP
    • Shell Scripting: Many different shells
    • BASH very common
  28. Identifying Common Package Tools
    • dpkg  Debian
    • rpm  Redhat, CentOS + others
    • apt-get   Debian
    • yum  Redhat, CentOS + others
    • Fedora working on DNF new package manager
Author
slc53
ID
329307
Card Set
Linux Ch4 Common Programs
Description
Linux ch4 Common Programs
Updated