Linux - Anton-L-GitHub/Learning GitHub Wiki
- Programmet som läger, tolkar och utför kommandona du skriver in.
- Bash är standard nästan alla distros.
-
$
- Vanlig användare -
~
- Hemkatalogen - stdin (Standard input =
0
), stdout (Standard output =1
), stderr (Standard Error =1
) - Environment variables,
printenv
,$USER
, export
GAMMALT! ¤
Termer och begrepp
- Type Bash
- ÄR Case-Sensitive
- Commands är endast text du skriver i en terminal.
- Commandon är interpreted av shellet.
- Olika shell kan interpret samma commando olika.
- En lista med de sökvägar som shellet letar efter ditt commando/program.
- Kommandon behöver vara i en av dessa folders för att kunna köras.
Section | Contains |
---|---|
1 | User Commands |
2 | System Calls |
3 | C Library Functions |
4 | Devices and Special Files |
5 | File Formats and Conventions |
6 | Games |
7 | Miscellaneous |
8 | System Administration |
-
1, 5, 8
Är de man använder ofta.
Input/Output
STDOUT / STDIN
- Standard input = 0
- Standard output = 1
- Standard error = 2
- Bra för att ta en "snapshot" av data under strömmen.
- Standard output till två ställen.
- Förställ dig en litteraly T-pipe.
-
date | cut --delimiter=' ' --fields=1 | tee today.txt
-> Skriv ut veckodagen på terminalen och spara i today.txt
- Används som argument i en pipeline till ett command som behöver argument.
- Fungerar typ som en variabel för outputet.
date | xargs echo
Basic input/Outputsystem
Extensible Firmware interface
EFI System Partition
Unified EFI
Bootstrapping
- Uppstart av datorn
- Hur startar man sig själv?
- Hur startar man en dator
- Man gör något som är omöjligt, man lyfter sig själv i sina bootstrapps.
- Användarapplikationer
- Systemapplikationer och tjänster
- Systemgränssnitt
- Kärnan
- Drivrutiner
- Where users like yourself will be directly interacting with the system.
- Core of the operating system.
- Manages the hardware and tells it how to interact with the system.
- Includes all the hardware that your system runs on as well as memory, CPU, disks, etc.
- Pakethanterare: Debian-baserad (.deb). Verktyg: apt, apt-get, dpkg
- Pakethanterare: Redhat-Baserad (.rmp). Verktyg: yum, rpm
- Bra för Docker
- Pakethanterare: Alpine (.apk). Verktyg: apk
- Organiserar mjukvarakomponenterna(paketen) i distributionen
- Håller på koll beroenden mellan paket
- Pakethanterare: Redhat-baserad (.rpm), Debian-baserad (.deb), Alpine (.apk)
- Ägare (u-user)
- Gruppmedelmmar (g-group)
- Alla andra (o-other)
- Läsa (r - read)
- Skriva (w - write)
- Exekvera (x - execute)
- Owner - Group - World
chmod chown
- Alla medelmmar är i en primär grupp.
- I Ubuntu skapas en grupp per användare, med samma namn som användaren.
- Användaren kan också vara med i sekundära grupper för att få tillgång till program, systemresurser osv.
- Användardatabasen är /etc/passwd. Obs! Innehåller ej lösenord.
- Ligger i /etc/shadow. Obs! Endast root har tillgång.
- Lagras alltid hashade och saltade.
- Får ej innehålla "", de som ej ska logga in har lösen-hash "".
- Kan även peppra med en systemspecifik kod.
- Grupper definieras i /etc/group/.
- Root - användar-ID noll.
- Vanliga användare - börjar på 1000.
- Det är numeriska ID som spelar roll, bara namnet i /etc/passwd. ls -n
Vad händer med användarna och deras filer om jag flyttar en hårddisk från ett Linux-system till ett annat?
- Hårddisken har ett eget filssystem på sig, det är bara siffror som ligger där. För att veta vilka användarnamn så kollar man i det nya systemet. Om det finns samma siffror så blir det samma användare, pga. de har samma användar-id (även fast den ena heter Sven och den andra heter Ragnar).
-
Alla processer körs som en användare.
-
kräver samma rättigheter som användaren
-
Har numeriska ID, "pid".
-
Processer kan skapa processer, så kallade barnprocesser.
-
För att se vilka processer som använder en fil: fuser
-
För att se vilka filer en viss process använder: lsof
-
För att se alla öppna filer: (?) lsof -p
- useradd
- usermod
- userdel
- passwd
- groupadd
- groupmod
- groupdel
sudo useradd --create-home
- Systemanvändare "system account". Inget hem, användar-ID under 1000, ingen login
- för att köra spec. tjänster, avgränsa rättigheter
- substitute user
- Byter nuvarande användare. Obs! Krävs lösenord.
- Program that interpret commands and executes them via the OS.
-
Bash
is almost always standard