• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zadania z linuxa

VPS Starter Arubacloud
+1 głos
755 wizyt
pytanie zadane 15 stycznia 2021 w Systemy operacyjne, programy przez jan.kowal Nowicjusz (130 p.)

Mam problem z kilkoma zadaniami. Niektóre to nawet nie wiem jak zrobić. Mogę liczyc na Waszą pomoc?

1. Skopiuj z katalogu '/etc' pliki o rozszerzeniu .net do swego katalogu domowego używając ścieżek bezwzględnych. Nie należy używać polecenia find.

2. Wyszukaj wszystkie niepuste pliki zwykłe w katalogu '/etc' (i jego podkatalogach), które mają rozszerzenie '.conf' - wielkość liter bez znaczenia, rozmiar mniejszy niż 100B, z czasem ostatniego dostępu większym od 10 dni, wynik skopiuj za pomocą przełącznika 'find -exec' do katalogu 'conf' utworzonego w swoim katalogu domowym.

3. Dla pliku 'a.txt' o prawach dostępu rw-r--r-- za pomocą jednego polecenia nadaj prawa do wykonywania dla pozostałych oraz grupy i odejmij prawa do odczytu dla pozostałych.  Podaj rozwiązanie przy użyciu kodów znakowych, jak i liczbowych.

4. Wyświetl zawartość pliku '/etc/services' usuwając wszystkie linie całkowicie zakomentowane.

5. Wyświetl nazwy użytkowników, GID, UID i powłokę logowania z pliku '/etc/passwd' posortowaną numerycznie najpierw wg. numerów GID w kolejności od największego do najmniejszego, a następnie UID.

6. Policz sumę wszystkich liczb podanych jako parametry wywołania skryptu. Obsłuż błędy, tzn. załóż, że podano inne parametry niż liczby.

W 1) próbowałem coś w tym stylu, ale jest źle

cp *net /etc/home

W 2) nie wiem jak wyszukać niepuste

5)

sort -t : -k4 -r /etc/passwd | sort -t : -k3 

6)

#!/bin/bash
for i in $@; 
do suma=$((suma+i));
done; echo $suma

 

5 odpowiedzi

+2 głosów
odpowiedź 15 stycznia 2021 przez manjaro Nałogowiec (37,390 p.)

W pierwszym ma być

sudo cp /etc/*.net ~

A jak chcesz wszystko to napisz w ogłoszeniach, za drobną opłatą ktoś Ci pomoże

komentarz 15 stycznia 2021 przez Bondrusiek Maniak (61,370 p.)
Tak racja. Zaznaczyłem we wcześniejszym wpisie że nie jestem ekspertem. Dobrze ktoś to weryfikuje. Dzieki
0 głosów
odpowiedź 15 stycznia 2021 przez Bondrusiek Maniak (61,370 p.)

Do pierwszego to spróbuj tak

cp /etc/*.net /home

 

komentarz 15 stycznia 2021 przez Bondrusiek Maniak (61,370 p.)

Przejżyj teraz katalog /home bo już tam powinno Ci skopiować pliki o rozszerzeniu net z /etc.

Lista wszystkich plików z /etc(poszukaj o rozszerzeniu .net)

ls /etc

i zobacz czy takie pliki występują w katalogu domowym:

ls /home

 

komentarz 15 stycznia 2021 przez jan.kowal Nowicjusz (130 p.)
w /home jest jeden plik z rozszerzeniem .net

gdy próbuję wyszukać w /etc nic się nie dzieje, nie wyświetla sie
komentarz 15 stycznia 2021 przez Bondrusiek Maniak (61,370 p.)
To zobacz poprzez menadzer okienek zawartość tych plików. Jeśli nie zwróciło Ci rzadnego błędu tzn że działa.
komentarz 15 stycznia 2021 przez manjaro Nałogowiec (37,390 p.)
wszystko źle robicie ma być do katalogu domowego a nie do /.home
komentarz 15 stycznia 2021 przez Oscar Nałogowiec (29,290 p.)

"Katalog domowy" to nie jest /home tylko zwykle podkatalog danego użytkownika. Można go zaznaczyć w ścieżce znakiem ~.

~ - własny katalog domowy

~user - katalog domowy użytkownika user.

 

cp /etc/*.net ~

Do zapisu do własnego katalogu uprawnienia roota nie są potrzebne.

Można też użyć zmiennej HOME.

0 głosów
odpowiedź 15 stycznia 2021 przez Bondrusiek Maniak (61,370 p.)
edycja 15 stycznia 2021 przez Bondrusiek
2) Polecam zapoznać się z poleceniem find oraz z jego atrybutami, które pomogą to rozwiązać:

https://www.lifewire.com/uses-of-linux-command-find-2201100
0 głosów
odpowiedź 15 stycznia 2021 przez Bondrusiek Maniak (61,370 p.)

3) Za wiki polecam użyć polecenia chmod:

Numerical permissions

The chmod numerical format accepts up to four octal digits. The three rightmost digits define permissions for the file user, the group, and others. The optional leading digit, when 4 digits are given, specifies the special setuid, setgid, and sticky flags. Each digit of the three rightmost digits represents a binary value, which controls the "read", "write" and "execute" permissions respectively. A value of 1 means a class is allowed that action, while a 0 means it is disallowed.

# Permission rwx Binary
7 read, write and execute rwx 111
6 read and write rw- 110
5 read and execute r-x 101
4 read only r-- 100
3 write and execute -wx 011
2 write only -w- 010
1 execute only --x 001
0 none --- 000

For example, 754 would allow:

  • "read" (4), "write" (2), and "execute" (1) for the User class, as the binary value of 7 (4+2+1) is 111.
  • "read" (4) and "execute" (1) for the Group class, as the binary value of 5 (4+1) is 101.
  • Only "read" (4) for the Others class, as the binary value of 4 (4) is 100.

Numeric example

Change permissions to permit members of the programmers group to update a file:

$ ls -l sharedFile
-rw-r--r--  1 jsmith programmers 57 Jul  3 10:13  sharedFile
$ chmod 664 sharedFile
$ ls -l sharedFile
-rw-rw-r--  1 jsmith programmers 57 Jul  3 10:13  sharedFile

Prawa dostępu do pliku a.txt rw-r--r-- . Twoim zadaniem jest tylko zamienić ostatnie 3 znaki na '--x' czyli odczytując z tabeli na 1. A reszte zostawiasz tak jak jest.

chmod 641 a.txt

To jest numerycznie. Musisz jeszcze poszukać znakowo. Popatrz na ten artykuł:

https://en.wikipedia.org/wiki/Chmod

0 głosów
odpowiedź 15 stycznia 2021 przez Bondrusiek Maniak (61,370 p.)
edycja 15 stycznia 2021 przez Bondrusiek

4) To możesz zrobić tak(zakładając że komentarz zaczyna się '#')

cat /etc/services | grep -v '^#'

cat na wyjściu wyśwetla plik /etc/services

grep na wejściu bierze wyjście cat oraz wyświetla tylko te linie które nie zaczynaja się na '#'.

Podobne pytania

0 głosów
0 odpowiedzi 475 wizyt
pytanie zadane 24 kwietnia 2020 w Systemy operacyjne, programy przez LukiLL Początkujący (270 p.)
0 głosów
0 odpowiedzi 738 wizyt
0 głosów
1 odpowiedź 281 wizyt

92,454 zapytań

141,262 odpowiedzi

319,089 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...